问题标签 [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.
svn - 使用 hgsubversion 将 SVN 转换为 Mercurial?
我想知道如何使用HgSubversion 工具将 SVN 存储库转换为 Mercurial 存储库。我尝试了该hg convert
命令(来自ConvertExtension),但我的存储库失败了。
任何想法如何让 hgsubversion 从 SVN 转换为 Mercurial 的语法?
svn - 导入现在格式良好但以前格式不正确的 Subversion 存储库
我想将源代码从Subversion 存储库导入 Mercurial。使用Hg Subversion我导入了它。问题是,SVN 存储库的布局是默认布局 - 带有trunk
目录、目录中的分支branches
等 - 今天,但以前不是这样。前段时间,项目的所有目录都是根存储库,因此 Hg Subversion 无法将branches
目录转换为 Mercurial 分支,新的 Mercurial 存储库仅包含目录branches
和trunk
.
我以“艰难的方式”将分支目录转换为 Mercurial 分支:
- 对于每个分支
b
hg mv branches/$b .
hg rm branches trunk
hg branch $b
hg commint -m "Creating branch $b"
但是,我想知道:有没有更好的方法呢?你将如何解决这个问题?
mercurial - 在做 qpush 时,我可以得到一个合并工具而不是 .rej 文件吗?
我最近开始使用 mq,这是一种很棒的工作方式。让我有点恼火的一件事是,当我在执行拉取和更新后 qpush 我的补丁时,如果存在冲突,我最终会得到 .rej 文件。
如果 Mercurial 可以只打开 TortoiseMerge 那就太好了,这样我就可以尽快解决冲突,而不必一个一个地打开 .rej 文件并以更手动、更慢的方式进行操作。
甚至文件中的 svn 风格的冲突标记也比 .rej 文件更容易使用。
有没有办法绕过这些 .rej 文件?
mercurial - hg起来不更改为命名分支
我的 mercurial 存储库是使用 subversion 存储库的迁移创建的。其他一切工作正常,除了有一个我无法更新到的命名分支......在 hg 更新后它仍然在 hg 摘要中将该分支显示为“默认”。
产生的问题是我无法关闭这个旧分支(因为 hg 仍然认为它是默认的)......文件正在发生变化,因为 hg up 1.6 显示
svn - 如何从 svn 整个修订版中删除视频文件
我的一位开发人员向 svn 存储库添加了一个视频文件并提交了代码。文件大小为 700MB。后来他从存储库中删除了该文件。问题是我必须每天进行 svn 备份,存储库大小非常庞大。如何从数据库中删除该特定修订日志。
提前致谢
svn - Hgsubversion:没有可用的兼容绑定
我必须将我的工作签入到一个主要的 svn 存储库中,所以我必须为 Mercurial 设置 hgsubversion 插件。没关系,我从 bitbucket 克隆了插件,添加了 [extensions] hgsubversion = /path/to/hgsubversion,但是当我想使用它时,出现以下错误:
我的工作站使用 SVN 1.6.1,昨天系统管理员为我安装了最新的 subverpty (0.9.0) 数据包。
我现在该怎么办?
svn - 重命名项目的 Git-svn/hgsubversion 克隆
我有一个 SVN 项目,我想克隆到 Git 或 Mercurial。克隆到两个 VCS 工作正常,除了一个主要问题 - 我总是只得到最后一个修订版,没有任何其他历史记录。
我可以清楚地看到问题的根源是SVN项目最近被重命名(重命名是最后一个修订版,我唯一设法得到的)。使用 SVN,我可以毫无问题地查看项目背后的所有历史。
最奇怪的是,当我使用 git-svn clone 时,我可以看到它经历了无数次修订,据说是导入它们,但最后我仍然只得到一个修订。与 Git 不同的是,向后工作的 Mercurial 只接受最后一次修订并完成克隆。
此外,重要的是要注意,最后一个 SVN 项目重命名/移动并不是唯一的。在此之前至少还有两个其他重命名,我确实需要完整的项目历史,就像我使用 SVN 看到的一样。
svn - 如何克隆 hgsubversion 存储库并保留 Subversion 修订信息?
我有什么似乎是一个独特的情况。我需要有一个中央 Mercurial 存储库,它可以从 Subversion 服务器拉取并且其克隆也能够从同一个 Subversion 服务器拉取更新。更新将与通过 Mercurial 提交的更改一起提交到 Mercurial 存储库。
现在,hgsubversion 一开始似乎运行良好,克隆了 Subversion 存储库,允许我通过 Mercurial 提交更改,并正确地从 Subversion 存储库中提取更新。但是,当我克隆 hgsubversion 存储库时,克隆会尝试重新拉取整个 Subversion 存储库,尽管它已经在存储库中。
有没有办法解决这个问题?有没有更好的方法来设置它?
作为参考,我当前的设置是存储在 Mercurial 存储库中的 Subversion 存储库。Mercurial 提交也提交 .svn 文件夹,因此任何克隆存储库的人都可以简单地在该文件夹上运行 SVN Cleanup,然后运行 SVN Update 以从 Subversion 服务器获取最新文件。然后他们运行 hg Commit,然后将文件推送到中央 Mercurial 存储库。这工作得很好,但我更愿意找到更好的解决方案。
注意:我不需要将更改推送回 Subversion 服务器。我只需要拉取更改。
hgsubversion - 使用 hgsubversion、svn 和 mercurial 创建新项目的正确方法是什么?
我已将我的开发切换到 mercurial,但我仍然必须使用 hgsubversion 与 subversion 服务器交谈。对于 subversion 中已经存在的所有项目,我已经在本地使用 hg 启动并运行。
我的问题是:创建一个最终将存在于颠覆中的新项目的最佳工作流程是什么?
我尝试使用 hg init 启动一个新项目,然后推动颠覆。但我只是迷路了,无法让它工作。我决定最好的工作流程是将项目直接创建到 subversion 中,完全不知道 mercurial 的存在,然后用 hgsubversion 克隆。但我想知道是否有更好的方法。
对于它的价值,我们在 subversion 中使用了经典的 trunk/tags/branches 目录结构。其他开发者还在直接使用svn。
mercurial - 没有 SSH 的共享主机上的 Mercurial
我试图让 mercurial 在没有 SSH 访问的共享主机上工作。
我查看了https://www.mercurial-scm.org/wiki/PublishingRepositories并看到了将我的存储库发布到网络的不同方法,但由于某些依赖关系而无法使用任何方法。
例如,我查看了 hgweb,它说
“首先,您需要有一个可以访问 mercurial 包的 Python 安装。通过运行 python 并键入以下内容来验证这一点:
进口汞”
我以前没有使用过python,因此不确定在哪里运行“import mercurial”命令。我猜测是通过我无权访问的 ssh。
还遇到了 SCM-Manager,该快速指南只讨论了下载源代码并将内容提取到您的服务器,SCM 管理器依赖于 java,也不知道如何让它在 web 上工作。
hgweb、SCM-Manager 和 RhodeCode 中的哪一个可以在没有 ssh 访问的情况下进行设置?