问题标签 [mergeinfo]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
svn - 如何避免子文件夹上的 svn:mergeinfos?
我们尝试仅在根分支文件夹中保留 'svn:mergeinfo' 属性。但是,我们不断看到它潜入子文件夹。我们已经能够确定一些可能的原因:
- 在 repo-browser 中移动文件夹
- 在 IntelliJ 中移动和/或重命名包
- 使用旧的 svn 客户端
谁能提供一个我们不应该做的事情的清单,以避免意外创建这些属性?
我们使用的工具是 IntelliJ 8(很快 9)、Ankh、TortoiseSVN 和 SlikSvn。
svn - 如何设置触发器以防止使用 mergeinfo 属性提交到 SVN?
我想避免在除分支根之外的任何东西上创建 svn mergeinfo 属性。我们有一个主干分支和一些其他分支。
假设我对 svn 触发器一无所知,我需要遵循哪些步骤来设置一个预提交挂钩,以防止将 mergeinfo 属性添加到除分支根之外的任何内容?
主干位于存储库的基础“/trunk”中,所有分支都在“/branches/foo”中
svn - Svn:在不恢复任何相关合并信息的情况下恢复文件内容更改?
如果您已完成合并,您可能会发现,在提交更改之前,实际上您不想接受任何合并到受影响文件之一的更改。所以你做例如:
$ svn 还原 foo.c
但是,这似乎也恢复了与该文件相关的合并信息。因此,当您进行后续合并时,它将再次合并完全相同的更改。
而不是还原一个可以做的:
$ svn cat foo.c > foo.c
但这似乎不是正确的做事方式?有没有更清楚地表明我想要实现的目标,即说“考虑为此文件完成合并但不更改其内容”?
svn - 如何获得 Subversion 差异摘要以忽略 mergeinfo 属性?
我有 Subversion 1.6.5 客户端和 1.5.4 服务器。而且我主要只关心完整存储库路径上的差异,而不是工作副本。
区分分支时,除了mergeinfo属性外,已合并的分支已经显示为相同的。
这对于必须查看变化以寻找任何可能是真正变化的人来说有点烦人。
然而,在我们的用例中情况更糟,因为我们有一些脚本可以检查各种事物的合并状态,而 mergeinfo 属性会导致它们突出显示很多不同步的事物,而实际上它们并不同步。
有没有办法让差异摘要忽略 mergeinfo 属性?
svn - 单个文件的mergeinfo总是被触动
我有几个文件似乎总是svn:mergeinfo
在通过常规合并工作周期执行的各种合并任务上获得新的设置。
该文件在几个月内没有更改,但 mergeinfo 一直被触及。我有一种感觉,mergeinfo 在某些时候感到困惑并且从未恢复过。我不确定要寻找什么来破解合并信息并进行更正,或者只是将其全部删除并继续前进。
有小费吗?
svn - svn pre-commit hook 禁止在非根目录上使用 svn:mergeinfo
我想使用一个预提交钩子来防止开发人员在非根目录上设置 svn:mergeinfo。也就是说,我想强制 svn:mergeinfo只能在“trunk”或“branches/branchName”之类的目录上设置。有时需要“提醒”开发人员,使用根目录的子目录作为合并目标不是一个好习惯(根据此处列出的最佳实践)。有没有人有这样的钩子脚本或知道我在哪里可以找到一个?我在 windows 环境中,所以批处理或 powershell 会更好,但任何东西肯定会有帮助。
svn - 将主干合并到 SVN 中的功能分支时如何避免大量 svn:mergeInfo
我试图通过将主干合并到分支中来保持功能分支的最新状态。问题是,在创建分支时大约有 2000 个文件,并且在分支和主干上都保持不变,除了 svn:mergeinfo 什么都没有更新。该项目规模相当大,对我们的 SVN 历史记录的影响如此之大,以至于它导致合并提交历史记录无法使用,因为它实际上标记了数千个已更改的文件,即使这些文件的唯一更改是由 SVN 完成的本身。
我努力了
- 使用与 Repo 相同的客户端版本 ( 1.5.2 )
- 使用我当前的客户端版本 1.6.10
- 合并一系列修订,从分支开始到头部
我应该提一下,在尝试此操作时,我一直在仔细查看 SVN 文档。所以不应该打破任何规则(例如,没有切换的子树,干净的本地副本等)
svn - SVN 目录属性上的长 svn:mergeinfo
看起来每个分支重新集成到主干都会导致在主干的 svn:mergeinfo 属性中添加一个额外的条目。这是 SVN 行为还是 TortoiseSVN - 有什么不好的吗?没想到 SVN 把属性作为功能的核心部分,只是为了附加的东西,所以看到它我有点惊讶。
svn - 我什么时候可以删除 svn:mergeinfo 中的条目?
我已经使用 TortoiseSVN 好几年了。
创建了几个分支,合并回主干,然后删除。
已删除分支的示例:
https://SvnServer/svn/MyProject/branches/branch1 https://SvnServer/svn/MyProject/branches/branch2 https://SvnServer/svn/MyProject/branches/branch3
主干的 svn:mergeinfo (https://SvnServer/svn/MyProject/trunk) 仍然包含那些已删除分支的合并跟踪信息。
svn:mergeinfo 的示例:
/分行/分行1:2106-2146
/分行/分行2:1983-2028 /分行
/分行3:1698-1741
这些信息还需要吗?我可以从 svn:mergeinfo 属性中删除它们吗?
c# - 扫描日志时如何忽略不相关的合并信息更改?
最近我对相关更改的扫描包括不相关的合并信息更改,我想忽略这些修订,其中日志项中的更改不会改变我正在迭代的文件夹中的任何项目。
我可以遍历 svnChangeItems 并检查 mergeinfo 属性,但是如何判断 ChangeItem 是否已提交给我正在扫描其日志项的文件夹的文件。类似于隐藏不相关的更改路径,除非我在日志查看器中选中此选项它不会显示一些相关修订,其中包括在我扫描的文件夹移动之前的更改。有任何想法吗?