4

私の.gitignoreファイルでは、次のようなディレクトリを無視していました。

var

それから、私は自分var/packageとそのすべての内容を追跡したいと思いました。そこで、その除外をgitignoreに追加しました。私は多くの組み合わせを試しましたが、特にここでの他の議論から、論理的であると思われるものについて次のことに決めました。

!var/
var/*
!var/package
!var/package/
!var/package/*

ただし、新しいファイルが書き込まれるたびにvar/package、それらは検出されません。私がそれらを具体的に強制する場合、それらは追加されますが、次のような通常の手順では追加されませんgit add .

.gitignoreをリセットして、最終的に新しいgitignore命令を取得するために発行する必要のあるコマンドはありますか?私は何かが足りないのですか?

4

1 に答える 1

8

.gitignoreからvarに関するものをすべて削除します。次の内容でvar/.gitignoreを作成します。

/*
!/package

あなたは明らかにそうする必要があるでしょう、git add -f var/.gitignoreしかしその後はすべてがうまくいくはずです。

別のオプションは、トップレベルの.gitignoreで、次のように言います。

/var/*
!/var/package

どちらも機能しない場合は、入力find . -name .gitignore | xargs egrep .してcat .git/info/exclude、何が返されるかをお知らせください。

于 2012-07-18T23:43:30.773 に答える