<feed xmlns='http://www.w3.org/2005/Atom'>
<title>git/Documentation/git-submodule.txt, branch v2.10.2</title>
<subtitle>Mirror of https://git.kernel.org/pub/scm/git/git.git/
</subtitle>
<id>https://git.shady.money/git/atom?h=v2.10.2</id>
<link rel='self' href='https://git.shady.money/git/atom?h=v2.10.2'/>
<link rel='alternate' type='text/html' href='https://git.shady.money/git/'/>
<updated>2016-10-19T21:58:53Z</updated>
<entry>
<title>submodules doc: update documentation for "." used for submodule branches</title>
<updated>2016-10-19T21:58:53Z</updated>
<author>
<name>Brandon Williams</name>
<email>bmwill@google.com</email>
</author>
<published>2016-10-19T20:42:54Z</published>
<link rel='alternate' type='text/html' href='https://git.shady.money/git/commit/?id=15ef78008aa6cdd42dbef3b1bd00ae64e4ab731a'/>
<id>urn:sha1:15ef78008aa6cdd42dbef3b1bd00ae64e4ab731a</id>
<content type='text'>
4d7bc52b17 ("submodule update: allow '.' for branch value",
2016-08-03) adopted from Gerrit a feature to set "." as a special
value of "submodule.&lt;name&gt;.branch" in .gitmodules file to indicate
that the tracking branch in the submodule should be the same as the
current branch in the superproject.

Update the documentation to describe this.

Signed-off-by: Brandon Williams &lt;bmwill@google.com&gt;
Signed-off-by: Junio C Hamano &lt;gitster@pobox.com&gt;
</content>
</entry>
<entry>
<title>submodule update: learn `--[no-]recommend-shallow` option</title>
<updated>2016-05-27T17:40:46Z</updated>
<author>
<name>Stefan Beller</name>
<email>sbeller@google.com</email>
</author>
<published>2016-05-26T21:59:43Z</published>
<link rel='alternate' type='text/html' href='https://git.shady.money/git/commit/?id=abed000acafd8aa86e02bcbb65fc1a8e4f06b8a0'/>
<id>urn:sha1:abed000acafd8aa86e02bcbb65fc1a8e4f06b8a0</id>
<content type='text'>
Sometimes the history of a submodule is not considered important by
the projects upstream. To make it easier for downstream users, allow
a boolean field 'submodule.&lt;name&gt;.shallow' in .gitmodules, which can
be used to recommend whether upstream considers the history important.

This field is honored in the initial clone by default, it can be
ignored by giving the `--no-recommend-shallow` option.

Signed-off-by: Stefan Beller &lt;sbeller@google.com&gt;
Signed-off-by: Junio C Hamano &lt;gitster@pobox.com&gt;
</content>
</entry>
<entry>
<title>Merge branch 'sb/submodule-deinit-all'</title>
<updated>2016-05-17T21:38:20Z</updated>
<author>
<name>Junio C Hamano</name>
<email>gitster@pobox.com</email>
</author>
<published>2016-05-17T21:38:19Z</published>
<link rel='alternate' type='text/html' href='https://git.shady.money/git/commit/?id=21b2e60400754732bd509f393b3368f9fa530602'/>
<id>urn:sha1:21b2e60400754732bd509f393b3368f9fa530602</id>
<content type='text'>
Correct faulty recommendation to use "git submodule deinit ." when
de-initialising all submodules, which would result in a strange
error message in a pathological corner case.

* sb/submodule-deinit-all:
  submodule deinit: require '--all' instead of '.' for all submodules
</content>
</entry>
<entry>
<title>submodule deinit: require '--all' instead of '.' for all submodules</title>
<updated>2016-05-05T21:51:26Z</updated>
<author>
<name>Stefan Beller</name>
<email>sbeller@google.com</email>
</author>
<published>2016-05-05T19:52:32Z</published>
<link rel='alternate' type='text/html' href='https://git.shady.money/git/commit/?id=f6a527997743b79d6986a16313a7488cfc53d123'/>
<id>urn:sha1:f6a527997743b79d6986a16313a7488cfc53d123</id>
<content type='text'>
The discussion in [1] pointed out that '.' is a faulty suggestion as
there is a corner case where it fails:

&gt; "submodule deinit ." may have "worked" in the sense that you would
&gt; have at least one path in your tree and avoided this "nothing
&gt; matches" most of the time.  It would have still failed with the
&gt; exactly same error if run in an empty repository, i.e.
&gt;
&gt;        $ E=/var/tmp/x/empty &amp;&amp; rm -fr "$E" &amp;&amp; mkdir -p "$E" &amp;&amp; cd "$E"
&gt;        $ git init
&gt;        $ rungit v2.6.6 submodule deinit .
&gt;        error: pathspec '.' did not match any file(s) known to git.
&gt;        Did you forget to 'git add'?
&gt;        $ &gt;file &amp;&amp; git add file
&gt;        $ rungit v2.6.6 submodule deinit .
&gt;        $ echo $?
&gt;        0

So instead of a pathspec add the '--all' option to deinit all submodules
and add a test to check for the corner case of an empty repository.

The code only needs to learn about the '--all' option and doesn't
require further changes as `git submodule--helper list "$@"` will list
all submodules when "$@" is empty.

[1] http://news.gmane.org/gmane.comp.version-control.git/289535

Helped-by: Junio C Hamano &lt;gitster@pobox.com&gt;
Signed-off-by: Stefan Beller &lt;sbeller@google.com&gt;
Reviewed-by: Jonathan Nieder &lt;jrnieder@gmail.com&gt;
Signed-off-by: Junio C Hamano &lt;gitster@pobox.com&gt;
</content>
</entry>
<entry>
<title>submodule update: expose parallelism to the user</title>
<updated>2016-03-01T19:57:20Z</updated>
<author>
<name>Stefan Beller</name>
<email>sbeller@google.com</email>
</author>
<published>2016-03-01T02:07:19Z</published>
<link rel='alternate' type='text/html' href='https://git.shady.money/git/commit/?id=2335b870fa7942d9ca9e73e96e35171fda741376'/>
<id>urn:sha1:2335b870fa7942d9ca9e73e96e35171fda741376</id>
<content type='text'>
Expose possible parallelism either via the "--jobs" CLI parameter or
the "submodule.fetchJobs" setting.

By having the variable initialized to -1, we make sure 0 can be passed
into the parallel processing machine, which will then pick as many parallel
workers as there are CPUs.

Reviewed-by: Jonathan Nieder &lt;jrnieder@gmail.com&gt;
Signed-off-by: Stefan Beller &lt;sbeller@google.com&gt;
Signed-off-by: Junio C Hamano &lt;gitster@pobox.com&gt;
</content>
</entry>
<entry>
<title>document submodule sync --recursive</title>
<updated>2015-12-04T21:08:05Z</updated>
<author>
<name>Stefan Beller</name>
<email>sbeller@google.com</email>
</author>
<published>2015-12-03T20:41:02Z</published>
<link rel='alternate' type='text/html' href='https://git.shady.money/git/commit/?id=e7220c40b175561a276285e95f3fe8c7a86204f2'/>
<id>urn:sha1:e7220c40b175561a276285e95f3fe8c7a86204f2</id>
<content type='text'>
The git-submodule(1) is inconsistent. In the synopsis, it says:

       git submodule [--quiet] sync [--recursive] [--] [&lt;path&gt;...]

The description of the sync does not mention --recursive, and the
description of --recursive says that it is only available for foreach,
update and status.

The option was introduced (82f49f294c, Teach --recursive to submodule
sync, 2012-10-26) a while ago, so let's document it, too.

Reported-by: Per Cederqvist &lt;cederp@opera.com&gt;
Signed-off-by: Stefan Beller &lt;sbeller@google.com&gt;
Signed-off-by: Junio C Hamano &lt;gitster@pobox.com&gt;
</content>
</entry>
<entry>
<title>submodule doc: reorder introductory paragraphs</title>
<updated>2015-05-28T22:18:11Z</updated>
<author>
<name>Stefan Beller</name>
<email>sbeller@google.com</email>
</author>
<published>2015-05-27T19:48:01Z</published>
<link rel='alternate' type='text/html' href='https://git.shady.money/git/commit/?id=ec48a76306091abfa7831a97f36949ab82432ddc'/>
<id>urn:sha1:ec48a76306091abfa7831a97f36949ab82432ddc</id>
<content type='text'>
It's better to start the man page with a description of what
submodules actually are, instead of saying what they are not.

Reorder the paragraphs such that

 - the first short paragraph introduces the submodule concept,
 - the second paragraph highlights the usage of the submodule command,
 - the third paragraph giving background information, and finally
 - the fourth paragraph discusing alternatives such as subtrees and
   remotes, which we don't want to be confused with.

This ordering deepens the knowledge on submodules with each paragraph.
First the basic questions like "How/what" will be answered, while the
underlying concepts will be taught at a later time.

Making sure it is not confused with subtrees and remotes is not really
enhancing knowledge of submodules itself, but rather painting the big
picture of git concepts, so you could also argue to have it as the second
paragraph. Personally I think this may confuse readers, specially
newcomers though.

Additionally to reordering the paragraphs, they have been slightly
reworded.

Signed-off-by: Stefan Beller &lt;sbeller@google.com&gt;
Signed-off-by: Junio C Hamano &lt;gitster@pobox.com&gt;
</content>
</entry>
<entry>
<title>submodule: improve documentation of update subcommand</title>
<updated>2015-03-02T22:59:55Z</updated>
<author>
<name>Michal Sojka</name>
<email>sojkam1@fel.cvut.cz</email>
</author>
<published>2015-03-02T22:57:58Z</published>
<link rel='alternate' type='text/html' href='https://git.shady.money/git/commit/?id=5c31acfbe22cebdf1a04723b58cdb358e377632a'/>
<id>urn:sha1:5c31acfbe22cebdf1a04723b58cdb358e377632a</id>
<content type='text'>
The documentation of 'git submodule update' has several problems:

1) It mentions that value 'none' of submodule.$name.update can be
   overridden by --checkout, but other combinations of configuration
   values and command line options are not mentioned.

2) The documentation of submodule.$name.update is scattered across three
   places, which is confusing.

3) The documentation of submodule.$name.update in gitmodules.txt is
   incorrect, because the code always uses the value from .git/config
   and never from .gitmodules.

4) Documentation of --force was incomplete, because it is only effective
   in case of checkout method of update.

Fix all these problems by documenting submodule.*.update in
git-submodule.txt and make everybody else refer to it.

Helped-by: Junio C Hamano &lt;gitster@pobox.com&gt;
Helped-by: Jens Lehmann &lt;Jens.Lehmann@web.de&gt;
Signed-off-by: Michal Sojka &lt;sojkam1@fel.cvut.cz&gt;
Signed-off-by: Junio C Hamano &lt;gitster@pobox.com&gt;
</content>
</entry>
<entry>
<title>Merge branch 'mc/doc-submodule-sync-recurse' into maint</title>
<updated>2014-07-10T18:08:31Z</updated>
<author>
<name>Junio C Hamano</name>
<email>gitster@pobox.com</email>
</author>
<published>2014-07-10T18:08:31Z</published>
<link rel='alternate' type='text/html' href='https://git.shady.money/git/commit/?id=3fea9ebdffaf37e5495e364bd868d8bda06350fd'/>
<id>urn:sha1:3fea9ebdffaf37e5495e364bd868d8bda06350fd</id>
<content type='text'>
* mc/doc-submodule-sync-recurse:
  submodule: document "sync --recursive"
</content>
</entry>
<entry>
<title>submodule: document "sync --recursive"</title>
<updated>2014-06-13T22:00:17Z</updated>
<author>
<name>Matthew Chen</name>
<email>charlesmchen@gmail.com</email>
</author>
<published>2014-06-13T17:40:50Z</published>
<link rel='alternate' type='text/html' href='https://git.shady.money/git/commit/?id=9393ae79c9b4d3deade544be9ce057b7fa290490'/>
<id>urn:sha1:9393ae79c9b4d3deade544be9ce057b7fa290490</id>
<content type='text'>
The "git submodule sync" command supports the --recursive flag, but
the documentation does not mention this.  That flag is useful, for
example when a remote is changed in a submodule of a submodule.

Signed-off-by: Matthew Chen &lt;charlesmchen@gmail.com&gt;
Signed-off-by: Junio C Hamano &lt;gitster@pobox.com&gt;
</content>
</entry>
</feed>
