2011-11-15 21 views
13

有没有办法比较XCode中两个SVN版本之间的所有变化?如何比较XCode中的两个SVN修订版?

(我不知道如何查看比较单一的文件,使用的XCode 4的源代码控制视图模式,并且知道如何查看组织者的仓库节中一个版本中引入的更改。)

回答

1

在源代码控制分割视图,底部有修订选择控件。双方有这个控制,所以你可以选择任意的承诺不一致:

change comparison revisions

Discolsure:我与GIT SVN测试这一点,伟大工程!

+0

正如我写道:“我知道如何查看比较单个文件,使用XCode 4的源代码管理视图模式”。不幸的是,这并没有显示组织者为两个相邻版本所做的改变的概况。它也不会“锁定”,因此无法在从文件导航到文件时看到修订版之间的所有更改。 – Danra

1

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

要看到在终端上运行的版本186的diff文件(按空间看下一页的diff文件,或者q退出):

svn diff -c 186 | more 

要查看版本179和186之间运行作出的diff :

svn diff -r 179:186 | more 

然后,您可以复制一个脚本像fmdiff,并调用FileMerge直接与diff文件的输出,如:

svn diff -c 186 --diff-cmd fmdiff 
0

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

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

SVN复制-r specificRevisionNumber文件:///用户/ YOURNAME/SVN/yourProject /行李箱文件:///Users/yourName/yourProject/branches/yourProject-1.0

希望帮助

4

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

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

我认为这就是你想要的。

+0

谢谢!你有没有使用Git的diff格式? – Danra

+0

不对不起,我不使用git。 – iDou

9

在Xcode 6,这里是你如何做到这一点:

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

    Xcode 6 comparison mode

  2. 选择一个版本。控件位于编辑器窗格的底部。 Xcode 6 choose revision