Git4 択難易度 標準

状況

rebase した feature ブランチを push し直したい。ただし、他の人が同じブランチに push していたら上書きせずに止めたい。

空欄に入るオプションは?

$ git push ____ origin feature

正答

  1. --force
  2. --set-upstream
  3. --force-with-lease
  4. --no-verify

解説

--force-with-lease は、リモートのブランチが自分の知っている位置(最後に fetch した位置)のままのときだけ上書きする。他の人の push があれば拒否されるので、その人のコミットを消さずに済む。--force は状態を確かめずに上書きし、他人のコミットを黙って消す。--set-upstream は追跡先を登録するだけで上書きはできず、--no-verify はフックを飛ばすオプションで、どちらも rebase 後の push は拒否されたままになる。

参考: git-scm.com

pushforce-with-leaserebase

この問題を含む Git のテストを制限時間つきで解く

Gitクイズへ