【问题标题】:How to create a new tag in a Subversion repository, using hgsubversion?如何使用 hgsubversion 在 Subversion 存储库中创建新标签?
【发布时间】:2012-01-17 16:50:06
【问题描述】:

使用 TortoiseHghgsubversion 扩展(命令行也可以)。

克隆一个 SVN URL hg clone http://svn.example.org/hello-world,具有以下结构。

  • ..
  • 分支机构/
  • 标签/
  • 主干/

生成仅包含来自 /trunk 的文件的本地副本。

  • ..
  • .hg
  • .hgtags
  • 文件1
  • 文件2
  • 文件3

执行hg push 可以正常工作并更改/trunk 中的文件。但我需要在 /tags 中创建新的标签文件夹并在那里推送更改。

将标签添加到 Hg 中的修订并推送更改会导致“抱歉,找不到合并修订的 svn 父级。

有什么方法可以在克隆过程中保留 SVN 文件夹结构?

编辑:键入hg tags 确实会在命令行显示结构,但我需要推送到远程/tags 目录,默认推送会进入/trunk,不知道如何更改它的工作方式。

【问题讨论】:

  • 当您使用 hgsubversion 克隆 SVN 存储库时,它会将您的 SVN 主干/分支/标签结构转换为 Mercurial 等效结构。您将能够使用“hg 分支”查看您的分支,使用“hg 标签”查看您的标签。如果是这种情况,那么您唯一剩下的问题就是“为什么我不能使用 hgsubversion 推送标签?”不幸的是,我不知道答案,因为我从未尝试过。
  • 谢谢,当我输入 ``hg tags' 时你是正确的/trunk 默认情况下似乎正在执行。
  • 如果你在 Mercurial 中新建一个标签然后推送它,它不会在标签文件夹中创建一个新副本吗?那我猜这是hgsubversion的限制。我过去使用过 hgsubversion,它一开始就不是一种非常理想的设置。
  • 正确,创建新标签不会将任何内容推入/tags,只会推入/trunk,我会尝试显式推入/tags,看看是否有效。
  • hgsubversion 目前明确不支持。欢迎使用补丁,但预计会很棘手。

标签: svn mercurial tortoisehg hgsubversion


【解决方案1】:

您不能在 SVN 中从 Mercurial 创建标签

【讨论】:

    【解决方案2】:

    https://bitbucket.org/durin42/dotfiles/src/ae22ef7859eb0d2b8ba0edbacfae0e61a0e7bb51/.shell.d/50.hg_functions.sh?at=default#cl-88 是我在使用 hgsubversion 时通常创建 svn 分支的方式。修改它来创建标签应该不难。

    【讨论】:

      猜你喜欢
      • 2014-01-25
      • 1970-01-01
      • 2011-08-05
      • 2013-08-15
      • 1970-01-01
      • 1970-01-01
      • 2011-06-18
      • 2010-09-27
      • 1970-01-01
      相关资源
      最近更新 更多