Comments
Patch
@@ -1648,13 +1648,17 @@ class gitsubrepo(abstractsubrepo):
if match.anypats():
return #No support for include/exclude yet
+ output = ""
if match.always():
- ui.write(self._gitcommand(cmd))
+ output += self._gitcommand(cmd) + '\n'
elif match.files():
for f in match.files():
- ui.write(self._gitcommand(cmd + [f]))
+ output += self._gitcommand(cmd + [f]) + '\n'
elif match(gitprefix): #Subrepo is matched
- ui.write(self._gitcommand(cmd))
+ output += self._gitcommand(cmd) + '\n'
+
+ if output.strip():
+ ui.write(output)
@annotatesubrepoerror
def revert(self, substate, *pats, **opts):
@@ -112,7 +112,7 @@ clone root, make local change
@@ -1,2 +1,3 @@
g
gg
- +ggg (no-eol)
+ +ggg
$ hg commit --subrepos -m ggg
committing subrepository s
$ hg debugsub
@@ -695,7 +695,7 @@ check differences made by most recent ch
+woopwoop
+
+foo
- +bar (no-eol)
+ +bar
$ hg commit --subrepos -m "Added foobar"
committing subrepository s
@@ -717,7 +717,7 @@ check differences made by most recent ch
+woopwoop
+
+foo
- +bar (no-eol)
+ +bar
check output when only diffing the subrepository
$ hg diff -c . --subrepos s
@@ -730,7 +730,7 @@ check output when only diffing the subre
+woopwoop
+
+foo
- +bar (no-eol)
+ +bar
check output when diffing something else
$ hg diff -c . --subrepos .hgsubstate --nodates
@@ -760,7 +760,7 @@ add new changes, including whitespace
--- /dev/null
+++ b/s/barfoo
@@ -0,0 +1 @@
- +foo (no-eol)
+ +foo
$ hg diff --subrepos s/foobar
diff --git a/s/foobar b/s/foobar
index 8a5a5e2..bd5812a 100644
@@ -771,7 +771,7 @@ add new changes, including whitespace
+woop woop
foo
- bar (no-eol)
+ bar
execute a diffstat
the output contains a regex, because git 1.7.10 and 1.7.11
@@ -779,7 +779,7 @@ the output contains a regex, because git
$ hg diff --subrepos --stat
\s*barfoo |\s*1 + (re)
\s*foobar |\s*2 +- (re)
- 2 files changed, 2 insertions\(\+\), 1 deletions?\(-\) \(no-eol\) (re)
+ 2 files changed, 2 insertions\(\+\), 1 deletions?\(-\) (re)
ensure adding include/exclude ignores the subrepo
$ hg diff --subrepos -I s/foobar