Gitで1つのブランチから別のブランチに変更をプルする方法

How Pull Changes From One Branch Another Git



gitリポジトリには、コードを効率的に管理するための1つ以上のブランチが含まれています。場合によっては、gitユーザーは複数のブランチを同時に操作する必要があり、コミットする前に、前のブランチで行った変更を現在のブランチに変更して、あるブランチから別のブランチに切り替える必要があります。このタスクは、gitで複数の方法を使用して実行できます。このチュートリアルでは、stashコマンドをターミナルから使用し、GitHubデスクトップからコマンドをマージして、あるブランチから別のブランチに変更をプルできます。

前提条件

1.GitHubデスクトップをインストールします
GitHubデスクトップは、gitユーザーがgit関連のタスクをグラフィカルに実行するのに役立ちます。 Ubuntu用のこのアプリケーションの最新のインストーラーはgithub.comから簡単にダウンロードできます。このアプリケーションを使用するには、ダウンロード後にこのアプリケーションをインストールして構成する必要があります。 UbuntuにGitHubデスクトップをインストールするためのチュートリアルをチェックして、インストールプロセスを正しく知ることもできます。







2.GitHubアカウントを作成します
ローカルリポジトリの変更を公開した後、リモートリポジトリの外観を確認するには、GitHubアカウントを作成する必要があります。



3.ローカルリポジトリを作成します
このチュートリアルで使用されているコマンドを確認するには、ローカルリポジトリを作成する必要があります。



stashコマンドの使用

名前の付いたローカルリポジトリ PHP2 このチュートリアルでは、リポジトリのあるブランチから別のブランチに変更をプルする方法を示すために使用されています。名前の付いたファイルを作成します index.html リポジトリ内。ターミナルを開き、リポジトリフォルダに移動します。次のコマンドを実行して、ブランチリストを確認し、マスターブランチに切り替えて、ブランチのステータスを表示します。





$ gitブランチ
$ gitチェックアウトマスター
$ gitステータス

上記のコマンドを実行すると、次の出力が表示されます。出力は、リポジトリに2つのブランチが含まれていることを示しています。 メイン ブランチは最初はアクティブでした。に切り替えた後 主人 ブランチの場合、ステータスの出力は、現在のブランチがアクティブであり、 index.html ファイルは追跡されていません。



次のコマンドを実行して、追跡されていないファイルを追跡し、gitリポジトリのステータスを再度確認します。

$ git add index.html
$ gitステータス

上記のコマンドを実行すると、次の出力が表示されます。ステータスの出力は次のことを示しています index.html ファイルはリポジトリに追加されますが、コミットする必要があります。

次のコマンドを実行して、gitリポジトリのステータスを再度確認します。 `gitstash`コマンドは` gitcommit`コマンドと同じように機能します。このコマンドを実行すると、リポジトリの作業ディレクトリがクリーンアップされます。

$ git stash
$ gitステータス

上記のコマンドを実行すると、次の出力が表示されます。

ブランチに対してstashコマンドを実行した後、gitユーザーがブランチの変更を別のブランチにプルしたい場合は、 `gitmerge`コマンドと同様に機能する` git stashpop`コマンドを使用して簡単に実行できます。次のコマンドを実行してに切り替えます メイン から変更を分岐してプルします 主人 に分岐します 主要 ブランチ。

$ gitチェックアウトメイン
$ git stash pop

上記のコマンドを実行すると、次の出力が表示され、現在のブランチが 主要 そしてその index.html このブランチにファイルが追加されます。

次のコマンドを実行して、コミットメッセージで前のタスクをコミットし、ステータスを再度確認します。

$ git commit -m 'インデックスファイルが追加されました'
$ gitステータス

上記のコマンドを実行すると、次の出力が表示されます。ステータスの出力は、コミット後に作業ツリーがクリーンになったことを示しています。

ローカルリポジトリの変更がリモートリポジトリにプッシュされ、リモートリポジトリがgithub.comから開かれると、リポジトリは次の画像のようになります。

マージコマンドの使用

このチュートリアルのこの部分では、あるブランチから別のブランチに変更をプルする別の方法を示します。名前の付いたローカルリポジトリ 読み取りファイル ここで使用しています。リポジトリの場所にread.phpという名前のファイルを作成します。次のコマンドを実行してマスターブランチに切り替え、read.phpファイルを追加して、タスクをコミットします。 branchコマンドは、ブランチリストを表示します。 checkoutコマンドは、ブランチをマスターに切り替えます。 statusコマンドは、ブランチの現在のステータスを表示します。 addコマンドは、追跡されていないファイルをリポジトリに追加します。 commitコマンドは、タスクを確認します。

$ gitブランチ
$ gitチェックアウトマスター
$ gitステータス
$ git add read.php
$ git commit -m '読み取りスクリプトが追加されました'

上記のコマンドを実行すると、次の出力が表示されます。 read.phpファイルがリポジトリのmasterブランチに追加され、タスクもコミットされました。

上記のタスクを完了した後、 主人 ブランチへの転送が必要です 主要 ブランチ、次に マージ コマンドを使用して、このタスクを実行できます。マージコマンドは、ターミナルから、またはGitHubデスクトップアプリケーションを使用して使用できます。チュートリアルのこの部分では、GitHubデスクトップを使用してブランチをマージする方法を示しました。 GitHubデスクトップでローカルリポジトリを開きます。クリックしてブランチリストダイアログボックスを開きます ブランチリスト から 意見 メニューを選択し、 主要 アクティブなブランチとしてのブランチ。次に、をクリックします 現在のブランチにマージ… から ブランチ メニュー。を選択 主人 ダイアログボックスから分岐し、をクリックします マスターをメインにマージ の変更をプルするボタン 主人 に分岐します メイン ブランチ。あなたは削除することができます 主人 ブランチがリポジトリを必要としない場合は、マージ操作の完了後にブランチします。

結論

このチュートリアルでは、2つのデモローカルリポジトリを使用して、あるブランチから別のブランチに変更をプルする2つの異なる方法を示しました。 NS 隠し場所行く ここでは、gitのコマンドを使用してタスクを実行しています。このチュートリアルでは、GitHubデスクトップを使用して、ブランチをグラフィカルにマージする方法を示しました。