我有一个Xcode 5项目的修改工作副本,该项目已从不再可用的远程svn服务器检出。如何删除工作副本的svn关联并使其不受源代码管理? (最终我想基于工作副本创建一个git存储库并推送对它的修改。)我不需要保留svn历史记录。
我已尝试将svn服务器与项目解除关联(例如删除工作副本中的.svn目录,以及通过所有文件对svn服务器名称进行grep -r
搜索在工作副本目录树中),但项目仍然与svn服务器关联。我更喜欢直接使用工作副本进行此切换,而不是冒险尝试创建一个与svn服务器无关的空“工作副本”,然后从当前副本逐个传输文件。像svn-git这样的工具是不可行的,因为svn服务器都不可用,我的工作副本包含重要的修改。帮助...?
答案 0 :(得分:35)
我刚才面临类似的问题,我已经把我的git从github转移到了gitLabs。但是,这意味着之前的回购信息仍在我的项目中。
所以我发现当我将gitLab repo添加到Xcode中时,SourceTree显示一个文件被修改了。令人惊讶的是,这是保存所有工作副本服务器记录的文件。
只需导航到"您的项目" .xcodeproj> (右键单击并显示包装内容)> project.xcworkspace> (右键单击并显示包装内容)> xcSharedData> "您的项目" .xccheckout
右键单击该文件并选择打开方式,然后单击"更多.."。使用首选的文本编辑器编辑内部的XML,或者始终使用可靠的TextEdit。
您的旧git / svn服务器可能位于底部,包含在<dict></dict>
中。只需删除em并在Xcode中重新加载项目。
答案 1 :(得分:3)
我设法找到了一种方法,虽然可能不是最简单或推荐的程序。这就是让我最终实现将工作副本推送到远程git服务器的目标:
瞧!我的工作副本现在使用远程git服务器关联git。当然,SVN的历史已经丢失,但这对我来说并不是一个问题。必须有一个较短的食谱,但我想分享上述内容,以防万一人处于类似的困境中。
答案 2 :(得分:1)
从以下位置删除所有无回复的回购
DVTSourceControlWorkspaceBlueprintWorkingCopyRepositoryLocationsKey DVTSourceControlWorkspaceBlueprintWorkingCopyStatesKey DVTSourceControlWorkspaceBlueprintWorkingCopyPathsKey DVTSourceControlWorkspaceBlueprintRemoteRepositoriesKey
结帐所有步骤Steps