自分のいるブランチが他の人によってforce-pushされたとき,カレントブランチを削除せずに変更を取り込む

  • 67
    Like
  • 0
    Comment
More than 1 year has passed since last update.

例えばレビュー中に小さなバグを見付けたので,レビュイーにpush -fしてもらった後にその変更を手元に持ってくるにはどうすればよいか.歴史が変わっているのでgit pullはできない.
今までは以下のように別ブランチに移動&削除&再度ブランチ作成していた.

# someone force-pushed to `topic` branch
git co master
git branch -D topic
git fetch
git co topic # creates `topic` branch from `origin/topic`

しかし,わざわざ移動&削除しなくとも以下のようにreset --hardすればよい

git fetch
git reset --hard origin/topic

thanks to @uasi!