2013-01-20 17 views
6

git clean -f と一緒に実行して、修正やビルドファイルからブランチをクリーンアップすることがよくあります。 このコマンドを実行すると、追跡できないファイルがすべて削除されますが、.projectや.settings(eclipseの場合)など、残したいファイルはほとんどありませんgit reset - 特定の未追跡のファイルを無視する

これらのファイルはリポジトリの一部ではなく、 .gitignoreファイルで宣言されています。 は、上記のコマンドを発行するときにこれらのファイルを保持する方法がありますか、それとも別のコマンドを使うべきでしょうか?

答えて

5

注意、ない無視されたファイル。

無視されたファイルは、git clean -f -xのみが削除されます。

(すべてのケースでは、git clean -n -...が除去されるかのプレビューを持って、より良いです)

git resetgit clean以上の利点は、ヘッドを移動し、インデックスなどの作業をリセットについて主にあります木。
git cleanは、作業ツリーについてのものです。

4

git resetは、無視されたファイルには触れません。ほとんどの場合、HEADポインタとインデックスで動作します。しかし、git cleanは悪です:

現在のディレクトリからバージョン管理されていないファイルを再帰的に削除することによって作業ツリーをクリーンアップします。

したがって答えはgit cleanを使用しないでください。 git clean-fだけのgitに不明なファイルを削除する必要があること

関連する問題