20

SVNからGITに移行中ですが、答えが見つからない質問があります。SVNを介していくつかのオープンソースプロジェクトで作業するときの通常のシナリオについて説明します。

  1. チェックアウトする
  2. プロジェクトがどのように機能するかをテストするために、ファイルをいじり始め、変更を加えます。
  3. p.2以降、一部のファイルが大幅に変更され、元の状態に戻る機会がありません。
  4. 変更したファイルをディスク「rmfilename.cpp」から削除し、コマンド「svn update」を実行すると、元のファイルがすべて元に戻ります。

これはすべて、p.4を除いて、GITでも正常に機能します。「gitpull」を作成しようとすると、プロジェクトが最新であり、ローカルフォルダーから欠落しているにもかかわらず、元のファイルを取得できません。

gitを使用する場合のp.4の正しいコマンドは何ですか。どうも

4

4 に答える 4

19

最も簡単な方法は、次の出力に示されていますgit status

git checkout -- file

ここで、file は削除されたファイルの名前にすることができます。これにより、他のファイルに影響を与えることなく、削除されたファイルが回復されます。

于 2012-06-25T23:10:48.227 に答える
17

現在のブランチ (またはHEAD) をチェックアウトしてみてください:

git checkout HEAD

または、すべてを最後にコミットされた状態に戻したい場合(警告:これにより、コミットされていないすべての変更が完全に削除されます!)、ハード リセットすることもできます。

git reset --hard
于 2012-06-25T22:56:23.837 に答える