Mercurial 使用HG在两个不同的repo中同步文件
我尝试在两个不同的repo中同步文件时遇到问题。我想做的是: 我有两个回购协议A和B,它们共享一些公共文件,假设它们位于A/docs/common/和B/docs/common中。因此,当我在A中编写一些新文档时,我想将其更新为B,反之亦然。我该怎么办 我试着这样做:我在a中写一个.hgignore来忽略我不想同步到B的文件,然后尝试hg推送B的repo url。它不起作用 那我该怎么做呢Mercurial 使用HG在两个不同的repo中同步文件,mercurial,Mercurial,我尝试在两个不同的repo中同步文件时遇到问题。我想做的是: 我有两个回购协议A和B,它们共享一些公共文件,假设它们位于A/docs/common/和B/docs/common中。因此,当我在A中编写一些新文档时,我想将其更新为B,反之亦然。我该怎么办 我试着这样做:我在a中写一个.hgignore来忽略我不想同步到B的文件,然后尝试hg推送B的repo url。它不起作用 那我该怎么做呢 谢谢。如果我读得正确,并且您的存储库根目录位于docs目录之上(测试:hg root说/file/path
谢谢。如果我读得正确,并且您的存储库根目录位于docs目录之上(测试:
hg root
说/file/path
不是/file/path/A
),那么您当前的soln在两个repo中都忽略了文档之外的文件,将无法工作,因为mercurial会将完整的文件路径跟踪回根目录,toA/
和B/
是您的文件路径的一部分,因此它们在不同的回购中是不同的,使它们成为独立的回购
您可以做的一件事是将单据作为子回购协议,在a和B中都“包含”。然后您可以推/拉单据,单独的、不同的父回购协议将跟踪它们更新到的单据上的点
如果我误读了您的原始情况,A和B只是单独的克隆,文档是两个repo中路径相同的顶级目录(测试:hg root
is/file/path/A
和file/path/B
),那么您就得到了一个完全正常的mercurial情况,应该可以正常工作。只要确保您正在提交、推送(或拉送)和更新,您就会看到更改迁移到不同的位置