Mercurial > hg-stable
changeset 13901:d3890ead75be stable
merge with crew
author | Matt Mackall <mpm@selenic.com> |
---|---|
date | Wed, 06 Apr 2011 15:13:49 -0500 |
parents | a3403d5b0af3 (diff) 0a0988bd4818 (current diff) |
children | fab10e7cacd6 5065e120636d |
files | |
diffstat | 3 files changed, 53 insertions(+), 1 deletions(-) [+] |
line wrap: on
line diff
--- a/hgext/rebase.py Tue Apr 05 10:04:19 2011 +0200 +++ b/hgext/rebase.py Wed Apr 06 15:13:49 2011 -0500 @@ -270,7 +270,7 @@ if k in m1: if v in m1 or v in m2: repo.dirstate.copy(v, k) - if v in m2 and v not in m1: + if v in m2 and v not in m1 and k in m2: repo.dirstate.remove(v) def concludenode(repo, rev, p1, p2, commitmsg=None, extrafn=None):
--- a/mercurial/url.py Tue Apr 05 10:04:19 2011 +0200 +++ b/mercurial/url.py Wed Apr 06 15:13:49 2011 -0500 @@ -25,6 +25,9 @@ def hidepassword(url): '''hide user credential in a url string''' + if url.startswith("ssh://"): + # urllib doesn't know about ssh urls + return re.sub(r'(ssh://[^/]+):[^/]+(@.*)', r'\1:***\2', url) scheme, netloc, path, params, query, fragment = urlparse.urlparse(url) netloc = re.sub('([^:]*):([^@]*)@(.*)', r'\1:***@\3', netloc) return _urlunparse(scheme, netloc, path, params, query, fragment, url)
--- a/tests/test-rebase-rename.t Tue Apr 05 10:04:19 2011 +0200 +++ b/tests/test-rebase-rename.t Wed Apr 06 15:13:49 2011 -0500 @@ -119,3 +119,52 @@ copy from a copy to a-copied + $ cd .. + + +Test rebase across repeating renames: + + $ hg init repo + + $ cd repo + + $ echo testing > file1.txt + $ hg add file1.txt + $ hg ci -m "Adding file1" + + $ hg rename file1.txt file2.txt + $ hg ci -m "Rename file1 to file2" + + $ echo Unrelated change > unrelated.txt + $ hg add unrelated.txt + $ hg ci -m "Unrelated change" + + $ hg rename file2.txt file1.txt + $ hg ci -m "Rename file2 back to file1" + + $ hg update -r -2 + 1 files updated, 0 files merged, 1 files removed, 0 files unresolved + + $ echo Another unrelated change >> unrelated.txt + $ hg ci -m "Another unrelated change" + created new head + + $ hg tglog + @ 4: 'Another unrelated change' + | + | o 3: 'Rename file2 back to file1' + |/ + o 2: 'Unrelated change' + | + o 1: 'Rename file1 to file2' + | + o 0: 'Adding file1' + + + $ hg rebase -s 4 -d 3 + saved backup bundle to $TESTTMP/repo/.hg/strip-backup/*-backup.hg (glob) + + $ hg diff --stat -c . + unrelated.txt | 1 + + 1 files changed, 1 insertions(+), 0 deletions(-) +