Mercurial:获取早期版本文件的非版本副本

时间:2009-12-08 09:03:09

标签: version-control mercurial

如何从mercurial存储库中获取旧版本文件的非版本副本?

编辑:我在本地副本中更改了somefile.png(二进制文件)。我正在寻找一个命令,它允许我获得somefile.png的早期版本,以便我可以在提交更改之前将其与我的修改后的副本(使用图像查看器)进行比较。我怎么能这样做?

4 个答案:

答案 0 :(得分:4)

您正在寻找的命令是cat

hg cat [OPTION] ... FILE ...

输出当前或给定的文件修订版

hg cat -o outputfile.png -r revision somefile.png

然后,您可以将somefile.png与outputfile.png进行比较

答案 1 :(得分:1)

如果您的意思是:what is the equivalent of svn export?,那就是:

hg archive ..\project.export

另见TipsAndTrick section

  

制作源树的干净副本,例如CVS导出

hg clone source export
rm -rf export/.hg
  

或使用存档命令

cd source
hg archive ../export
  

同样的事情,但对于标记版本:

hg clone --noupdate source export-tagged
cd export-tagged
hg update mytag
rm -rf .hg
  

或使用存档命令

cd source
hg archive -r mytag ../export-tagged

答案 2 :(得分:0)

hgtip上有一条提示可能会让你大部分时间都在那里:

Merging binary files

虽然它专门讨论了合并,但是这些差异应该足够通用,可以在合并之外进行...

答案 3 :(得分:-2)

我不确定我理解这个问题。您可以使用操作系统的普通文件复制工具将其复制到其他位置。