在Xcode中为一个已有项目建立Git代码库

29

非常相似,唯一的区别是我没有将UserInterfaceState包含在git存储库中,这可能会有点烦人,因为每天在Xcode中导航时都会更新。 - Joey
为什么不接受我的答案?它已经运行良好多年了... - Motti Shneor
2个回答

99

上一个答案可以正常工作,但是有点冗长,并且与较新的Xcode版本不兼容。我会尝试更好地重申它:

  1. 选择你的 Git 仓库文件夹(目录),通常这将是包含 Xcode 工作区或项目的目录。
  2. 在该目录中,创建名为".gitignore"的文本文件,并将以下内容放入其中:

    UserInterfaceState.xcuserstate
    build
    *.pbxuser
    *.perspectivev3
    *.mode1v3
    *~
    *~.nib
    *~.xib 
    .DS_Store 
    xcuserdata/
    
  3. 关闭Xcode(如果它已经打开)
  4. 在终端中执行以下操作:

  5. \> cd <path of the repository folder>
    \> git init
    \> git add .
    \> git commit -m "Initial commit - or whatever text you'd prefer"
    
    你已经完成了!在Xcode中打开工作区/项目,并在组织器窗口中检查你的代码库。

1
我从这里安装了Git,问题得到了解决。 - Victor Engel
1
谢谢。我只是想知道,为什么你要将nib和xib添加到gitignore中? - Darren
这些不是你的.nib或.xib文件。在真正的XXX.xib旁边,有时你可能会找到一个XXX~.xib作为编辑器创建的临时备份,以防它崩溃。它们应该被任何源代码控制忽略。无论如何,把它们带回来都是个坏主意。 - Motti Shneor
1
这正是我想要的,摆脱备份文件和跟踪用户界面的文件。它在2013年12月29日对我有用。这不是重复帖子,与上面提到的其他帖子相比,它增加了太多的价值。 - McUsr
有点烦人的是,他们在源代码控制菜单下没有这个命令。 - Maury Markowitz
显示剩余5条评论

19
  1. 退出Xcode(不确定是否必要,但我为了安全起见这样做)
  2. 打开终端
  3. 进入项目文件夹目录
  4. find .
  5. 找到名为“UserInterfaceState.xcuserstate”的文件,并将整个文件名复制到 ./ 之前
  6. echo "粘贴 UserInterfaceState.xcuserstate 文件到这里" >.gitignore
  7. cat .gitignore
  8. git init
  9. git add .
  10. git commit -m "你可以在这里输入注释,例如现在已经受控制源代码"

现在您拥有一个代码库,您的项目已经受到源代码控制。


2
我不确定这是否是一个好方法,因为1)它会覆盖现有的.gitignore文件内容,而需要忽略更重要的文件。2)它通过名称来忽略特定的文件,而不是合理的单一规则(例如*.xcuserstate)。在我上面对.gitignore文件的建议中,我添加了所有我的用户(非共享)方案文件。必须有一种简单的方法来处理接口编辑器的用户状态文件。 - Motti Shneor

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接