Question

I want to use hierarchical structure with mercurial repositories.

Structure

_Main  
Main/sub1  
Main/sub2_  

.hgsub

sub1=sub1  
sub2=sub2  
[subpaths]  
somepath/Main/sub1=somepath/sub1  
somepath/Main/sub1=somepath/sub2

Then my colleagues will modify only sub1 repository, they will not have Main repository.
How can I determine changes in sub1 than have been done by my colleagues.
hg pull does not see these changes if they are not commited at Main repository.

Or maybe It is incorrect structure and I must give to my colleagues Main repository containing data of sub1?

Was it helpful?

Solution

You need to specifically pull and update each sub-repository to get their changes. For example:

> hg pull -u -R sub1
> hg pull -u -R sub2

This will then change your .hgsubstate file to indicate that Main should use the latest version of each sub-repository. You'll need to commit this change after doing the pull.

If you've made any changes to the sub-repositories yourself, you'll need to merge (or rebase) and commit those changes as normal before committing your Main repository.

Licensed under: CC-BY-SA with attribution
Not affiliated with StackOverflow
scroll top