Warning: file_get_contents(/data/phpspider/zhask/data//catemap/0/mercurial/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/0/iphone/45.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Version control 在不更改工作副本父级的情况下检索文件的旧版本_Version Control_Mercurial_Dvcs_Revert - Fatal编程技术网

Version control 在不更改工作副本父级的情况下检索文件的旧版本

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

如何在Mercurial中获取文件早期版本的副本,而不使其成为工作区中文件的新默认工作副本

我找到了
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命令之前,我有点紧张(我想科里奥拉努斯也是这样)。