コードプロジェクトをコミットしようとすると、コミットする必要のある「UserInterfaceState.xcuserstate」というファイルが表示されます。コミットしてプロジェクトをgitにプッシュしようとすると、Xcodeは「作業コピー「アプリ」にコミットされていない変更があります」というポップアップメッセージを表示します。もう一度コミットしようとすると、同じファイル「UserInterfaceState.xcuserstate」が再度コミットされます。誰かがこれを手伝ってくれますか?
3067 次
1 に答える
20
UserInterfaceState.xcuserstate
Xcodeは、ウィンドウの位置、開いているタブ、プロジェクトインスペクターの展開されたノードなどのGUI状態を保存する場所です。
Xcodeウィンドウのサイズを変更するだけで、このファイルが変更され、ソース管理システムによって変更されたというフラグが立てられます。プロジェクト自体にとって重要ではない特定のファイルをSCMシステムに無視させることができます。
Gitにファイルを無視させたい場合は、ファイルをに追加できますが.gitignore file
、追跡を削除する必要があります。現在追跡されているファイルの追跡を停止するには、を使用しますgit rm –cached
。
git rm --cached ProjectFolder.xcodeproj/project.xcworkspace/xcuserdata/myUserName.xcuserdatad/UserInterfaceState.xcuserstate
git commit -m "Removed file that shouldn't be tracked"
その後、.gitignore
が有効になりUserInterfaceState.xcuserstate
ます。以降、次のようなポップアップメッセージは表示されません。'The working copy "app" has uncommitted changes.'
于 2013-05-14T04:24:16.670 に答える