--- a/.hgsigs Fri Nov 30 21:39:01 2012 +0900
+++ b/.hgsigs Mon Dec 03 19:37:36 2012 -0200
@@ -61,3 +61,4 @@
b3f0f9a39c4e1d0250048cd803ab03542d6f140a 0 iD8DBQBQamltywK+sNU5EO8RAlsqAJ4qF/m6aFu4mJCOKTiAP5RvZFK02ACfawYShUZO6OXEFfveU0aAxDR0M1k=
d118a4f4fd16d9b558ec3f3e87bfee772861d2b7 0 iD8DBQBQgPV5ywK+sNU5EO8RArylAJ0abcx5NlDjyv3ZDWpAfRIHyRsJtQCgn4TMuEayqgxzrvadQZHdTEU2g38=
195ad823b5d58c68903a6153a25e3fb4ed25239d 0 iD8DBQBQkuT9ywK+sNU5EO8RAhB4AKCeerItoK2Jipm2cVf4euGofAa/WACeJj3TVd4pFILpb+ogj7ebweFLJi0=
+0c10cf8191469e7c3c8844922e17e71a176cb7cb 0 iD8DBQBQvQWoywK+sNU5EO8RAnq3AJoCn98u4geFx5YaQaeh99gFhCd7bQCgjoBwBSUyOvGd0yBy60E3Vv3VZhM=
--- a/.hgtags Fri Nov 30 21:39:01 2012 +0900
+++ b/.hgtags Mon Dec 03 19:37:36 2012 -0200
@@ -74,3 +74,4 @@
b3f0f9a39c4e1d0250048cd803ab03542d6f140a 2.3.2
d118a4f4fd16d9b558ec3f3e87bfee772861d2b7 2.4-rc
195ad823b5d58c68903a6153a25e3fb4ed25239d 2.4
+0c10cf8191469e7c3c8844922e17e71a176cb7cb 2.4.1
--- a/hgext/rebase.py Fri Nov 30 21:39:01 2012 +0900
+++ b/hgext/rebase.py Mon Dec 03 19:37:36 2012 -0200
@@ -706,6 +706,10 @@
commands.postincoming = origpostincoming
revspostpull = len(repo)
if revspostpull > revsprepull:
+ # --rev option from pull conflict with rebase own --rev
+ # dropping it
+ if 'rev' in opts:
+ del opts['rev']
rebase(ui, repo, **opts)
branch = repo[None].branch()
dest = repo[branch].rev()
--- a/mercurial/cmdutil.py Fri Nov 30 21:39:01 2012 +0900
+++ b/mercurial/cmdutil.py Mon Dec 03 19:37:36 2012 -0200
@@ -627,7 +627,7 @@
# subpath. The best we can do is to ignore it.
tempnode2 = None
submatch = matchmod.narrowmatcher(subpath, match)
- sub.diff(diffopts, tempnode2, submatch, changes=changes,
+ sub.diff(ui, diffopts, tempnode2, submatch, changes=changes,
stat=stat, fp=fp, prefix=prefix)
class changeset_printer(object):
--- a/mercurial/subrepo.py Fri Nov 30 21:39:01 2012 +0900
+++ b/mercurial/subrepo.py Mon Dec 03 19:37:36 2012 -0200
@@ -330,7 +330,7 @@
def status(self, rev2, **opts):
return [], [], [], [], [], [], []
- def diff(self, diffopts, node2, match, prefix, **opts):
+ def diff(self, ui, diffopts, node2, match, prefix, **opts):
pass
def outgoing(self, ui, dest, opts):
@@ -437,14 +437,14 @@
% (inst, subrelpath(self)))
return [], [], [], [], [], [], []
- def diff(self, diffopts, node2, match, prefix, **opts):
+ def diff(self, ui, diffopts, node2, match, prefix, **opts):
try:
node1 = node.bin(self._state[1])
# We currently expect node2 to come from substate and be
# in hex format
if node2 is not None:
node2 = node.bin(node2)
- cmdutil.diffordiffstat(self._repo.ui, self._repo, diffopts,
+ cmdutil.diffordiffstat(ui, self._repo, diffopts,
node1, node2, match,
prefix=os.path.join(prefix, self._path),
listsubrepos=True, **opts)
--- a/tests/test-diff-color.t Fri Nov 30 21:39:01 2012 +0900
+++ b/tests/test-diff-color.t Mon Dec 03 19:37:36 2012 -0200
@@ -125,6 +125,38 @@
c
\x1b[0;33mrecord this change to 'a'? [Ynesfdaq?]\x1b[0m (esc)
+ $ hg qpop -a
+ popping patch
+ patch queue now empty
+
#endif
+issue3712: test colorization of subrepo diff
+
+ $ hg init sub
+ $ echo b > sub/b
+ $ hg -R sub commit -Am 'create sub'
+ adding b
+ $ echo 'sub = sub' > .hgsub
+ $ hg add .hgsub
+ $ hg commit -m 'add subrepo sub'
+ $ echo aa >> a
+ $ echo bb >> sub/b
+
+ $ hg diff --color=always -S
+ \x1b[0;1mdiff --git a/a b/a\x1b[0m (esc)
+ \x1b[0;31;1m--- a/a\x1b[0m (esc)
+ \x1b[0;32;1m+++ b/a\x1b[0m (esc)
+ \x1b[0;35m@@ -7,3 +7,4 @@\x1b[0m (esc)
+ a
+ c
+ c
+ \x1b[0;32m+aa\x1b[0m (esc)
+ \x1b[0;1mdiff --git a/sub/b b/sub/b\x1b[0m (esc)
+ \x1b[0;31;1m--- a/sub/b\x1b[0m (esc)
+ \x1b[0;32;1m+++ b/sub/b\x1b[0m (esc)
+ \x1b[0;35m@@ -1,1 +1,2 @@\x1b[0m (esc)
+ b
+ \x1b[0;32m+bb\x1b[0m (esc)
+
$ cd ..
--- a/tests/test-rebase-pull.t Fri Nov 30 21:39:01 2012 +0900
+++ b/tests/test-rebase-pull.t Mon Dec 03 19:37:36 2012 -0200
@@ -114,3 +114,55 @@
|
$ cd ..
+
+pull --rebase works when a specific revision is pulled (issue3619)
+
+ $ cd a
+ $ hg tglog
+ @ 2: 'R1'
+ |
+ o 1: 'C2'
+ |
+ o 0: 'C1'
+
+ $ echo R2 > R2
+ $ hg ci -Am R2
+ adding R2
+ $ echo R3 > R3
+ $ hg ci -Am R3
+ adding R3
+ $ cd ../c
+ $ hg tglog
+ o 2: 'R1'
+ |
+ @ 1: 'C2'
+ |
+ o 0: 'C1'
+
+ $ echo L1 > L1
+ $ hg ci -Am L1
+ adding L1
+ created new head
+ $ hg pull --rev tip --rebase
+ pulling from $TESTTMP/a
+ searching for changes
+ adding changesets
+ adding manifests
+ adding file changes
+ added 2 changesets with 2 changes to 2 files
+ saved backup bundle to $TESTTMP/c/.hg/strip-backup/ff8d69a621f9-backup.hg (glob)
+ $ hg tglog
+ @ 5: 'L1'
+ |
+ o 4: 'R3'
+ |
+ o 3: 'R2'
+ |
+ o 2: 'R1'
+ |
+ o 1: 'C2'
+ |
+ o 0: 'C1'
+
+
+