如何在XCode 4中将现有项目添加为工作副本?

7
今天我从XCode 3切换到XCode 4,现在我的项目遇到很多问题,这些问题都是在XCode 3版本控制下的。如果你安装了XCode 4,它会记住你所有的代码库。问题是,这些项目不知道它们属于哪个特定的代码库。苹果的说明很简单,但却行不通:

如果您有一个通过Subversion或Git命令行或其他工具检出的工作副本,可以将其添加到Xcode SCM仓库支持中。要实现此目的,请单击仓库组织者导航窗格底部的添加按钮(+)并选择“添加工作副本”。

如果我选择项目目录,就会得到以下错误信息:

无法添加工作副本,因为找不到其代码库。

有人知道问题所在吗?

为了避免混乱,我想澄清几件事情:我的项目在XCode 3版本控制下工作正常。我也知道我可以删除所有项目并重新检出(但我不想这样做)。我已经尝试过检出一个项目,然后该项目会自动作为工作副本添加。然而,如果我删除引用,再试图将同一个项目添加为工作副本,仍然不起作用。


1
@occulus - 这可能对早期的发布候选版本是正确的,但目前正在发货的Xcode 4在我的经验中非常稳定。我目前正在使用它来生产我的Mac和iPhone应用程序,并且注意到很少有问题。然而,我听说有问题的一个领域是Git集成:http://arstechnica.com/apple/reviews/2011/03/xcode-4-hands-on.ars。像往常一样,请确保在遇到任何问题时提交错误报告。 - Brad Larson
啊,抱歉,我撤回之前的评论!:) 谢谢大家提供的信息。 - occulus
@mowidev 不知道它是否向后兼容早期版本的XCode?我能否使用XCode 4并将我的项目发送给仍在使用上一个XCode 3的人,让他们能够正常打开项目?去搜索一下... - occulus
我也提交了一个错误报告。编号为9134296(如果有帮助的话)。如果有任何进展,我会发布的。 - mowidev
参考此Stack Overflow问题/答案链接: - Vishal Chaudhry
显示剩余4条评论
4个回答

23

对于我来说,关键是退出Xcode然后严格遵循Apple的指示。在终端中执行以下操作:

  1. $ cd project_folder#包含.xcodeproj文件的项目
  2. $ git init
  3. $ git add .#在“add”后面注意点
  4. $ git commit -m 'Initial version text'

然后重新进入Xcode,打开组织者,et voilà-即时的存储库。


5
我在答案中错过了“退出Xcode”的步骤,只是退出了项目,直到我实际退出并重新启动Xcode后才出现了存储库。 - Rory O'Bryan
1
+1 退出Xcode。像@RoryO'Bryan一样,我也退出了项目,尽管还有另一个开着。退出Xcode解决了我的问题。 - Tom Pace
这对我来说完美地运作了!不确定gitignore文件,但在我的端上一切似乎都很好。 - FrostyL

6

我通过退出Xcode并在打开我的工作区之前打开存储库组织器来解决了这个问题。然后它就可以工作了,我可以使用SVN集成打开我的工作区。


谢谢你的建议,但我已经切换回XCode 3了。不过我一有时间就会测试这个。 - mowidev

2
在终端中,您可能会遇到以下错误:
-bash: git:命令未找到
这是因为git工具(和svn)包含在XCode 4.5或更高版本的Xcode.app捆绑包中。为了运行包含的工具,您需要使用xcrun命令。例如,要运行上面帖子中提到的git命令:
1. $ xcrun git init 2. $ xcrun git add . 3. $ xcrun git commit -m 'Initial version text'
有关更多信息,请参见此链接: http://www.cocoanetics.com/2012/07/you-dont-need-the-xcode-command-line-tools/

1
我需要做的是,正如Udi所指出的,先关闭Xcode并打开组织者,然后再打开任何项目。但接着我必须首先添加存储库及其凭据(在这种情况下为SVN),然后再按照你(mowidev)发布的Apple方向操作。完成此操作后,工作副本就会出现在我添加的SVN存储库列表中。
最终,这将在两个部分中建立关联(Xcode项目源代码控制设置与现有工作副本的使用)。如果顺序错乱,Xcode最终会认为它是一个Git repo(实际上并不存在)。

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