HOWTO · Git
Git ブランチをリベース
このチュートリアルでは、git fetch、git rebase、および git push コマンドを使用して、ローカルブランチをリモートマスターブランチにリベースするために実行できるさまざまな手順について説明します。
このページの内容
このチュートリアルでは、git fetch、git rebase、および git push コマンドを使用してローカルブランチをリモートマスターブランチにリベースするために実行できるさまざまな手順について説明します。
ローカルブランチを Git のリモートマスターブランチにリベースする
-
変更を取得します
git fetchコマンドを使用して、リモートリポジトリからすべての変更を取得します。pc@JOHN MINGW64 ~/Git (Branch1) $ git fetch remote: Enumerating objects: 3, done. remote: Counting objects: 100% (3/3), done. remote: Total 3 (delta 0), reused 0 (delta 0), pack-reused 0 Unpacking objects: 100% (3/3), 610 bytes | 3.00 KiB/s, done. From https://github.com/Wachira11ke/Delftscopetech * [new branch] main -> origin/main -
変更を加える
git rebaseコマンドを実行して、ブランチへの変更を統合します。以下の例では、現在のブランチをメインブランチからリベースします。pc@JOHN MINGW64 ~/Git (main) $ git rebase main Current branch main is up to date.コンフリクトが発生した場合は、
git add .コマンドを使用して解決します。git add .コマンドの後には、git commitコマンドを実行しないでください。競合を解決したら、
git rebase --continueを使用してプロセスを終了します。競合を解決した後でプロセスを中止する場合は、git rebase --abortコマンドを使用します。 -
変更をリモートリポジトリにプッシュします
ローカルリポジトリにコンテンツをアップロードするには、以下に示すように
git push -fコマンドを使用します。git push main HEAD -f-fは、リモートリポジトリ内の他の開発者によって行われた変更を上書きします。以下は、変更をリモートリポジトリにプッシュするためのより安全な方法です。
git push --force-with-lease main HEADこのコマンドは、リモートリポジトリ内の他の開発者によって行われた変更を上書きしません。
リベースとマージは、あるブランチから別のブランチへの変更を統合するために使用されます。リベースは、ブランチ履歴を乱すことなく機能ブランチを更新するプロセスであり、よりクリーンなコミット履歴を可能にします。
これは、他のユーザーと共有すると競合するブランチを作成する可能性がある
git mergeの反対です。