.gitignore
に何を入れても、notgitに以下のUserInterfaceState.xcuserstate
ファイルを無視させることができます。
$ git status
On branch master
Your branch is up-to-date with 'Origin/master'.
Changes not staged for commit:
(use "git add <file>..." to update what will be committed)
(use "git checkout -- <file>..." to discard changes in working directory)
modified: .gitignore
modified: CalFoo.xcodeproj/project.xcworkspace/xcuserdata/wcochran.xcuserdatad/UserInterfaceState.xcuserstate
この投稿 にリストされている.gitignore
ファイルを使用/編集しています。正確なパス名CalFoo.xcodeproj/project.xcworkspace/xcuserdata/wcochran.xcuserdatad/UserInterfaceState.xcuserstate
を含むパターンに一致するものをすべて試してみましたが、役に立ちませんでした。
この特定の問題は、Xcodeを使用して初期gitリポジトリを作成し、後で here から.gitignore
ファイルを追加するワークフローから発生します。 gitで以前に追跡されたファイルを無視することに対するより一般的な答えは、 この質問 から見つけることができます(タイトルに「gitignore」がなかったので、この投稿を検索で見つけたことはありません)。
バージョン管理されていないファイルのみを無視できますが、そのファイルは既にgitに認識されています。
Gitにそのファイルを追跡させたい場合は、gitに無視するよう指示する必要はありません。
Gitにそのファイルを追跡させたくない場合は、git rm
を使用すると、無視ルールが機能し始めます。
注意:git rm
はファイルを削除します。git rm --cached
を使用して、ディスクからではなくリポジトリから削除します。
同じ問題がありました。
最初に未解決のコード変更をコミットしてから、次のコマンドを実行します。
git rm -r --cached .
これにより、変更されたファイルがインデックス(ステージング領域)から削除され、次のコマンドが実行されます。
git add .
コミットする:
git commit -m ".gitignore working now"
Git rm --cached filenameを取り消すには、git add filenameを使用します。
GitHub上のファイルを無視する簡単な方法の1つは、ここで完全に説明されています https://help.github.com/en/articles/ignoring-files
GitHubへのプッシュを行う前に、プロジェクトフォルダーは空白にしておく必要があります。
1)ターミナルを開いて書き込みcd
プロジェクトフォルダーをターミナルにドラッグします。その後、次のようになります。
docmacbook$ cd /Users/docmacbook/Downloads/MyProjectFolder
2).gitignoreファイルを開き、無視するファイルを追加します。たとえば、私の.gitignoreファイルは次のようになります。
MyAppName.xcodeproj/xcuserdata
MyAppName.xcworkspace/xcuserdata
Pods
report.xml
3)CommitおよびPushGitHubへ。
この後、プロジェクトを移動するか、.gitignoreファイルが存在するフォルダーに新しいプロジェクトを作成し、無視したいファイルはGitHubにプッシュされません。
注:これらの手順は既存のプロジェクトでも機能すると思いますが、テストしていません。