Mercurial > hg
changeset 17938:fd903f89e42b
share: always set default path to work with subrepos (issue3518)
set the default path in any case because creating subrepo looks this up.
Subrepos are cloned, not shared.
author | simon@laptop-tosh |
---|---|
date | Sat, 27 Oct 2012 12:38:59 +0200 |
parents | 3cb032d50447 |
children | bc75638bea78 |
files | mercurial/hg.py tests/test-subrepo.t |
diffstat | 2 files changed, 16 insertions(+), 5 deletions(-) [+] |
line wrap: on
line diff
--- a/mercurial/hg.py Sat Nov 03 10:40:36 2012 +0100 +++ b/mercurial/hg.py Sat Oct 27 12:38:59 2012 +0200 @@ -171,11 +171,14 @@ r = repository(ui, root) default = srcrepo.ui.config('paths', 'default') - if default: - fp = r.opener("hgrc", "w", text=True) - fp.write("[paths]\n") - fp.write("default = %s\n" % default) - fp.close() + if not default: + # set default to source for being able to clone subrepos + default = os.path.abspath(util.urllocalpath(origsource)) + fp = r.opener("hgrc", "w", text=True) + fp.write("[paths]\n") + fp.write("default = %s\n" % default) + fp.close() + r.ui.setconfig('paths', 'default', default) if update: r.ui.status(_("updating working directory\n"))
--- a/tests/test-subrepo.t Sat Nov 03 10:40:36 2012 +0100 +++ b/tests/test-subrepo.t Sat Oct 27 12:38:59 2012 +0200 @@ -718,6 +718,14 @@ committing subrepository subrepo-2 $ hg st subrepo-2/file +Check that share works with subrepo + $ hg --config extensions.share= share . ../shared + updating working directory + cloning subrepo subrepo-2 from $TESTTMP/subrepo-status/subrepo-2 + 2 files updated, 0 files merged, 0 files removed, 0 files unresolved + $ test -f ../shared/subrepo-1/.hg/sharedpath + [1] + Check hg update --clean $ cd $TESTTMP/t $ rm -r t/t.orig