在Mercurial中,是否可以从给定的提交中导出文件?

时间:2010-12-08 23:35:41

标签: version-control mercurial

假设我有一个我编码的文件main.c。我已经在提交#100但不幸的是我发现我需要恢复我在提交#50中编码的一些函数。我知道我可以使用资源库资源管理器来查看此文件上不同版本之间的差异,但我希望看到的是文件本身,就像它在提交#50上一样(没有所有那些+和-s) - 只是当时的文件)。

这可能吗?

我不想仅仅为了获得这些功能而提交#50,然后必须回到#100。

由于

2 个答案:

答案 0 :(得分:6)

hg cat将导出该文件。要提交此修订,您需要hg up。例如,使用

hg cat -rC F

检索文件F的修订版C.

答案 1 :(得分:1)

执行以下操作

hg update -r 50 that_file
cp that_file /to/some/other/location/
hg update -r 100 ---> to get back the new file

现在你有两个文件

  1. 一个在修订版100的回购
  2. 另一个位于/ to / some / other / location / at revision 50