22

現在、Gitで追跡したいファイルを作成するときはいつでも、それをインデックスに追加するだけです。インデックスに追加しないと、Gitは「それを見る」ことができません。では、インデックスに追加しないのではなく、なぜ.gitignoreファイルを使用する必要があるのでしょうか。

4

7 に答える 7

20

一般に、プロジェクトが大きくなると、すべてのファイルを1つずつ追加するのが面倒になる可能性があります。

Javaでは、.classリポジトリに追加したくない多くのファイルが作成される可能性があります。同様に、.oCまたは.pycPython(たとえば)で多くのファイルが作成される可能性があります。

*.classファイルに*.o、、*.pycのようなパターンを含める.gitignoreと、それらのファイルを完全に無視できます。後続git statusの実行(またはGUIを使用している場合は同様)では、これらが新しい追跡されていないファイルであることが通知されないため、実際に新しく、著しく追跡されていないファイルに集中できます。

これは、ディレクトリ全体(たとえば)を追加する場合にも役立ちますgit add myproject。これにより、ファイルのカテゴリを完全に無視できます。

于 2012-12-02T23:43:10.613 に答える
11

からファイルを非表示にしますgit status。特に、生成されたファイルがたくさんある場合は、それらが常にそこに表示されることを望んでいません。また、たとえばを行うときに誤ってそれらを追加することを防ぎますgit add somefolder

gitignoreファイルの目的は、gitによって追跡されていない特定のファイルが追跡されないままになるようにすることです。

于 2012-12-02T23:41:37.320 に答える
5

gitignoreファイルの目的は、gitによって追跡されていない特定のファイルが追跡されないままになるようにすることです。

http://git-scm.com/docs/gitignore

リポジトリのルートディレクトリから実行git add .し、無視するものがないとします。以前に精神的に無視していたすべてのファイルをインデックスに追加しました。追加の利点は、バージョン管理され.gitignoreているため、他の人が同様の間違いをしないようにすることができることです。

于 2012-12-02T23:41:47.757 に答える
1

を使用するのに便利であることに加えてgit commit -a、それはあなたのリポジトリを誤って汚染したり、機密情報を公開したりすることに対する安全ガードです。

于 2012-12-02T23:43:08.850 に答える
1

はい、GITのリモートリポジトリに不要なファイルがコミットされないようにするためです。次のような.gitignoreファイルに適切な説明を入力するだけです。

拡張子がpycファイルまたは.classファイルのファイルを避けたい場合は、*。pyc * .class

これらの2行を.gitignoreファイルに入れます。将来的には、GITリポジトリでコミットされないこれらのファイルを気にする必要はありません。

ありがとう!

于 2012-12-03T06:31:20.543 に答える
1

各ファイルを追加するのは面倒ではありません。たとえば、新しい.javaファイルがたくさんある場合は、次のことができます。

find . -name \*.java | xargs git add

可能性のあるすべての例外を.gitignoreに保持することは、それらが多数ある場合は面倒です。したがって、.gitignoreは、例外(チェックインしてはならないファイルのパターン)が少ない場合に意味がありますが、チェックされるファイルのパターンは多数あり、新しいファイルが定期的にポップアップし続けます。しかし、逆の場合は、.gitignoreがないと人生は良くなると思います。

于 2014-10-31T20:13:47.220 に答える
0

一部のファイルをファイルに指定する利点は、無視されたファイルが誤って追加されることを心配せずに、追跡されたすべてのファイルを一度.gitignoreにコミットできることです。たとえば、次のコマンドを使用してファイルをコミットする方がはるかに高速です。

git commit -a

1つずつ追加する代わりに...

于 2012-12-02T23:43:35.747 に答える