Git プッシュでリモート リポジトリのファイルを強制的に上書きする

John Wachira 2023年6月20日
  1. git push コマンド
  2. git push にリモート リポジトリのファイルを強制的に上書きさせる
Git プッシュでリモート リポジトリのファイルを強制的に上書きする

この記事では、ローカルの変更をリモート リポジトリにプッシュし、変更を優先してマージの競合を回避する方法について説明します。

git push コマンドについて知っておくべきことをすべてカバーします。 さっさと飛び込もう!

git push コマンド

git push コマンドを使用して、ローカルの変更をリモート リポジトリに公開します。 git push コマンドは、git fetch コマンドのミラー コマンドです。

リモート リポジトリからローカル リポジトリに変更をインポートする git fetch コマンドとは対照的に、ローカルの変更をリモート リポジトリにエクスポートします。

一般的な使用方法のオプションを次に示します。

  1. git push <remote> <branch> コマンドは、ローカルの変更を指定されたローカル ブランチからリモート リポジトリにプッシュします。 ブランチがリモート リポジトリに存在しない場合、Git はブランチを作成し、コミットを公開します。
  2. git push <remote> --force コマンドは、リモート リポジトリへのプッシュを強制するため、早送りではないマージが行われます。
  3. git push <remote> --all コマンドは、すべてのローカル ブランチをリモート リポジトリにプッシュします。
  4. 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 Wachira
John Wachira avatar John Wachira avatar

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

関連記事 - Git Push