SVN导出差异
概述:在开发过程中,我们有时需要将代码差异提供给他人。使用SVN进行版本控制时,要分为未提交到仓库的本地修改和已提交到仓库的修改两种情况进行处理。本文对这两种情况进行说明。
一、未提交到仓库的本地修改
对于未提交到仓库的本地修改,可以通过patch很方便地导出导入差异。
在需要导出的目录上右击,点击“Create patch”。
接下来勾选需要导出的文件,单击OK,选择生成路径。在指定路径下会生成一个后缀名为 .patch 的文件,其中包含了差异。
相应地,如果我们拿到一个patch文件,要如何导入到代码中?首先还是要右击需导入patch的目录,选择“Apply patch”。
选择需要导入的patch后,会列出所有差异文件。我们根据需要勾选导入哪些文件的差异即可。
二、已提交到版本库的修改
对于已提交到版本库的修改,我们无法使用导出patch的方式。所以需要导出两个版本之间的差异文件,通过对比工具进行对比。假设我们需要获取第11、12、13版本的修改,则需要导出第10版本和第13版本的对应文件进行对比。
首先打开log,选中第10版本和第13版本。其后右击,选择“Compare revisions”。
菜单中会列出第10版和第13版之间的所有差异文件。我们选择需要导出的文件即可。其后右击,选择“Export selection to”,选择导出路径,即可获得第13版本的对应文件(仍然保留了和源码一致的目录层级,对比非常方便)。
单击右上角的小箭头,然后再次导出,即可获得第10版本的对应文件(同样保留了和源码一致的目录层级)。
使用对比工具对比,即可看到差异。