LoginSignup
0
1

More than 3 years have passed since last update.

リモートリポジトリのブランチとローカルのブランチの状態を強制的に一致させる方法

Last updated at Posted at 2019-07-09

コードレビューのときにfeatureブランチをローカルに落としたいときや、ローカルでブランチのマージ作業をしたいときなど、リモートリポジトリとローカルのブランチの状態を強制的に一致させたいときがあります。

そのようなときに行う手順をまとめました。

手順

### リモートリポジトリの最新情報を取得
$ git fetch

### 対象ブランチにチェックアウト
$ git checkout {ブランチ名}

### 強制的に最新のコミットの状態にする
$ git reset --hard origin/{ブランチ名}

補足: 対象ブランチにチェックアウトする方法について

リモートリポジトリのブランチにローカルでチェックアウトする方法でよく紹介されている方法は以下です。

$ git checkout -b {ブランチ名} origin/{ブランチ名}

しかし、以下の方法でもチェックアウト可能です。1

$ git checkout {ブランチ名}

もし、ローカルにチェックアウトする対象のブランチと同じブランチ名がある場合、git checkout -b ではエラーになってしまいます。
例えば、masterというブランチ名がローカルにすでにある場合、git checkout -b master origin/masterとするとエラーになります。

git checkoutの方法ですと、すでに同じ名前のブランチ名がある場合は単純にチェックアウトするだけになりますし、同じ名前のブランチ名がなければリモートリポジトリのブランチをチェックアウトしてくることが可能になります。

ですので、git checkoutの方法を利用するほうがオススメです。

0
1
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
0
1