如何使用TortoiseSVN生成不同分支/历史日志的*.diff差异文件
目录
4. 如何导出两个分支(Branch)的*.diff差异文件;
常见的文件/文件夹比对工具有Araxis Merge和Beyond Compare(bcompare),但这些工具在生成差异报告时,内容往往比较臃肿,并且在向客户展示时往往容易泄密,而TortoiseSVN提供了一个不错选择,其生成的报告简洁直观,像下图展示的这样。
1. 什么是TortoiseSVN?
版本控制是管理信息更改的技术。长期以来,它一直是程序员的重要工具,他们通常会花时间对软件进行少量更改,然后在第二天撤消或检查其中的某些更改。想象一下,一个由这样的开发人员组成的团队同时工作,甚至可能同时处理同一个文件! -您会明白为什么需要一个好的系统来管理潜在的混乱情况。
TortoiseSVN是Apache™Subversion®版本控制系统的免费开源Windows客户端。也就是说,TortoiseSVN会随着时间推移管理文件和目录。文件存储在中央存储库中。该存储库非常类似于普通的文件服务器,不同之处在于它可以记住对文件和目录所做的所有更改。这使您可以恢复文件的旧版本,并检查数据更改方式和时间以及更改者的历史记录。
下面我们进入主题:
- 如何导出一个分支中每次更改日志的*.diff差异文件;
- 如何导出两个分支(Branch)的*.diff差异文件;
这个差异报告往往用在软件发布时,团队成员内的Coding review.
2. 打开TortoiseSVN进入工程
通过TortoiseSVN的浏览器(Repo_browser)打开指定的路径,进入到工程存放的位置,见图1。其中Project_1和Project_2表示不同时间节点的两个分支,见图2。
图1
图2
3. 如何导出一个分支中每次更改日志的*.diff差异文件
下面我们来试着导出Projcet_1分支中的某一次diff文件。选中Projcet_1,并右键,在上下文中选择“show log”(或者选中Projcet_1,单击左上角的HEAD进入),见图3,弹出一个对话框,可以看到这Projcet_1分支每一次的历史更改记录,见图4,
图3
图4
选中你要导出的那一条记录,以图中9197为例。选中9197,并右键,在上下文中选择“Show changes as unified diff”,见图5,接着弹出“TortoiseUDiff”界面,在这个界面中,你能看到9197这条记录变更内容,见图6。
图5
图6
单击“TortoiseUDiff”界面的右上角的“File”,在上下文中选择“Save as”,将这个diff差异文件保存到指定的路径,见图7。
图7
注意:在给diff差异文件命名时,“.diff”不能少。
4. 如何导出两个分支(Branch)的*.diff差异文件;
下面我们来试着导出Projcet_1和Projcet_2两个分支中的diff文件。同时选中Projcet_1和Projcet_2,并右键,在上下文中选择“Show differences as unified diff”,见图8,接着弹出“TortoiseUDiff”界面,在这个界面中,你能看到Projcet_1和Projcet_2两个分支diff差异内容,见图9。
图8
图9
单击“TortoiseUDiff”界面的右上角的“File”,在上下文中选择“Save as”,将这个diff差异文件保存到指定的路径(与(3)中图7相同)。