Mercurial > hg
changeset 9955:7bcbdefcd93a
merge with stable
author | Benoit Boissinot <benoit.boissinot@ens-lyon.org> |
---|---|
date | Mon, 30 Nov 2009 16:53:05 +0100 |
parents | 0347eb4d2236 (current diff) d6a307719ccb (diff) |
children | ad44e1f8b3f3 |
files | mercurial/localrepo.py |
diffstat | 3 files changed, 33 insertions(+), 6 deletions(-) [+] |
line wrap: on
line diff
--- a/mercurial/localrepo.py Sat Nov 28 23:58:03 2009 +0100 +++ b/mercurial/localrepo.py Mon Nov 30 16:53:05 2009 +0100 @@ -1526,7 +1526,7 @@ if not rheads: # new branch requires --force self.ui.warn(_("abort: push creates new" " remote branch '%s'!\n") % - self[updatelb[0]].branch()) + self[lheads[0]].branch()) else: self.ui.warn(_("abort: push creates new remote heads!\n")) @@ -1569,11 +1569,7 @@ else: rheads = [] lheads = localhds[lh] - updatelb = [upd for upd in update - if self[upd].branch() == lh] - if not updatelb: - continue - if not checkbranch(lheads, rheads, updatelb): + if not checkbranch(lheads, rheads, update): return None, 0 else: if not checkbranch(heads, remote_heads, update):
--- a/tests/test-push-warn Sat Nov 28 23:58:03 2009 +0100 +++ b/tests/test-push-warn Mon Nov 30 16:53:05 2009 +0100 @@ -140,4 +140,21 @@ hg -R i push h echo +echo % check prepush logic with merged branches +hg init j +hg -R j branch a +echo init > j/foo +hg -R j ci -Am init +hg clone j k +echo a1 > j/foo +hg -R j ci -m a1 +hg -R k branch b +echo b > k/foo +hg -R k ci -m b +hg -R k up 0 +hg -R k merge b +hg -R k ci -m merge +hg -R k push -r a j +echo + exit 0
--- a/tests/test-push-warn.out Sat Nov 28 23:58:03 2009 +0100 +++ b/tests/test-push-warn.out Mon Nov 30 16:53:05 2009 +0100 @@ -140,3 +140,17 @@ abort: push creates new remote heads! (did you forget to merge? use push -f to force) +% check prepush logic with merged branches +marked working directory as branch a +adding foo +updating to branch a +1 files updated, 0 files merged, 0 files removed, 0 files unresolved +marked working directory as branch b +1 files updated, 0 files merged, 0 files removed, 0 files unresolved +1 files updated, 0 files merged, 0 files removed, 0 files unresolved +(branch merge, don't forget to commit) +pushing to j +searching for changes +abort: push creates new remote heads! +(did you forget to merge? use push -f to force) +