CVS 和 Subversion 可以设置为忽略合并中的空格吗?

2024-03-08

CVS 和 Subversion 都有一个方便的合并功能,因此当您更新已修改的源文件时,它会合并其他人对同一文件所做的更改。

但是,如果您的更改与其他更改不兼容(通常如果您都更改了代码的相同部分),则会产生冲突。这两段源代码都将包含在合并的文件中,您需要手动找出要保留的更改。到目前为止一切都很好。

我的问题是,我们中的一些人使用不同的开发环境(Netbeans 与 vi,如果您必须知道的话),并且 Netbeans 具有自动缩进功能,可以重新缩进代码。因此,当我们合并更改时,有时会遇到巨大的冲突,这些冲突大多是由缩进的简单更改引起的,而不是对代码的真正更改。通常,这些会产生数百行明显的冲突,必须手动解决,但通常它们会归结为只有几行实际更改。当某人的编辑器将 UNIX 更改为 Windows 换行符或反之亦然时,会发生类似的情况。

那么 - 在比较两个版本时我可以设置合并来忽略这些“冲突”吗? Diff 有 --ignore-space-change 或 -b 选项,我希望在 cvs 或 svn 中具有基本相同的功能。我们在不同的项目中使用每种工具,因此我很乐意获得其中一个或两者的答案。

最后两个注意事项:

  • 显然,合并过程必须任意选择在合并文件中使用哪个版本的空白。我对此很满意 - 我们以后可以随时重新格式化它。
  • 我可以通过更加自律和更频繁地检查——承认和理解来避免这种情况。但我并不完美。

对于 SVN:在命令行工具中,有一个选项-x您可以将其设置为“b" or "w" 忽略空间变化或所有空间。
您还可以提供第三方工具来进行合并。因此,如果您有一个忽略空格的合并,则可以使用这个。 TortoiseSVN 一如既往,是所有参数的前端,因此它也支持忽略空格。

svn merge命令说明here http://svnbook.red-bean.com/en/1.5/svn-book.html#svn.ref.svn.c.merge。您需要的选项是--diff3-cmd

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

CVS 和 Subversion 可以设置为忽略合并中的空格吗? 的相关文章

  • Maven 中不同配置文件的不同 SCM

    在我的项目中 我们必须使用 maben build number 插件来构造 jar 的最终名称 为此我们使用 SCN 的修订版 因此我们需要 SCM 但是我们在无法直接访问的受控环境和本地测试环境上有两个 SVN 因此对于我们的 poup
  • TFS 2017 - 如何构建/交付仅更改的文件?

    我正在使用 TFS 2017 关于标题 我找到了一个术语 增量构建 但是 我找不到在哪里设置它 我尝试在 构建参数 p IncrementalBuild true 中添加增量参数 但总是收到错误 表明这是错误的参数 是否可以仅交付 或构建并
  • 自定义 SSH 端口上的 Git

    我的 VPS 提供商建议我将 SSH 端口保留为他们默认分配的自定义端口号 不是 22 问题是 虽然我知道我可以在创建远程配置时提供端口号 但在进行 Git 克隆时似乎无法提供相同的操作 我在用gitolite https wiki arc
  • Git 到 TFS 源代码管理迁移

    我想看看 TFS 如何为我的命令工作 所以我想将我们当前的 GIT 存储库移动到 TFS 数据库 我们使用 GIT 来获得普遍的分支支持 因此我想使用 TFS 2010 来解决该问题 现在的问题是 如何将 GIT 存储库导出到 TFS 显然
  • 如何保持 Subversion 和远程服务器(通过 FTP)同步?

    我们很难保持 Subversion 和 FTP 同步 有时我们忘记提交更改并只是将它们推送到 Web 服务器 我们的 svn 文件夹分散在整个 Web 服务器中 有些东西存在于一个地方而不存在于另一个地方 等等 今天我想花点时间解决这个问题
  • 使用BFG时可以指定多个文件吗?

    我正在尝试删除通配符无法覆盖的多种类型的文件 我尝试使用多个 delete files 但它不接受它 还尝试将文件全部放在 delete files 之后 但它也不接受它 有没有一种方法可以将它们全部放在一个命令中 如果没有 那么我必须运行
  • 读取Python/Pandas中缺少值的空格分隔文件

    我正在尝试使用 panda 中的 read csv 在 Python 中读取空格分隔的文件 它通过指定分隔符 来工作 当列中存在某些缺失值时 就会出现问题 因为它通过将缺失值视为分隔符来忽略缺失值 有办法解决这个问题吗 1600 1141
  • 没有分支的 svn 存储库签出

    我必须检查一个有 8 个分支的存储库 我不会下载每个分支大小 400MB 只需检查文件夹结构和主干即可 repo trunk repo tags
  • 使用 ssh-keygen 创建 SSH 密钥不会创建 .ssh 文件夹

    我正在尝试使用 msysgit 创建我的公共 私有 rsa 密钥对 我运行这个命令 ssh keygen C email protected cdn cgi l email protection t rsa 一切看起来都很好 我收到消息了
  • 如何存储和计算版本控制历史记录?

    考虑这个简单的 python 代码 它演示了一个非常简单的字典版本控制设计 def build current history current for action key value in history assert action in
  • PowerShell 中的 SVN 输出编码

    我正在尝试在 PowerShell 脚本内的字符串中捕获 SVN 日志 在命令行上 输出的编码是正确的 但是当我将其捕获到字符串中时 它就不是正确的 PS C sandbox gt svn log r1804 https myserver
  • 无法在 Windows 服务器上使 SVN 预提交脚本失败

    我正在编写一个 SVN pre commit bat 文件 该文件调用 Python 脚本来查询我们的问题跟踪系统 以确定用户提供的问题跟踪 ID 是否处于正确的状态 例如 打开 状态 并与正确的关联项目 SVN 服务器运行 Windows
  • TortoiseSVN:如何从提交中忽略 bin 内容

    我使用 TortoiseSVN 1 7 9 我怎么能够ignore remove内容来自 bin文件夹当我svn commit项目文件夹 我不想提交诸如 dll pdb etc I put dll pdb进入svn 忽略属性 但它不起作用
  • 如何从 Chrome 扩展示例(subversion 存储库)下载所有文件?

    我要下载这个例子 http src chromium org viewvc chrome trunk src chrome common extensions docs examples api tabs 它们是使用 ViewVC 显示的
  • 为什么我不能在 cygwin 中使用 $SVN_EDITOR 环境变量?

    我一定是错过了一些愚蠢的事情 当我使用 m 选项时它工作正常 echo SVN EDITOR emacs svn commit test py svn Commit failed details to follow svn Could no
  • IntelliJ Subversion 需要身份验证对话框

    我正在尝试从颠覆存储库中签出一个项目 我已输入我的信息 例如网址 用户名和密码 我可以看到我的存储库中的文件夹列表 我选择我的项目并选择要签出到的目录 一切似乎都很顺利 我在 结帐选项 中单击 确定 进行结帐 选择 1 7 格式 这就是我正
  • Capistrano 部署擦除数据库?

    我已成功使用 Capistrano 将我的应用程序部署到生产环境 但我不明白如何处理我的数据库 我正在使用颠覆和乘客 当我运行 cap 部署时 新部署会重新启动一切 它会清除添加到数据库中的数据 显然 必须有一个解决方案 但我很惊讶没有在网
  • 过滤 PHP 中所有类型的空格

    我知道有很多类型的空间 em 空间 en 空间 薄空间 不间断空间等 但是 我提到的所有这些都有 HTML 实体 至少 PHP 的 htmlentities 返回类似的内容 但是 那些没有 HTML 实体的空间怎么办 示例 示例 URL 不
  • 基于网络的颠覆查看器[关闭]

    就目前情况而言 这个问题不太适合我们的问答形式 我们希望答案得到事实 参考资料或专业知识的支持 但这个问题可能会引发辩论 争论 民意调查或扩展讨论 如果您觉得这个问题可以改进并可能重新开放 访问帮助中心 help reopen questi
  • Subversion 中的版本和项目的良好存储库布局是什么? [关闭]

    Closed 这个问题是基于意见的 help closed questions 目前不接受答案 我们有标准的 Subversion 主干 分支 标签布局 我们有几个针对中长期项目的分支 但到目前为止还没有一个发布版本 这正在快速逼近 我们应

随机推荐