【问题标题】:How to compare two SVN revisions in XCode?如何比较 XCode 中的两个 SVN 版本?
【发布时间】:2015-01-16 05:02:40
【问题描述】:

有没有办法比较 XCode 中两个 SVN 修订版之间的所有更改?

(我知道如何使用 XCode 4 的源代码控制视图模式查看比较单个文件,并且我知道如何查看组织者存储库部分中单个修订版中引入的更改。)

【问题讨论】:

    标签: ios xcode svn version-control


    【解决方案1】:

    在 XCode 6 中,您可以这样做:

    1. 单击比较按钮并选择“比较”。按钮位于 XCode 窗口的右上角。

    2. 选择一个修订版。控件位于编辑器窗格的底部。

    【讨论】:

      【解决方案2】:

      我不知道从什么时候开始,但在 xCode 4.4.1 的组织者存储库部分的右下角有一个“查看修订”按钮。如果您输入修订号,您将拥有从此版本到存储库头部的所有更改。

      但如果您想查看修订版 1801、1802 和 1803 中所做的更改(即比较修订版 1800 和 1803),您也可以写“1800:1803”。

      我想这就是你想要的。

      【讨论】:

      • 不抱歉,我不太会用git。
      【解决方案3】:

      在源代码管理拆分视图中,最底部有修订选择控件。双方都可以使用此控件,因此您可以选择任意提交来区分:

      Discolsure:我用 git SVN 对此进行了测试,效果很好!

      【讨论】:

      • 正如我所写:“我确实知道如何使用 XCode 4 的源代码控制查看模式查看比较单个文件”。不幸的是,这并没有显示组织者对两个相邻修订所做的更改的概述。它也不会“锁定”,因此在从一个文件导航到另一个文件时,不可能看到修订版之间的所有更改。
      【解决方案4】:

      如果您找不到通过 Xcode 执行此操作的方法,您可以随时使用终端中的 SVN 命令行来执行此操作。

      要在终端运行中查看修订版 186 的差异(按空格查看差异中的下一页,或 q 退出):

      svn diff -c 186 | more
      

      要查看版本 179 和 186 之间的差异,请运行:

      svn diff -r 179:186 | more
      

      然后您可以复制 fmdiff 之类的脚本,并使用差异的输出直接调用 FileMerge,例如:

      svn diff -c 186 --diff-cmd fmdiff
      

      【讨论】:

        【解决方案5】:

        如果您使用的是分支,则可以比较两个分支。我发现它使用源代码控制|合并然后取消合并,但可能还有其他方法。

        我不知道你是否可以在 Xcode 中追溯创建分支,但如果你从命令行创建分支,我很确定 Xcode 会识别它。

        svn copy -r specificRevisionNumber file:///Users/yourName/svn/yourProject/trunk file:///Users/yourName/yourProject/branches/yourProject-1.0

        希望有帮助

        【讨论】:

          猜你喜欢
          • 1970-01-01
          • 2022-11-11
          • 2021-11-30
          • 2013-09-06
          • 1970-01-01
          • 1970-01-01
          • 1970-01-01
          • 1970-01-01
          • 1970-01-01
          相关资源
          最近更新 更多