45

tortoisegit に最後のコミットをレポに取り消すオプションはありますか?

誤って、大量の不要なファイルを git リポジトリ (branch:master) にプッシュしてしまいました。これを元に戻す必要があります。tortoise git でプッシュを元に戻し、最後のコミットの前の状態に戻るための適切なオプションをたくさん検索しました。最後のコミットを元に戻す方法を教えてください。

4

2 に答える 2

61

変更をまだプッシュしていない場合 (そのため、コミットはローカルのみです)

  1. TortoiseGit->Show log
  2. ロールバック先のコミットを選択します
  3. Reset "<branch>" to this...

持っている場合、これはまだ実行できますが、強制プッシュも実行する必要があります (「既知の変更を上書きする1を確認してください)。

1 既知の変更を上書きする」フラグは、すでにプッシュされたコミットを新しいものに置き換えます。置き換えようとしているコミットを誰かが既に取得している可能性がある場合は、この機能を使用しないでください。そうしないと、履歴に 2 つの矛盾する真実を持つフォークが作成されます。


(1)最後のコミットをやり直し、 (2)まだプッシュしていない場合のショートカットもあります。

  1. コミット -> 「最後のコミットを修正」にチェックを入れる

これにより、最後のコミットが新しいコミットに置き換えられます。ただし、これを使用することはお勧めしません。最後のコミットが既にプッシュされている場合、大きな混乱が生じる可能性があります。TortoiseGit はここであなたを止めません

リセットを行うと、ログを確認する必要があり、そこでコミットがローカルかどうかを確認できます。

于 2014-03-26T10:03:54.867 に答える
40

最後のコミットの前の状態に戻す必要がある場合は、ログ リストからコミットされたアクションを選択し、 を選択しますrevert changes by this commit

気をつけてください、あなたは加えられた変更を何度もする必要がありcommitますpush.

于 2013-10-02T11:50:55.973 に答える