xcode从项目中删除存储库

时间:2013-09-17 17:08:35

标签: iphone ios xcode git svn

我的xcode项目在Source Control菜单下列出了两个存储库。其中一个是来自旧项目的存储库,不应与当前项目相关联。但是,我无法弄清楚如何从项目中删除它。

注意:我已从管理器中删除了此存储库。

Screenshot

非常感谢任何帮助。

6 个答案:

答案 0 :(得分:31)

我是通过手动编辑.xccheckout文件来完成的。

以下是适合您的步骤:

  1. 退出Xcode,并备份项目文件。
  2. 在Finder中,右键单击项目文件并选择“显示包内容”
  3. 右键单击project.xcworkspace文件,然后选择“显示包COntents”
  4. 在名为xcshareddata的文件夹中,有一个扩展名为.xccheckout的文件(它应与您的主项目文件同名,但扩展名为.xccheckout
  5. 备份此文件
  6. 在您最喜欢的纯文本编辑器中打开.xccheckout文件 - 这是一个plist。
  7. 找到IDESourceControlProjectWCConfigurations密钥,然后查找具有您要删除的存储库名称的<dict>
  8. 在同一个<dict>中有一个键IDESourceControlWCCIdentifierKey,其值包含一个看起来像UUID的标识符 - 该字符串标识存储库。
  9. 在整个文件中搜索以ID为键的键/字符串对。 删除所有这些对。
  10. 删除<dict>
  11. 保存文件
  12. 在Xcode中重新打开项目,并确保一切都很好。
  13. 如果仍然显示,请确保项目中的所有文件都不在旧存储库的目录中(通过绝对文件引用)。您可以通过打开项目文件中的主文件project.pbxproj来进行调查。

    您也可以通过临时重命名旧存储库的根文件夹(在Finder中)来测试它,如果存储库不再显示在源控制菜单中,那么您的项目中有一个文件位于在那个旧的存储库中。

答案 1 :(得分:4)

  1. 关闭 XCode
  2. 打开终端
  3. 导航到项目的根目录
  4. 输入find ./ -name .svn -exec rm -rf {} \;
  5. 打开项目
  6. 您的项目应与所有存储库断开连接。现在,您可以通过Source Control -> Configure Project将项目连接到所需的存储库。

    注意:该命令搜索扩展名为.svn的所有文件名,并删除(递归且强制)所有文件名。

答案 2 :(得分:0)

您必须从旧目录中手动删除svn文件。这将使用svn命令完成。您可以在下面找到命令。  How do you remove Subversion control for a folder?

答案 3 :(得分:0)

实际上,如果您在未加载任何内容的情况下启动Xcode,然后将项目的新副本签出到新的工作区文件夹中,则会在项目的本地副本中自动删除不相关的存储库信息。

我还建议你导航到Xcode - &gt;源控制 - &gt; %Repository% - &gt;配置%ProjectName%并在分支面板中选择工作分支 - 只是为了确保正确初始化trunk | tags | branches文件夹位置。 (完成后,您将看到Source Control菜单中的存储库菜单项更新,子菜单将展开以提供更多选项)。

这是一个简单的事情,即提交Xcode已经回到同一个存储库的那些更改。 diff工具应该指明该.xccheckout文件中已更改的XML行,而不是其他内容。

答案 4 :(得分:0)

我在使用源代码管理后有对话框的经验 - &gt;结帐,我所做的只是删除/编辑我的帐户。

Xcode - &gt;偏好 - &gt;帐户 - &gt; (进行编辑或删除)

我不是100%肯定也会修复你的,但值得一试。顺便说一句,我正在使用Xcode 6 beta。

答案 5 :(得分:0)

对于那些额外存储库是他们的旧本地模块(如本地 SPM)的用户。

假设你已经从源文件中删除了原来的本地包

  • 退出 Xcode
  • 删除派生数据
  • 重新打开项目

您可以从 Xcode 的首选项中找到派生数据位置:

Preferences