14

git clone git://foo.git cd foo ...edit files.. を実行しました。

今、私は新たに始めたいと思っています。すでに行った変更は気にしませんが、巨大な foo.git 全体を再度複製したくはありません。すべての変更を失うだけです。 fatal: destination path 'foo' already exists and is not an empty directory. 適切なコマンドを取得せずに、もう一度 git clone git://foo.git を実行するにはどうすればよい ですか?

4

5 に答える 5

10
git checkout . # revert your changes
git clean -xdf # delete untracked and ignored files
于 2009-08-08T10:46:54.510 に答える
2

「gitcheckout」を使用できます。または「gitcheckoutHEAD-。」、または「git reset --hard HEAD」で作業領域を既知の状態にリセットします(最初のケースではインデックスに記録された状態に、2番目と3番目のケースではHEADコミットに記録された状態に) 。

保持したくない追跡されていないファイルを削除するには、「gitclean」を使用できます(詳細については、ドキュメントを参照してください)。

クローンを作成したリモートリポジトリから新しい変更を取得するには、「git fetch」(または、セットアップ後の同等の「git remoteupdate」)または「gitpull」(変更をフェッチしてマージする)を使用します。

于 2009-08-08T12:28:20.063 に答える
2

すべての変更を元に戻すには、次を使用します。

git checkout .

ただし、追跡されていないファイル (元々ツリーに存在しなかったファイル、作成して編集していないファイル) は削除されません。追跡されていないファイルを見つけるには、次を使用します。

git status

その後、手動で削除してください。

ところで、リポジトリのコピーを作成したい場合は、元のリポジトリをクローンする必要はありません。ハードディスクに既にあるリポジトリをクローンするだけでかまいません。の外fooに出て、次のようにします。

git clone /path/to/foo
于 2009-08-08T10:41:25.880 に答える
0

あなたが本当にそれを台無しにした場合:

git clean -df
git reset --hard HEAD
于 2009-11-19T12:28:33.660 に答える
-2

また、常に使用することができます

rm -rf *
git checkout master

覚えるコマンドが少ない:)

于 2009-08-09T11:43:12.527 に答える