Version control 在不更改工作副本父级的情况下检索文件的旧版本
如何在Mercurial中获取文件早期版本的副本,而不使其成为工作区中文件的新默认工作副本 我找到了Version control 在不更改工作副本父级的情况下检索文件的旧版本,version-control,mercurial,dvcs,revert,Version Control,Mercurial,Dvcs,Revert,如何在Mercurial中获取文件早期版本的副本,而不使其成为工作区中文件的新默认工作副本 我找到了hg revert命令,我认为它可以实现我想要的功能,但我不确定 我需要一份代码早期版本的副本,以便在几分钟内使用。但我不想干扰目前运行良好的版本 所以我打算这样做: hg revert -r 10 myfile.pls 有没有办法将它输出到不同的目录,这样我的当前工作版本的文件就不会受到干扰?比如: hg revert -r 10 myfile.pls > c:\temp\dump\my
hg revert
命令,我认为它可以实现我想要的功能,但我不确定
我需要一份代码早期版本的副本,以便在几分钟内使用。但我不想干扰目前运行良好的版本
所以我打算这样做:
hg revert -r 10 myfile.pls
有没有办法将它输出到不同的目录,这样我的当前工作版本的文件就不会受到干扰?比如:
hg revert -r 10 myfile.pls > c:\temp\dump\myfile_revision10.pls
您使用的命令如下:
hg cat -r 10 myfile.pls > C:\temp\dump\myfile_revision10.pls
了解一些Unix有助于使用Mercurial命令。可能cat
应该有一个内置的别名print
或类似的东西。可以用来检索文件的任何版本:
$ hg cat -r 10 myfile.pls
您可以使用以下命令将输出重定向到另一个文件:
$ hg cat -r 10 myfile.pls > old.pls
或者使用--output
标志。如果需要对多个文件执行此操作,请查看,它可以对整个项目执行此操作,例如
$ hg archive -r 10 ../revision-10
这将创建文件夹revision-10
,其中包含存储库在版本10中的快照
但是,大多数情况下,您应该只使用签出早期版本。“更新”是用于在引入新更改后使工作副本更新的命令,但如果需要,该命令也可用于使工作副本过期。所以
$ hg update -r 10 # go back
(look at your files, test, etc...)
$ hg update # go back to the tip
感谢您对更新
的有用而简洁的描述!在使用update命令之前,我有点紧张(我想科里奥拉努斯也是这样)。