TIL

Today I Learned. 知ったこと、学んだことを書いていく

リモートブランチの状態を巻き戻す

手順としては

  1. リモートブランチと同じ状態にする
  2. 巻き戻すリモートブランチのバックアップ用のブランチを作成
  3. ローカルブランチを巻き戻したいところまで戻す
  4. 巻き戻すリモートブランチを削除
  5. ローカルブランチをリモートにプッシュ(ブランチを作成)
  6. バックアップ用のブランチを削除

今回はmasterブランチを巻き戻したいとする。

リモートブランチと同じ状態にする

$ git pull origin master

リモートブランチのバックアップ作成

$ git push origin master:master_bak

ローカルブランチを巻き戻したいところまで戻す

2つ前に戻したいとする。

$ git reset HEAD~2

巻き戻す対象のリモードブランチを削除

$ git push origin :master

ここで、次のようなエラーが出た場合、そのリモートブランチがGitHubなどでデフォルトのブランチに設定されている可能性がある。GitHubでデフォルトをバックアップ用ブランチにして、再度コマンドを実行する。

ローカルブランチをリモートにプッシュ(ブランチを作成)

$ git push origin master

バックアップ用のブランチを削除

$ git push origin :master_bak

以上



参考文献