Git プッシュでリモート リポジトリのファイルを強制的に上書きする
この記事では、ローカルの変更をリモート リポジトリにプッシュし、変更を優先してマージの競合を回避する方法について説明します。
git push
コマンドについて知っておくべきことをすべてカバーします。 さっさと飛び込もう!
git push
コマンド
git push
コマンドを使用して、ローカルの変更をリモート リポジトリに公開します。 git push
コマンドは、git fetch
コマンドのミラー コマンドです。
リモート リポジトリからローカル リポジトリに変更をインポートする git fetch
コマンドとは対照的に、ローカルの変更をリモート リポジトリにエクスポートします。
一般的な使用方法のオプションを次に示します。
git push <remote> <branch>
コマンドは、ローカルの変更を指定されたローカル ブランチからリモート リポジトリにプッシュします。 ブランチがリモート リポジトリに存在しない場合、Git はブランチを作成し、コミットを公開します。git push <remote> --force
コマンドは、リモート リポジトリへのプッシュを強制するため、早送りではないマージが行われます。git push <remote> --all
コマンドは、すべてのローカル ブランチをリモート リポジトリにプッシュします。git push <remote> --tags
コマンドは、ローカル ブランチのタグをリモート リポジトリにプッシュします。
git push
にリモート リポジトリのファイルを強制的に上書きさせる
リモート リポジトリの履歴がローカル リポジトリの履歴と一致しない場合、Git は git push
コマンドを拒否することがあります。 以下のコマンドを使用して、ローカル リビジョンをリモート リポジトリに強制することができます。
git push --force <remote> <branch>
例:
git push --force origin master
<remote>
と <branch>
を含めない場合、Git は --set-upstream
プリセットを持つすべてのローカル ブランチをリモート リポジトリにプッシュします。
または、リモート ブランチからプルし、変更をローカル リポジトリにマージして、再度プッシュすることもできます。 これは、複数の開発者が同じリモート リポジトリを共有している場合に便利です。
共有コミットが競合する場合、git commit --amend
コマンドを使用して修正できます。 修正後、マージされた変更をリモート リポジトリにプッシュして戻すことができるようになりました。
# Amend
git commit --amend
#Update Commit Message
git push --force origin master
サインオフする前に、リモート ブランチを削除する方法について簡単に説明しましょう。 これは、リモート リポジトリの特定のブランチを削除したい場合に便利です。
以下のコマンドを使用して、リモート ブランチを削除します。
git branch -D <branch-name>
git push origin :branch-name
John is a Git and PowerShell geek. He uses his expertise in the version control system to help businesses manage their source code. According to him, Shell scripting is the number one choice for automating the management of systems.
LinkedIn