2

私はライオンというブランチに取り組んでいますが、誤ってこれを行いました:

git push origin lion:master

それ以外の

git push eng lion:master

基本的に、2 行目はライオン ブランチをステージング Heroku アプリにプッシュするためのものですが、誤ってすべてのコードをオリジン マスターにマージしてしまいました。

どうすれば元に戻せますか? 私のブランチには約200のコミットがあります。

グレッグ

4

2 に答える 2

2

他の誰もまだ行って新しい変更を取得していないと仮定します。

origin1)リポジトリに直接アクセスできる場合はgit reset --hard <commit ID>、関連するブランチで a を実行できますorigin

git push -f2) または、おそらく古いコミット ID を使用して実行することもできます。

于 2012-04-08T17:28:06.320 に答える
1

コマンド「gitreset」はオプションのcommit引数を取ります。したがって、オリジンリポジトリにアクセスできる場合は、次のことを試すことができます。

git reset [--soft | --mixed] <last-good-commit>           # in the remote/origin repository

リポジトリにアクセスできない場合は、次のことができるはずです。

git checkout -b rework <last-good-commit>
git push origin rework:master                                   # The push merge will produce a commit that works back to <last-good-commit>
于 2012-04-08T20:33:41.143 に答える