问题标签 [hgsubversion]
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.
tortoisesvn - subversion/ tortoisesvn- 更改存储库的目录
我在目录项目/projectA 中有一个项目。它有一个相应的颠覆存储库。我使用 Tortoisesvn 作为前端。
我正在尝试将项目移动到 projects/projectA_old 并且找不到方法。看起来从乌龟重命名仅适用于项目内的目录,而不是项目目录本身。
谢谢
mercurial - 如何将 Mercurial 克隆到 Subversion?
在忍受了多年的颠覆(以及 CVS、SourceSafe 和其他人;有人记得 SCCS 吗?)之后,我是一个非常高兴的 bitbucket 和 mercurial 用户。我现在在我当地的 hg repo 中有相当多的项目历史,每天推送到 bitbucket,然后推送到我的家用机器。
问题是,我的公司希望我在颠覆中维护这段历史的副本。我在试图设置它时碰了壁。我已经安装了 hgsubversion,我认为是正确的。我已经使用 svnadmin 创建了一个空的 svn 存储库,准备保存 hg 历史记录。
但现在呢?说明说首先拉一个克隆(鼻子的?那是什么?我认为这意味着签出新的空 svn 目录的副本。好的。
但现在呢?我假设下一步是将我真正的本地 hg 克隆推送到我刚刚签出的空 svn 存储库。但我试过的都不会这样做。拉失败如下,报告“不相关的存储库”(我记得我把它关在我的主本地 hg 存储库的 URL 上,以绕过我尝试过的所有其他内容的“需要一个 URL”弹出窗口。
发现新的变更集 139d02f4b233 检查 4e97a23b6815:342df9e52cec 中止:存储库不相关 [命令返回代码 255 Mon Apr 25 11:29:33 2011]
所有这些摸索的结果是一个包含 .hg、.svn 和 .hgignore 条目的目录,没有别的了。
所以,我觉得我错过了一些现在必须有数百人尝试过的基本内容。有人可以帮我开始吗?谢谢!
PS:目前的目的是永久维护 SVN 作为团队 repo 并定期从 Hg 那里推送更改,这将无限期地保留我的主要客户。万一这很重要...
mercurial - Mercurial hgsubversion 扩展使 SVN Externals 表现得像 Hg 子存储库
这个问题与Using the Mercurial hgsubversion extension with SVN Externals有关。但是,与做 a 有关的问题的第二部分hg svn update
尚未得到回答。
是否可以在您从中提取的 subversion 存储库中获取 SVN 外部以转换为 Mercurial 子存储库?
svn - 何时以及为什么选择集中式(SVN)而不是分布式(Git、Mercurial)
最近在我的新工作中,我的部门(我们主要是建立股票和赛马网站,我们只在办公室做网站。)正在考虑使用SVN或Mercurial。我们的项目经理说他喜欢SVN(没有给我们他的理由)但让我们也可以选择Mercurial并征求我们的意见(最终决定权在他手中)
鉴于大多数在线文章都是关于解释为什么选择 Mercurial 而不是 SVN(或类似的东西)。我想问反面。
那么,尽管 Mercurial/Git 优于 SVN,但您何时以及为什么会在新项目中选择 SVN 而不是 Mercurial?
svn - 修复 hgsubversion pull 中的 svn UTF-8 数据问题
我在将 svn 更改拉入我的 mercurial repo 时遇到了一个错误:
我已经找到了如何为 svn 检测它(修复了文件名,但没有修复内容);如何将此检测应用于 hgsubversion 以便我可以继续拉?
git - 有人将 Activecollab 与 Git 或 Hg 一起使用吗?
我们目前使用带有 subversion 的 activecollab,但我们想考虑使用 Git 或 Hg 来为我们提供分布式源代码控制。
有没有人在做这项工作,以便修订可以链接到 activecollab 中的票,就像它们用于 SVN 一样?
svn - 两个人的drupal项目的Svn/Git?
与远程人员合作进行drupal开发的最佳方法是什么?我们只有两个人,所以 cvs /svn 是不是有点矫枉过正?有没有在线解决方案?
git - 如何使用 hg-git 关联现有的 Mercurial 和 git 存储库?
这是一个非常深奥的问题,所以从一开始就澄清一下:我不是在谈论从 svn 到 git、从 git 到 mercurial 或从 mercurial 到 git 的转换。我说的是利用允许 Mercurial 在某种程度上与 git 和 SVN 互操作的“跨系统”插件所产生的复杂情况。
一段时间以来,我使用 Mercurial 的 hg-subversion 插件来“跟踪”code.google.com 上的上游 SVN 存储库。多亏了这个插件,Mercurial 认为存储库是“相关的”,并且能够提取自我上次从存储库中提取以来发生的更改。这允许我维护我自己的私有 Mercurial 存储库,其中包括私有变更集、分支、标签等,但它会定期同步并与上游 SVN 存储库上发生的更改合并。
上游仓库已经干净地从 SVN 转移到了 git。当我说得很清楚时,我的意思是他们已经带走了整个提交树,或者至少是影响我关心的默认/主分支的部分。
我现在的情况是,我有一个最新的 Mercurial 存储库,它与现已失效的 SVN 存储库上的最后一次签入合并,我想开始从新的上游 git 存储库中提取更改,从在 svn 存储库被移动到 github 之后发生的更改。
我可以使用很棒的 hg-git 插件从这个存储库中提取更改,但是由于当前存储库没有与 git 上游存储库“相关”的概念,它会提取所有更改,包括镜像变更集的所有更改已经存在于我的存储库中。
所以我正在寻找的是关于如何让我的 Mercurial 存储库通过 hg-git 考虑自身与上游 git 存储库相关的建议,并将 git 存储库中的所有适当提交视为“已经拉出”维护变更集奇偶性的目的。
我看到内部 hg-git 似乎使用了一个文件 .hg/git-mapfile 我假设它映射上游 git 和本地 Mercurial 存储库之间的变更集。这大概是一个线索。
让我的本地 Mercurial 存储库进入这样一种状态的最简单方法是什么,它基本上表现得好像它是作为上游 git 存储库的克隆开始的,但维护了我自己的所有随着时间的推移添加的不相关的变更集?
(注意:我不希望使用新的克隆“重新开始”,然后应用我的私有更改,因为我想维护此存储库的历史完整性以用于我自己的构建/调试目的)。
mercurial - 在不同的变更集上应用 mercurial 包文件
TLDR:我有一个带有父 X 的 HG 捆绑包,但我的仓库中不存在修订版 X。但是,我确信修订版 Y 的文件与修订版 X 相同。如何应用捆绑包?
背景:
我hgsubversion
用来与 SVN 存储库进行交互。
有一些我不想提交的更改。hgsubversion
不支持部分推送。
我曾经通过手动创建临时导出/补丁文件或手动恢复 .orig 文件(的结果hg revert
)来解决问题。
在这种情况下,我提交了我不想推送的更改,然后使用hg strip
,然后推送,然后尝试使用hg unbundle .hg/strip-backup/file
。
问题:hgsubversion
在提交后用它从 SVN 导入的新变更集替换原始变更集。结果:变更集 ID 更改。这是一个问题,因为现在hg unbundle
不再起作用,因为它依赖于父变更集的存在(但它已被剥离)。
具有讽刺意味的是,hgsubversion
它本身使用strip
并因此有一个备份文件,我可以用它来剥离新版本,添加剥离的旧版本,然后将我的版本与捆绑包一起应用,导出补丁,剥离两者,然后恢复 SVN 版本。但这听起来……非常痛苦和愚蠢。没有更好的办法吗?
(hg transplant
如果没有在 repo 中包含父级,似乎也不喜欢捆绑包)
svn - Mercurial + hgsubversion + svn:2 个存储库的故事......(或者,替换变更集?)
设想:
我有 2 个 Hg 存储库:一个跟踪 SVN 存储库,比如SVN-track,以及一个本地纯 Hg存储库,我从第一个将变更集拉入其中。
我将纯汞存储库中的变更集推送到SVN-track存储库中,然后我在SVN-track存储库中重新设置推送的变更集,直到历史记录完好无损,这样我就可以推送到 SVN 存储库。
在我推送到 SVN 后,hgsubversion 从 SVN 拉回变更集并剥离原始变更集。这就是它的追踪方式,我收集了(但是......为什么不保留原件并追踪它呢?)。
问题:
现在,如果你坚持了这么久,问题来了:我想将 SVN 变更集拉回纯 Hg存储库,但所有原始变更集都以另一个头上的欺骗(但具有不同的节点 ID)的形式返回。我可能能够重新设置我在纯汞存储库中添加的所有变更集,但是我会丢失历史记录,而且真的,这看起来工作量太大了。我也可以只使用具有重复内容的拉取 SVN 变更集并合并本地,但这使得返回到SVN 轨道的结果越来越难。
问题:
- 有没有更好的方法来执行这个我无法独立完成的工作流程?
- 如果不是,我如何替换 hgsubversion 从纯汞中的 SVN 拉回的原始变更集?
- 为什么必须 hgsubversion(大部分情况下是一个很棒的启用工具)拉回 SVN 变更集来跟踪它们,难道它不能只保留原始变更集并添加一行来
.hg/svn/rev_map
指示原始变更集 id 吗? - 如果是这样,这有什么诀窍?