2011-09-26 10 views
10

xcode 4が変更するxcuserdataフォルダを無視しようとしていますが、それらは私の.gitignoreファイルにもかかわらず元に戻ります。.gitignoreはディレクトリを無視しません

1行としての私の.gitignoreファイル:

xcuserdata 

はまだのようにすぐに私はXcodeで何もUIを変更すると、私はこれを取得:

# modified: XXXXXXXX.xcodeproj/project.xcworkspace/xcuserdata/XXXX.xcuserdatad/UserInterfaceState.xcuserstate 

私は...

を行っています
git rm -r --cached XXXXXXXX.xcodeproj/project.xcworkspace/xcuserdata/XXXX.xcuserdatad/UserInterfaceState.xcuserstate 

...して試してみた...

git rm -r --cached XXXXXXXX.xcodeproj/project.xcworkspace/xcuserdata 

...コミットが続きます。私はこれを10回近く行ってしまい、それがなくなり無視されることはありません。それは戻ってくる。

私は間違っていますか?明らかに私が理解していないものがあります。ファイルは最初に作成したときにリポジトリに追加されましたが、今は削除しようとしています。

リポジトリに一度も追加されていないように、そのファイルを完全にuntrackedにしたいだけです。

答えて

17

に/ xcuserdataを使用してみてください。コミット後、gitがコミットするものは何もないことを確認します。

この「10回」を行ったことが修正されているということは、それを正しく実行していないことを示しており、フォルダ(実際にはその中のファイル)は引き続き追跡されています。

それ以外は、.gitignoreの内容はうまく見えますが、私は自分のレポでも動作することを確認しました。

+0

私は何が起こっていたか知っていると思います。ファイルが変更されているので、まだ 'add'が完了していないので、 'rm'の後に 'commit'が付きませんでした。 100%の意味合いはありませんが、xcodeがそれを修正する前にファイルでそれをしたら、すべてがうまくいきました。 –

-3

git statusは、そのフォルダの下にファイルが削除されていることを示していますことを

git rm -r --cached XXXXXXXX.xcodeproj/project.xcworkspace/xcuserdata 

チェックを行った後、あなたの.gitignore

+0

これは、違いはありません。 –

2

あなたはUserInterfaceState.xcuserstateが変更されているという理由だけで、あなたのコミットをプッシュすることができない場合は、ここでは簡単な修正です:

  1. オープン主催者は、あなたのコミットコード(f01a2147218d by usernameのようなもの)
  2. をコピーし、リポジトリにアクセスしてください、
  3. 端末を開き、プロジェクトのフォルダに移動します。git reset --hard f01a2147218d
  4. コミットをプッシュしてください!
関連する問題