Lei*_*ell 21 svn cvs version-control whitespace
CVS和Subversion都有一个方便的合并功能,因此当您更新已修改的源文件时,它会合并其他人在同一文件上所做的更改.
但是,如果您的更改与其他更改不兼容 - 通常如果您同时更改了代码的相同部分 - 则会产生冲突.两段源代码都将包含在合并文件中,您需要手动排序要保留的更改.到目前为止都很好.
我的问题是我们中的一些人使用不同的开发环境(Netbeans与vi,如果你必须知道),Netbeans有一个自动缩进功能,可以重新缩进代码.因此,当我们合并更改时,我们有时会遇到巨大的冲突,这些冲突主要是由缩进的简单更改引起的,并不是对代码的真正更改.通常这些会产生数百行明显的冲突,这些冲突必须手动解决,但通常它们只归结为几行真正的变化.当某人的编辑器将unix更改为Windows换行符或反之亦然时,会出现类似的情况.
那么 - 在比较两个版本时,我可以设置合并以忽略这些"冲突"吗?Diff有--ignore-space-change或-b选项,我想在cvs或svn中提供基本相同的功能.我们在不同的项目中使用每个工具,所以我很乐意为其中一个或两个得到答案.
最后两个笔记:
对于Windows用户,您可以使用TortoiseSVN(Subversion的Windows资源管理器外壳扩展),它具有支持您所描述内容的合并功能:
忽略行结尾不包括仅由行端样式的差异引起的更改.
比较空格包括缩进和内联空格中的所有更改作为添加/删除的行.
忽略空白更改会排除仅由于空白数量或类型的变化而导致的更改,例如.更改缩进或将制表符更改为空格.添加之前没有空格或完全删除空格的空格仍然显示为更改.
忽略所有空格会排除所有仅限空白的更改.
| 归档时间: |
|
| 查看次数: |
11216 次 |
| 最近记录: |