23

我不能从提交中排除用户界面状态文件。

每次我尝试推送到 github 时,它都会要求我先提交并将用户界面状态文件插入更改中(即使我根本没有移动鼠标或界面,它仍然显示为提交!)。

我尝试了其他类似主题中描述的不同方法。例如,我尝试将所有可能的用户界面情况添加到根目录下的 .gitignore 中,如下所示:

*.xcuserstate
project.xcworkspace
xcuserdata
UserInterfaceState.xcuserstate
project.xcworkspace/
xcuserdata/
UserInterface.xcuserstate

它没有用。我试图清理缓存并重置 git,但没有帮助。

Git status 命令显示以下内容:“已修改:.xcodeproj/project.xcworkspace/xcuserdata/.xcuserdatad/UserInterfaceState.xcuserstate”

它看起来像这样

请帮忙(这让我发疯)!

4

2 回答 2

35

如果这些文件已经提交,您需要在看到您的 .gitignore 文件工作之前将它们从索引中删除。

git rm --cached *.xcuserstate
# or
git rm -r --cached project.xcworkspace
于 2013-06-26T06:32:20.977 回答
20

要在调用 -rm 后添加 VonC 的答案,您还必须提交然后推送(在再次触摸 Xcode 或它的 git 工具之前在终端中执行此操作),这解决了我的问题。

所以

git rm --cached *.xcuserstate
git commit -m "Removed cached files"
git push

然后你可以再次触摸 Xcode

于 2014-03-29T21:20:33.993 回答