0

トピックの質問が間違っていると思われる場合は、編集できます。

ここには非常に大きなパッケージがあり、いくつかのディレクトリのみが変更されています。つまり、より多くのファイルを含むディレクトリ パスがたくさんあるということです。その場合、実際には git でトレースする必要があります。したがって、api/dir/dir2/contrib/10 個のファイルがあり、トレースする必要があるのは 2 つだけです。そのような場所はたくさんありますが、これに gitignore を使用するのは本当に面倒です。最初のオプションは、すべてのファイルを無視しgit add、-f フラグを使用してコミットする必要があるファイルのみを無視することでした。これを毎回行うのは本当に面倒です..そのようなレポを整理するためのより良い解決策はありますか?

4

1 に答える 1

2

すべてを無視して、無視したくない.gitignoreファイルをファイルに追加し、先頭に感嘆符を付けることができます。

例:

*
!.gitignore
!foo.txt

.gitignoreこれにより、ファイルとfoo.txtルート フォルダー以外のすべてが無視されます。

残念ながら、ディレクトリ内のファイルに関しては、それほど簡単ではありません。

次の構造があるとします。

/.gitignore
/foo.txt
/sub/foo.txt
/sub/some_other.txt
/sub2/sub21/bar.txt
/sub2/sub21/some_other2.txt

他のすべてを含めて無視しbar.txtたいだけです。foo.txt

*すべてを無視するため、サブフォルダーも無視します。単に追加する!sub/foo.txtだけでは、git がそのファイルを無視しないようにするのに十分ではありません。あなたが本当にしなければならないことは、次のとおりです。

  1. 無視しないsub:!sub/
  2. 無視しないsub/foo.txt:!sub/foo.txt

ディレクトリ階層が深い場合、これは非常に面倒になります。

無視を解除するbar.txtには、次のものが必要です。

!sub2/
!sub2/sub21/
!sub2/sub21/bar.txt
于 2013-02-19T11:14:59.453 に答える