<feed xmlns='http://www.w3.org/2005/Atom'>
<title>git/Documentation/git-pull.txt, branch v2.32.2</title>
<subtitle>Mirror of https://git.kernel.org/pub/scm/git/git.git/
</subtitle>
<id>https://git.shady.money/git/atom?h=v2.32.2</id>
<link rel='self' href='https://git.shady.money/git/atom?h=v2.32.2'/>
<link rel='alternate' type='text/html' href='https://git.shady.money/git/'/>
<updated>2020-04-29T23:15:27Z</updated>
<entry>
<title>Merge branch 'dl/merge-autostash'</title>
<updated>2020-04-29T23:15:27Z</updated>
<author>
<name>Junio C Hamano</name>
<email>gitster@pobox.com</email>
</author>
<published>2020-04-29T23:15:27Z</published>
<link rel='alternate' type='text/html' href='https://git.shady.money/git/commit/?id=bf10200871d9e7e1fc9f54aca9b2fe40bc4e4ac7'/>
<id>urn:sha1:bf10200871d9e7e1fc9f54aca9b2fe40bc4e4ac7</id>
<content type='text'>
"git merge" learns the "--autostash" option.

* dl/merge-autostash: (22 commits)
  pull: pass --autostash to merge
  t5520: make test_pull_autostash() accept expect_parent_num
  merge: teach --autostash option
  sequencer: implement apply_autostash_oid()
  sequencer: implement save_autostash()
  sequencer: unlink autostash in apply_autostash()
  sequencer: extract perform_autostash() from rebase
  rebase: generify create_autostash()
  rebase: extract create_autostash()
  reset: extract reset_head() from rebase
  rebase: generify reset_head()
  rebase: use apply_autostash() from sequencer.c
  sequencer: rename stash_sha1 to stash_oid
  sequencer: make apply_autostash() accept a path
  rebase: use read_oneliner()
  sequencer: make read_oneliner() extern
  sequencer: configurably warn on non-existent files
  sequencer: make read_oneliner() accept flags
  sequencer: make file exists check more efficient
  sequencer: stop leaking buf
  ...
</content>
</entry>
<entry>
<title>Merge branch 'dr/doc-recurse-submodules'</title>
<updated>2020-04-28T22:50:01Z</updated>
<author>
<name>Junio C Hamano</name>
<email>gitster@pobox.com</email>
</author>
<published>2020-04-28T22:50:01Z</published>
<link rel='alternate' type='text/html' href='https://git.shady.money/git/commit/?id=cc908dbc76adea39b2756c1091016e929c66689d'/>
<id>urn:sha1:cc908dbc76adea39b2756c1091016e929c66689d</id>
<content type='text'>
Documentation updates around the "--recurse-submodules" option.

* dr/doc-recurse-submodules:
  doc: --recurse-submodules mostly applies to active submodules
  doc: be more precise on (fetch|push).recurseSubmodules
  doc: explain how to deactivate submodule.recurse completely
  doc: document --recurse-submodules for reset and restore
  doc: list all commands affected by submodule.recurse
</content>
</entry>
<entry>
<title>pull: pass --autostash to merge</title>
<updated>2020-04-10T16:28:02Z</updated>
<author>
<name>Denton Liu</name>
<email>liu.denton@gmail.com</email>
</author>
<published>2020-04-07T14:28:09Z</published>
<link rel='alternate' type='text/html' href='https://git.shady.money/git/commit/?id=d9f15d37f1a545305988f6b2bb40de1fbf0049cf'/>
<id>urn:sha1:d9f15d37f1a545305988f6b2bb40de1fbf0049cf</id>
<content type='text'>
Before, `--autostash` only worked with `git pull --rebase`. However, in
the last patch, merge learned `--autostash` as well so there's no reason
why we should have this restriction anymore. Teach pull to pass
`--autostash` to merge, just like it did for rebase.

Signed-off-by: Denton Liu &lt;liu.denton@gmail.com&gt;
Signed-off-by: Junio C Hamano &lt;gitster@pobox.com&gt;
</content>
</entry>
<entry>
<title>doc: --recurse-submodules mostly applies to active submodules</title>
<updated>2020-04-06T20:42:43Z</updated>
<author>
<name>Damien Robert</name>
<email>damien.olivier.robert@gmail.com</email>
</author>
<published>2020-04-06T13:57:09Z</published>
<link rel='alternate' type='text/html' href='https://git.shady.money/git/commit/?id=acbfae32a31180d781357028af9aff8928672d4b'/>
<id>urn:sha1:acbfae32a31180d781357028af9aff8928672d4b</id>
<content type='text'>
The documentation refers to "initialized" or "populated" submodules,
to explain which submodules are affected by '--recurse-submodules', but
the real terminology here is 'active' submodules. Update the
documentation accordingly.

Some terminology:
- Active is defined in gitsubmodules(7), it only involves the
  configuration variables 'submodule.active', 'submodule.&lt;name&gt;.active'
  and 'submodule.&lt;name&gt;.url'. The function
  submodule.c::is_submodule_active checks that a submodule is active.
- Populated means that the submodule's working tree is present (and the
  gitfile correctly points to the submodule repository), i.e. either the
  superproject was cloned with ` --recurse-submodules`, or the user ran
  `git submodule update --init`, or `git submodule init [&lt;path&gt;]` and
  `git submodule update [&lt;path&gt;]` separately which populated the
  submodule working tree. This does not involve the 3 configuration
  variables above.
- Initialized (at least in the context of the man pages involved in this
  patch) means both "populated" and "active" as defined above, i.e. what
  `git submodule update --init` does.

The --recurse-submodules option mostly affects active submodules. An
exception is `git fetch` where the option affects populated submodules.
As a consequence, in `git pull --recurse-submodules` the fetch affects
populated submodules, but the resulting working tree update only affects
active submodules.

In the documentation of `git-pull`, let's distinguish between the
fetching part which affects populated submodules, and the updating of
worktrees, which only affects active submodules.

Signed-off-by: Damien Robert &lt;damien.olivier.robert+git@gmail.com&gt;
Helped-by: Philippe Blain &lt;levraiphilippeblain@gmail.com&gt;
Signed-off-by: Junio C Hamano &lt;gitster@pobox.com&gt;
</content>
</entry>
<entry>
<title>doc: be more precise on (fetch|push).recurseSubmodules</title>
<updated>2020-04-06T20:42:43Z</updated>
<author>
<name>Damien Robert</name>
<email>damien.olivier.robert@gmail.com</email>
</author>
<published>2020-04-06T13:57:08Z</published>
<link rel='alternate' type='text/html' href='https://git.shady.money/git/commit/?id=4da9e99e6eaab24ef86c44642b0692669adacfeb'/>
<id>urn:sha1:4da9e99e6eaab24ef86c44642b0692669adacfeb</id>
<content type='text'>
The default value also depends on the value of submodule.recurse.
Use this opportunity to correct some grammar mistakes in
Documentation/config/fetch.txt signaled by Robert P. J. Day.

Also mention `fetch.recurseSubmodules` in fetch-options.txt. In
git-push.txt, `push.recurseSubmodules` is implicitly mentioned (by
explaining how to disable it), so no need to add it there.

Lastly add a link to `git-fetch` in `git-pull.txt` to explain the
meaning of `--recurse-submodules` there.

Signed-off-by: Damien Robert &lt;damien.olivier.robert+git@gmail.com&gt;
Signed-off-by: Junio C Hamano &lt;gitster@pobox.com&gt;
</content>
</entry>
<entry>
<title>pull doc: correct outdated description of an example</title>
<updated>2020-04-05T22:00:04Z</updated>
<author>
<name>Philippe Blain</name>
<email>levraiphilippeblain@gmail.com</email>
</author>
<published>2020-04-05T15:50:19Z</published>
<link rel='alternate' type='text/html' href='https://git.shady.money/git/commit/?id=a44088435c37ccf91920ab18076db888cff1fc76'/>
<id>urn:sha1:a44088435c37ccf91920ab18076db888cff1fc76</id>
<content type='text'>
Since f269048754 (fetch: opportunistically update tracking refs,
2013-05-11), the underlying `git fetch` in `git pull &lt;remote&gt; &lt;branch&gt;`
updates the configured remote-tracking branch for &lt;branch&gt;.

However, an example in the 'Examples' section of the `git pull`
documentation still states that this is not the case.

Correct the description of this example.

Signed-off-by: Philippe Blain &lt;levraiphilippeblain@gmail.com&gt;
Signed-off-by: Junio C Hamano &lt;gitster@pobox.com&gt;
</content>
</entry>
<entry>
<title>doc: typo: s/can not/cannot/ and s/is does/does/</title>
<updated>2019-08-05T17:05:24Z</updated>
<author>
<name>Mark Rushakoff</name>
<email>mark.rushakoff@gmail.com</email>
</author>
<published>2019-08-03T05:33:51Z</published>
<link rel='alternate' type='text/html' href='https://git.shady.money/git/commit/?id=6d16922798bbb87ddbc1ff1d23ba8ea65f4f6d3b'/>
<id>urn:sha1:6d16922798bbb87ddbc1ff1d23ba8ea65f4f6d3b</id>
<content type='text'>
"Can not" suggests one has the option to not do something, whereas
"cannot" more strongly suggests something is disallowed or impossible.

Noticed "can not", mistakenly used instead of "cannot" in git help
glossary, then ran git grep 'can not' and found many other instances.
Only files in the Documentation folder were modified.

'Can not' also occurs in some source code comments and some test
assertion messages, and there is an error message and translation "can
not move directory into itself" which I may fix and submit separately
from the documentation change.

Also noticed and fixed "is does" in git help fetch, but there are no
other occurrences of that typo according to git grep.

Signed-off-by: Mark Rushakoff &lt;mark.rushakoff@gmail.com&gt;
Signed-off-by: Junio C Hamano &lt;gitster@pobox.com&gt;
</content>
</entry>
<entry>
<title>docs: say that `--rebase=preserve` is deprecated</title>
<updated>2019-05-28T20:22:34Z</updated>
<author>
<name>Johannes Schindelin</name>
<email>johannes.schindelin@gmx.de</email>
</author>
<published>2019-05-28T12:42:15Z</published>
<link rel='alternate' type='text/html' href='https://git.shady.money/git/commit/?id=7401ab92f8c9c9f7c81763d6f7da8a63a258eff2'/>
<id>urn:sha1:7401ab92f8c9c9f7c81763d6f7da8a63a258eff2</id>
<content type='text'>
As of Git v2.22.0, the `--preserve-merges` backend of `git rebase` will
be officially deprecated in favor of the `--rebase-merges` backend.
Consequently, `git pull --rebase=preserve` will also be deprected. State
this explicitly.

Signed-off-by: Johannes Schindelin &lt;johannes.schindelin@gmx.de&gt;
Signed-off-by: Junio C Hamano &lt;gitster@pobox.com&gt;
</content>
</entry>
<entry>
<title>Use proper syntax for replaceables in command docs</title>
<updated>2018-05-25T08:16:47Z</updated>
<author>
<name>Robert P. J. Day</name>
<email>rpjday@crashcourse.ca</email>
</author>
<published>2018-05-24T20:11:39Z</published>
<link rel='alternate' type='text/html' href='https://git.shady.money/git/commit/?id=de613050efec781e8380a0267879a25b2d489513'/>
<id>urn:sha1:de613050efec781e8380a0267879a25b2d489513</id>
<content type='text'>
The standard for command documentation synopses appears to be:

  [...] means optional
  &lt;...&gt; means replaceable
  [&lt;...&gt;] means both optional and replaceable

So fix a number of doc pages that use incorrect variations of the
above.

Signed-off-by: Robert P. J. Day &lt;rpjday@crashcourse.ca&gt;
Signed-off-by: Junio C Hamano &lt;gitster@pobox.com&gt;
</content>
</entry>
<entry>
<title>pull: accept --rebase=merges to recreate the branch topology</title>
<updated>2018-04-26T03:28:43Z</updated>
<author>
<name>Johannes Schindelin</name>
<email>johannes.schindelin@gmx.de</email>
</author>
<published>2018-04-25T12:29:38Z</published>
<link rel='alternate' type='text/html' href='https://git.shady.money/git/commit/?id=1131ec98189e993dcc48043c4f8e8b0128f52055'/>
<id>urn:sha1:1131ec98189e993dcc48043c4f8e8b0128f52055</id>
<content type='text'>
Similar to the `preserve` mode simply passing the `--preserve-merges`
option to the `rebase` command, the `merges` mode simply passes the
`--rebase-merges` option.

This will allow users to conveniently rebase non-trivial commit
topologies when pulling new commits, without flattening them.

Signed-off-by: Johannes Schindelin &lt;johannes.schindelin@gmx.de&gt;
Signed-off-by: Junio C Hamano &lt;gitster@pobox.com&gt;
</content>
</entry>
</feed>
