2010-04-01 99 views
6

我有两台电脑:我公司的台式机和家中的便携式电脑。使用hg在我的两台电脑之间同步我的项目

现在我想使用hg来使用“USB可移动磁盘”在它们之间同步项目。

所以我不知道如何实现它?

在我的桌面上的亲是:D:\ work \ mypro。

我用下面的命令来初始化它:

hg init 

然后我连接到其卷标为“H”的U盘,并获得了克隆使用:

cd H: 
hg init 
hg clone D:\work\mypro mypro-usb 

,并在我使用的便携式电脑:

cd D: 
hg clone H:\mypro-usb mypro-home 

但是我不知道如何修改某些文件(删除或添加和修改)在mypro-home中,如何使mypro-usb同步更改,还需要mypro在我的桌面上同步。

怎么办?

---------------后,我从richj得到答案,以下是添加----------------

to richj:

感谢您的回复。

以下是我的做法:Pro-Com是我的桌面中的项目(初始化为存储库),Pro-USB是我USB中的存储库,Pro-Home是我家用计算机中的存储库。

当我做在Pro-Com的一些变化,我用下面的命令:

hg add 
hg push Pro-USB 

然后我改变目录到Pro-USB,使用:

hg update 
hg push Pro-Home 

在我家我运行的电脑:

hg update 
(make some edition) 
hg commit 
hg push Pro-USB 

然后USB中的存储库和我家里的电脑一样,我可以把它推到我的电脑上桌面。

在我看来,仓库之间的操作可以通过“hg push”和“hg pull”来完成,其他命令如“hg update”“hg import”只是在工作副本和仓库之间工作。

我的理解正确吗?

回答

8

从你的工作仓库更改推回你的USB驱动器:

hg push 

为了让您的USB驱动器的最新变化:

hg pull 
hg update 

这两个命令可以这样组合在一起:

hg pull -u 

如果您想查看哪些更改集可用于推送或p使用方法如下:

hg outgoing 
hg incoming 

。您对本地文件系统所做的任何更改必须使用以下内容提交到存储库:

hg commit 

之前,它们可以被推或拉。

+0

存储库之间的操作可以通过“hg push”和“hg pull”完成,其他命令如“hg update”“hg import”只是在工作副本和其存储库之间工作。 我的理解正确吗? – hguser 2010-04-06 09:53:04

+0

你的理解是正确的。 – richj 2010-04-06 12:42:40