2012-05-25 1 views
12

私は複製されたレポを持っています。ディレクトリがあります。は、という独自のレポです。つまり、/ b/c/.git /などがあります。gitはディレクトリを無視していますが、存在しないようです。

ファイルをメインリポジトリで管理します。私は/ b/cの歴史について気にしないので、/ b/cの.gitディレクトリを削除しました

しかし、問題はgit statusが/ b/cを完全に無視しているということです。私はgit addそれをすることはできません。それは、私がパスを.gitignore(私は持っていない)に入れているかのようです。

明らかに、gitが.git dirを持つサブディレクトリを無視するのは当然のことでしたが、今はどのように違いが分かりますか?

.gitignoreと.git/info/excludes以外のファイルが無視されている場所がありますか? .git/configファイルには何もありません。

私はgitのステータスがどのようなものかを尋ねられました。あまり:

/path/to/root/dir $ git status 
# On branch fred 
nothing to commit (working directory clean) 

git addとは何ですか。さらに少ない(何もない)

/path/to/root/dir $ git add a/b/c 
+0

あなたがより高いレベルのディレクトリに.gitignoreファイルをチェックしましたか? – jonathanbell

+0

はい、それはパスに一致し、その中には何もありません。 – artfulrobot

+0

メッセージは何ですかあなたが 'git add'を実行したときに得られるものは何ですか?' git status'は正確に何を表していますか? –

答えて

17

git config core.excludesfileに確認してください)私が問題だったか、(。V迷惑)発生したかが、ここでは他の誰が立ち往生する場合には、私は、それを固定する方法が何であるか見当がつかないgit log a/b/cは、「finally able ...」コミットのみをリストします。 git show HEAD^(「削除ファントム...」コミットは、それは私がサブプロジェクトおよび/またはサブモジュールの詳細まで読みする必要がありますするつもりですか。特別に、いくつかのそれを治療されたよう

-Subproject commit c311ccdc91c8be66019aa138d1c4af49a6b7a81c 

だから、それが見えます。

語ります
+0

スーパープロジェクトの欠けている.gitmodulesファイルとは無関係に、そのディレクトリが追跡されたサブモジュールであると信じていたような、インデックスに何かがあったようなサウンドです。理由を発見すると便利です。 –

+0

が合意しました!私には謎。 – artfulrobot

+0

上部レポの.gitモジュールを確認してください。ファイルには、それが持っていると思っているサブモジュール(削除したサブモジュールを含む;-) –

2

グローバルなgitignoreファイルはありますか?

興味深いことに
git rm --cached a/b/c 
git commit -m "removed phantom a/b/c dir" 
git add a/b/c 
git commit -m "finally able to add a/b/c" 

を:

+1

このコマンドは出力を返しません。 – artfulrobot

0

使用git add -fが現在無視しているファイルを追加するgitのを強制する。

関連する問題