是否可以用我当前的"功能分支替换Xcode中的主分支"

时间:2016-10-13 00:24:54

标签: xcode git xcode8

我一直在为Xcode中的应用开发一项功能。我使用master-branch作为我的稳定/生产就绪分支。当我处理一项功能时,我开始feature-branch。我一直在使用的这个特殊功能分支有很多重要的提交(30多次提交),现在当我尝试将它合并到我的master-branch时,Xcode告诉我与各种文件存在冲突并且合并是无法执行。没有解决冲突的选择。

我正在使用Xcode 8.0。此时feature-branch远远超过master-branch并准备就绪。我想开始研究新功能,但我不想通过在当前功能分支上创建更多分支来制造混乱。我唯一能想到的就是用我的master-branch完全取代feature-branch,但这有可能吗?如果是这样呢?

我无法在Xcode,Apple文档或堆栈中找到任何内容。谢谢你的建议!

2 个答案:

答案 0 :(得分:2)

您应该在此处将master-branch合并到feature-branch。修复你的冲突。测试,确保它有效。如果您确信一切正常,请将feature-branch合并回master-branch

在此期间,您仍可以根据需要在master-branch工作。但请记住,可能会出现更多冲突。在这种情况下,我也只是做master-branch - > feature-branch - > master-branch其中" - >"代表合并。

对于冲突,我实际上并没有使用Xcode来解决,但是有很多资源来指示如何执行此操作。

答案 1 :(得分:2)

我有类似的情况,但由于"树冲突",Xcode中的源代码控制不会让我合并分支。它只是挂了。好东西我有备份,因为我再也无法打开项目了。

从备份恢复项目后,我执行了以下操作,将Master分支替换为我的开发分支。

  1. 在Xcode中我去了Source Control->工作副本并选择我的开发分支作为工作副本。
  2. 在“源代码管理”下,我为所有待处理的更改执行了提交
  3. 在“工作副本”部分的“源代码管理”中,我将鼠标悬停在“开发”分支上,将菜单展开到右侧并选择“配置项目名称
  4. 在“配置”窗口的顶部,我选择了分支
  5. 我选择了Master分支并点击了底部的 - 符号并确认我要将其删除。
  6. 返回Source Control,悬停在Working Copies部分的Development分支上,并从扩展到右侧的菜单中选择New Branch。
  7. 命名为新分支" Master"。这使得Master成为当前的分支。
  8. 返回源代码管理并将当前分支更改回我的开发分支。