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
Mercurial 如何使用hg在独立计算机上更新源代码?_Mercurial - Fatal编程技术网

Mercurial 如何使用hg在独立计算机上更新源代码?

Mercurial 如何使用hg在独立计算机上更新源代码?,mercurial,Mercurial,我在一台独立计算机上使用mercurial。我还对这台计算机上的源代码做了一些小改动。现在我想用一个新的版本来更新这段代码,我可以把它作为gziped tar文件放在CD或U盘上带到这台计算机上。如何以最佳方式进行此更新,并保持对独立源的更改 更新:我忘了提到U盘上的文件不是来自mercurial数据库,它们只是一堆来自Performce控制的源代码树的源文件。我们只在独立计算机上安装mercurial。在远程计算机上(第一次): 在后续运行中: cd {path_to_repository}

我在一台独立计算机上使用mercurial。我还对这台计算机上的源代码做了一些小改动。现在我想用一个新的版本来更新这段代码,我可以把它作为gziped tar文件放在CD或U盘上带到这台计算机上。如何以最佳方式进行此更新,并保持对独立源的更改

更新:我忘了提到U盘上的文件不是来自mercurial数据库,它们只是一堆来自Performce控制的源代码树的源文件。我们只在独立计算机上安装mercurial。

在远程计算机上(第一次):

在后续运行中:

cd {path_to_repository}
hg push {path_on_usb_stick}
然后在本地计算机上:

cd {path_to_repository}
hg commit
hg pull {path_on_usb_stick}
hg up
在某些情况下,hg可能会警告您多个头,这意味着您需要通过运行
hg merge
来解决冲突


要将您的更改从本地计算机转移到repo服务器,您需要反向操作。

为什么不将Mercurial二进制文件和.hg repo直接放在闪存驱动器上呢。然后,您可以在家中推/拉到/从中拉出,并在工作时复制到它的顶部。

我尝试过这个方法,但无法创建包含新文件的存储库,因为它们与独立计算机上的存储库无关。我终于明白,我还必须在原始计算机上拥有一个hg存储库。因此,我将创建它,并尝试记住在perfoce更新文件时管理它,然后在将文件传输到独立计算机时遵循您的方法。不一定。您只需将文件从无汞机器复制到U盘上,然后在U盘上执行
hg addremove
hg commit
,最后
hg将U盘的repo拉入本地repo和
hg up
即可。不过,这不会保留已删除的文件,但除此之外,它应该能够很好地管理更改。
cd {path_to_repository}
hg commit
hg pull {path_on_usb_stick}
hg up