【发布时间】:2012-03-03 17:10:13
【问题描述】:
我正在将一个 Mercurial 存储库导入另一个存储库,并保留历史记录。默认分支上有几个带有书签的头像,我希望这些带有书签的头像仍然在新的合并存储库中添加书签。据我所知,有两种方法可以做到这一点,
- 单独拉出每个书签
- 拉动整个东西并手动重新创建书签。
【问题讨论】:
标签: mercurial
我正在将一个 Mercurial 存储库导入另一个存储库,并保留历史记录。默认分支上有几个带有书签的头像,我希望这些带有书签的头像仍然在新的合并存储库中添加书签。据我所知,有两种方法可以做到这一点,
【问题讨论】:
标签: mercurial
扩展上一个答案,这里是如何使用 awk 推送所有分支以及 bash 中 hg 书签的输出:
hg bookmarks | awk '{if (NF == 3) print $2; else print $1;}' | xargs -n 1 hg push -f -B
【讨论】:
hg bookmarks | awk '{if (NF == 3) print "-B " $2; else print "-B " $1;}' | xargs hg push
Unix:
hg push $(hg bookmarks -T "-B {bookmark} ")
窗户:
for /f "delims=" %A in ('hg bookmarks -T "-B {bookmark} "') do @hg push %A
PowerShell:
hg bookmarks -T "{bookmark}\n" | %{ Write-Host === Bookmark $_ === ; hg push -B $_ }
【讨论】:
-B 参数可以在 push 中使用任意次数。您可以从hg bookmarks获得完整的回购书签列表
【讨论】:
hg bookmarks 的输出上运行正则表达式替换以获取列表。