在Mercurial中删除一系列提交

5

我使用Mercurial提交了几次并推送了我的提交。没有其他人拉取它们。如何“丢弃”这些提交以将我的本地和远程仓库(包括仓库和工作目录)恢复到指定的提交? 谢谢。

2个回答

3

最快的方法是将本地仓库克隆到上一个“好”的版本,并且放弃旧的版本。

这仅适用于那些历史记录中的最后 n 个版本。

如果您想继续将内容推送到第三个“主”仓库,可以将旧仓库的 .hg / hgrc 文件的 [paths] 部分复制到新仓库。


1

你可以使用$hg revert将你的代码还原到之前的版本。

如果你在命令行中输入$hg help revert,你会得到一个可以还原的方式列表。

这些选项包括:

--all

--date

--rev

--rev 很可能是您想要的选项,因为它会将代码库恢复到特定版本。

如果您想要还原的版本与其他代码库相同或与当前版本相同,则最简单的方法可能是重新克隆该代码库。


hg revert仅还原工作目录中的更改。它不会影响存储库的历史记录,即使使用--rev也是如此。实际上,hg revert --rev REV与hg up -C REV是相同的。 - tghw
谢谢你提醒我,@tghw。我每天都会学到新东西 :) - Jamie Dixon

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接