<feed xmlns='http://www.w3.org/2005/Atom'>
<title>user/sven/git.git/git-submodule.sh, branch v1.7.7.4</title>
<subtitle>Git
</subtitle>
<id>https://git.stealer.net/cgit.cgi/user/sven/git.git/atom?h=v1.7.7.4</id>
<link rel='self' href='https://git.stealer.net/cgit.cgi/user/sven/git.git/atom?h=v1.7.7.4'/>
<link rel='alternate' type='text/html' href='https://git.stealer.net/cgit.cgi/user/sven/git.git/'/>
<updated>2011-08-25T23:00:16Z</updated>
<entry>
<title>Merge branch 'js/i18n-scripts'</title>
<updated>2011-08-25T23:00:16Z</updated>
<author>
<name>Junio C Hamano</name>
<email>gitster@pobox.com</email>
</author>
<published>2011-08-25T23:00:16Z</published>
<link rel='alternate' type='text/html' href='https://git.stealer.net/cgit.cgi/user/sven/git.git/commit/?id=957450054cfbbe0d4ae8d33f7b74eace6e290f16'/>
<id>urn:sha1:957450054cfbbe0d4ae8d33f7b74eace6e290f16</id>
<content type='text'>
* js/i18n-scripts:
  submodule: take advantage of gettextln and eval_gettextln.
  stash: take advantage of eval_gettextln
  pull: take advantage of eval_gettextln
  git-am: take advantage of gettextln and eval_gettextln.
  gettext: add gettextln, eval_gettextln to encode common idiom
</content>
</entry>
<entry>
<title>Merge branch 'jl/submodule-update-quiet'</title>
<updated>2011-08-08T19:33:34Z</updated>
<author>
<name>Junio C Hamano</name>
<email>gitster@pobox.com</email>
</author>
<published>2011-08-08T19:33:34Z</published>
<link rel='alternate' type='text/html' href='https://git.stealer.net/cgit.cgi/user/sven/git.git/commit/?id=86c9cd8d256919b90c63167bac05e0802f52a244'/>
<id>urn:sha1:86c9cd8d256919b90c63167bac05e0802f52a244</id>
<content type='text'>
* jl/submodule-update-quiet:
  submodule: update and add must honor --quiet flag
</content>
</entry>
<entry>
<title>submodule: take advantage of gettextln and eval_gettextln.</title>
<updated>2011-08-08T19:05:27Z</updated>
<author>
<name>Jon Seymour</name>
<email>jon.seymour@gmail.com</email>
</author>
<published>2011-08-07T11:58:17Z</published>
<link rel='alternate' type='text/html' href='https://git.stealer.net/cgit.cgi/user/sven/git.git/commit/?id=6ff875c52ae48b8fe6a350df110e33aa2ba8afbc'/>
<id>urn:sha1:6ff875c52ae48b8fe6a350df110e33aa2ba8afbc</id>
<content type='text'>
Signed-off-by: Jon Seymour &lt;jon.seymour@gmail.com&gt;
Signed-off-by: Junio C Hamano &lt;gitster@pobox.com&gt;
</content>
</entry>
<entry>
<title>submodule: update and add must honor --quiet flag</title>
<updated>2011-07-28T19:48:26Z</updated>
<author>
<name>Jens Lehmann</name>
<email>Jens.Lehmann@web.de</email>
</author>
<published>2011-07-26T21:39:03Z</published>
<link rel='alternate' type='text/html' href='https://git.stealer.net/cgit.cgi/user/sven/git.git/commit/?id=7e60407f7a36bd1f7fd505f9aa9580a837fbb190'/>
<id>urn:sha1:7e60407f7a36bd1f7fd505f9aa9580a837fbb190</id>
<content type='text'>
When using the --quiet flag "git submodule update" and "git submodule add"
didn't behave as the documentation stated. They printed progress output
from the clone, even though they should only print error messages.

Fix that by passing the -q flag to git clone in module_clone() when the
GIT_QUIET variable is set. Two tests in t7400 have been modified to test
that behavior.

Reported-by: Daniel Holtmann-Rice &lt;flyingtabmow@gmail.com&gt;
Signed-off-by: Jens Lehmann &lt;Jens.Lehmann@web.de&gt;
Signed-off-by: Junio C Hamano &lt;gitster@pobox.com&gt;
</content>
</entry>
<entry>
<title>Merge branch 'jl/submodule-add-relurl-wo-upstream'</title>
<updated>2011-07-22T21:24:35Z</updated>
<author>
<name>Junio C Hamano</name>
<email>gitster@pobox.com</email>
</author>
<published>2011-07-22T21:24:35Z</published>
<link rel='alternate' type='text/html' href='https://git.stealer.net/cgit.cgi/user/sven/git.git/commit/?id=c56dce3b811400e73e7b68464cf229aa0edb9d8f'/>
<id>urn:sha1:c56dce3b811400e73e7b68464cf229aa0edb9d8f</id>
<content type='text'>
* jl/submodule-add-relurl-wo-upstream:
  submodule add: clean up duplicated code
  submodule add: allow relative repository path even when no url is set
  submodule add: test failure when url is not configured in superproject

Conflicts:
	git-submodule.sh
</content>
</entry>
<entry>
<title>Merge branch 'jc/submodule-sync-no-auto-vivify'</title>
<updated>2011-07-19T16:45:37Z</updated>
<author>
<name>Junio C Hamano</name>
<email>gitster@pobox.com</email>
</author>
<published>2011-07-19T16:45:37Z</published>
<link rel='alternate' type='text/html' href='https://git.stealer.net/cgit.cgi/user/sven/git.git/commit/?id=0591c0a5be7d58dfe2c69c8a81b2cebbb0337320'/>
<id>urn:sha1:0591c0a5be7d58dfe2c69c8a81b2cebbb0337320</id>
<content type='text'>
* jc/submodule-sync-no-auto-vivify:
  submodule add: always initialize .git/config entry
  submodule sync: do not auto-vivify uninteresting submodule

Conflicts:
	git-submodule.sh
</content>
</entry>
<entry>
<title>Merge branch 'bc/submodule-foreach-stdin-fix-1.7.4'</title>
<updated>2011-07-13T21:31:37Z</updated>
<author>
<name>Junio C Hamano</name>
<email>gitster@pobox.com</email>
</author>
<published>2011-07-13T21:31:37Z</published>
<link rel='alternate' type='text/html' href='https://git.stealer.net/cgit.cgi/user/sven/git.git/commit/?id=13ac90a47878b0bb26375a1a6901a629aa2b2def'/>
<id>urn:sha1:13ac90a47878b0bb26375a1a6901a629aa2b2def</id>
<content type='text'>
* bc/submodule-foreach-stdin-fix-1.7.4:
  git-submodule.sh: preserve stdin for the command spawned by foreach
  t/t7407: demonstrate that the command called by 'submodule foreach' loses stdin

Conflicts:
	git-submodule.sh
</content>
</entry>
<entry>
<title>Merge branch 'fg/submodule-keep-updating'</title>
<updated>2011-07-13T21:31:35Z</updated>
<author>
<name>Junio C Hamano</name>
<email>gitster@pobox.com</email>
</author>
<published>2011-07-13T21:31:35Z</published>
<link rel='alternate' type='text/html' href='https://git.stealer.net/cgit.cgi/user/sven/git.git/commit/?id=ff968f03e6951e8ee84cfb923f8905296286134a'/>
<id>urn:sha1:ff968f03e6951e8ee84cfb923f8905296286134a</id>
<content type='text'>
* fg/submodule-keep-updating:
  git-submodule.sh: clarify the "should we die now" logic
  submodule update: continue when a checkout fails
  git-sh-setup: add die_with_status

Conflicts:
	git-submodule.sh
</content>
</entry>
<entry>
<title>git-submodule.sh: preserve stdin for the command spawned by foreach</title>
<updated>2011-06-30T01:25:49Z</updated>
<author>
<name>Brandon Casey</name>
<email>drafnel@gmail.com</email>
</author>
<published>2011-06-30T00:34:58Z</published>
<link rel='alternate' type='text/html' href='https://git.stealer.net/cgit.cgi/user/sven/git.git/commit/?id=4dca1aa6502a46f8d7b6ecc8e7812c5c23ad0923'/>
<id>urn:sha1:4dca1aa6502a46f8d7b6ecc8e7812c5c23ad0923</id>
<content type='text'>
The user-supplied command spawned by 'submodule foreach' loses its
connection to the original standard input.  Instead, it is connected to the
output of a pipe within the git-submodule script.  The user-supplied
command supplied to 'submodule foreach' is spawned within a while loop
which is being piped into.  Due to the way shells implement piping output
to a while loop, a subshell is created with its standard input attached to
the output of the pipe.  This results in all of the commands executed
within the while loop to have their stdins modified in the same way,
including the user-supplied command.

This can cause a problem if the command requires reading from stdin or if
it changes its behavior based on whether stdin is a tty or not.  For
example, this problem was noticed when trying to execute the following:

   git submodule foreach git shortlog --since=two.weeks.ago

which printed a message about entering the first submodule and produced no
further output and exited with a status of zero.  In this case, shortlog
detected that it was not connected to a tty, and since no revision was
supplied as an argument, it attempted to read the list of revisions from
standard input.  Instead, it slurped up the list of submodules that was
being piped to the enclosing while loop and caused that loop to end early
without processing the remaining submodules.

Work around this behavior by saving the original standard input file
descriptor before the while loop, and restoring it when spawning the
user-supplied command.

This fixes the tests in t7407.

Signed-off-by: Brandon Casey &lt;drafnel@gmail.com&gt;
Signed-off-by: Junio C Hamano &lt;gitster@pobox.com&gt;
</content>
</entry>
<entry>
<title>Merge branch 'ab/i18n-scripts' into next</title>
<updated>2011-06-30T00:09:27Z</updated>
<author>
<name>Junio C Hamano</name>
<email>gitster@pobox.com</email>
</author>
<published>2011-06-30T00:09:27Z</published>
<link rel='alternate' type='text/html' href='https://git.stealer.net/cgit.cgi/user/sven/git.git/commit/?id=61f44720a9c360dd30053a558e58c8a41d6f3843'/>
<id>urn:sha1:61f44720a9c360dd30053a558e58c8a41d6f3843</id>
<content type='text'>
* ab/i18n-scripts: (48 commits)
  i18n: git-bisect bisect_next_check "You need to" message
  i18n: git-bisect [Y/n] messages
  i18n: git-bisect bisect_replay + $1 messages
  i18n: git-bisect bisect_reset + $1 messages
  i18n: git-bisect bisect_run + $@ messages
  i18n: git-bisect die + eval_gettext messages
  i18n: git-bisect die + gettext messages
  i18n: git-bisect echo + eval_gettext message
  i18n: git-bisect echo + gettext messages
  i18n: git-bisect gettext + echo message
  i18n: git-bisect add git-sh-i18n
  i18n: git-stash drop_stash say/die messages
  i18n: git-stash "unknown option" message
  i18n: git-stash die + eval_gettext $1 messages
  i18n: git-stash die + eval_gettext $* messages
  i18n: git-stash die + eval_gettext messages
  i18n: git-stash die + gettext messages
  i18n: git-stash say + gettext messages
  i18n: git-stash echo + gettext message
  i18n: git-stash add git-sh-i18n
  ...
</content>
</entry>
</feed>
