<feed xmlns='http://www.w3.org/2005/Atom'>
<title>git/builtin/pull.c, branch v2.12.2</title>
<subtitle>Mirror of https://git.kernel.org/pub/scm/git/git.git/
</subtitle>
<id>https://git.shady.money/git/atom?h=v2.12.2</id>
<link rel='self' href='https://git.shady.money/git/atom?h=v2.12.2'/>
<link rel='alternate' type='text/html' href='https://git.shady.money/git/'/>
<updated>2016-12-19T22:45:38Z</updated>
<entry>
<title>Merge branch 'jc/pull-rebase-ff'</title>
<updated>2016-12-19T22:45:38Z</updated>
<author>
<name>Junio C Hamano</name>
<email>gitster@pobox.com</email>
</author>
<published>2016-12-19T22:45:38Z</published>
<link rel='alternate' type='text/html' href='https://git.shady.money/git/commit/?id=2fb11ec6c175e8a380d91daccc3bbf9fc5bbea8b'/>
<id>urn:sha1:2fb11ec6c175e8a380d91daccc3bbf9fc5bbea8b</id>
<content type='text'>
"git pull --rebase", when there is no new commits on our side since
we forked from the upstream, should be able to fast-forward without
invoking "git rebase", but it didn't.

* jc/pull-rebase-ff:
  pull: fast-forward "pull --rebase=true"
</content>
</entry>
<entry>
<title>pull: fast-forward "pull --rebase=true"</title>
<updated>2016-11-29T22:40:16Z</updated>
<author>
<name>Junio C Hamano</name>
<email>gitster@pobox.com</email>
</author>
<published>2016-06-29T17:22:31Z</published>
<link rel='alternate' type='text/html' href='https://git.shady.money/git/commit/?id=33b842a1e9bf28bcffe953ad9dcdbb0561336314'/>
<id>urn:sha1:33b842a1e9bf28bcffe953ad9dcdbb0561336314</id>
<content type='text'>
"git pull --rebase" always runs "git rebase" after fetching the
commit to serve as the new base, even when the new base is a
descendant of the current HEAD, i.e. we haven't done any work.

In such a case, we can instead fast-forward to the new base without
invoking the rebase process.

Signed-off-by: Junio C Hamano &lt;gitster@pobox.com&gt;
</content>
</entry>
<entry>
<title>wt-status: teach has_{unstaged,uncommitted}_changes() about submodules</title>
<updated>2016-10-07T16:29:31Z</updated>
<author>
<name>Johannes Schindelin</name>
<email>johannes.schindelin@gmx.de</email>
</author>
<published>2016-10-07T16:09:00Z</published>
<link rel='alternate' type='text/html' href='https://git.shady.money/git/commit/?id=d8cc92ab13e438f225770843868ae5a58c6bb357'/>
<id>urn:sha1:d8cc92ab13e438f225770843868ae5a58c6bb357</id>
<content type='text'>
Sometimes we are *actually* interested in those changes... For
example when an interactive rebase wants to continue with a staged
submodule update.

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>wt-status: make the require_clean_work_tree() function reusable</title>
<updated>2016-10-07T16:29:31Z</updated>
<author>
<name>Johannes Schindelin</name>
<email>johannes.schindelin@gmx.de</email>
</author>
<published>2016-10-07T16:08:38Z</published>
<link rel='alternate' type='text/html' href='https://git.shady.money/git/commit/?id=fd84986f467b2556e0675d1df00f83b3a323cf2e'/>
<id>urn:sha1:fd84986f467b2556e0675d1df00f83b3a323cf2e</id>
<content type='text'>
The function used by "git pull" to stop the user when the working
tree has changes is useful in other places.

Let's move it into a more prominent (and into an actually reusable)
spot: wt-status.[ch].

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>pull: make code more similar to the shell script again</title>
<updated>2016-10-07T16:29:31Z</updated>
<author>
<name>Johannes Schindelin</name>
<email>johannes.schindelin@gmx.de</email>
</author>
<published>2016-10-07T16:08:34Z</published>
<link rel='alternate' type='text/html' href='https://git.shady.money/git/commit/?id=ea63b393ec76484690733d6f589c9e67fedbaa78'/>
<id>urn:sha1:ea63b393ec76484690733d6f589c9e67fedbaa78</id>
<content type='text'>
When converting the pull command to a builtin, the
require_clean_work_tree() function was renamed and the pull-specific
parts hard-coded.

This makes it impossible to reuse the code, so let's modify the code to
make it more similar to the original shell script again.

Note: when the hint "Please commit or stash them" was introduced first,
Git did not have the convention of continuing error messages in lower
case, but now we do have that convention, therefore we reintroduce this
hint down-cased, obeying said convention.

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>pull: drop confusing prefix parameter of die_on_unclean_work_tree()</title>
<updated>2016-10-07T16:29:27Z</updated>
<author>
<name>Johannes Schindelin</name>
<email>johannes.schindelin@gmx.de</email>
</author>
<published>2016-10-07T16:08:30Z</published>
<link rel='alternate' type='text/html' href='https://git.shady.money/git/commit/?id=338bc8d81897d19f4795114e4e6a59d6ca44d1db'/>
<id>urn:sha1:338bc8d81897d19f4795114e4e6a59d6ca44d1db</id>
<content type='text'>
In cmd_pull(), when verifying that there are no changes preventing a
rebasing pull, we diligently pass the prefix parameter to the
die_on_unclean_work_tree() function which in turn diligently passes it
to the has_unstaged_changes() and has_uncommitted_changes() functions.

The casual reader might now be curious (as this developer was) whether
that means that calling `git pull --rebase` in a subdirectory will
ignore unstaged changes in other parts of the working directory. And be
puzzled that `git pull --rebase` (correctly) complains about those
changes outside of the current directory.

The puzzle is easily resolved: while we take pains to pass around the
prefix and even pass it to init_revisions(), the fact that no paths are
passed to init_revisions() ensures that the prefix is simply ignored.

That, combined with the fact that we will *always* want a *full* working
directory check before running a rebasing pull, is reason enough to
simply do away with the actual prefix parameter and to pass NULL
instead, as if we were running this from the top-level working directory
anyway.

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>Merge branch 'va/i18n-even-more'</title>
<updated>2016-07-13T18:24:10Z</updated>
<author>
<name>Junio C Hamano</name>
<email>gitster@pobox.com</email>
</author>
<published>2016-07-13T18:24:10Z</published>
<link rel='alternate' type='text/html' href='https://git.shady.money/git/commit/?id=2703572b3a005848ed058d2775fb933a17ac3656'/>
<id>urn:sha1:2703572b3a005848ed058d2775fb933a17ac3656</id>
<content type='text'>
More markings of messages for i18n, with updates to various tests
to pass GETTEXT_POISON tests.

One patch from the original submission dropped due to conflicts
with jk/upload-pack-hook, which is still in flux.

* va/i18n-even-more: (38 commits)
  t5541: become resilient to GETTEXT_POISON
  i18n: branch: mark comment when editing branch description for translation
  i18n: unmark die messages for translation
  i18n: submodule: escape shell variables inside eval_gettext
  i18n: submodule: join strings marked for translation
  i18n: init-db: join message pieces
  i18n: remote: allow translations to reorder message
  i18n: remote: mark URL fallback text for translation
  i18n: standardise messages
  i18n: sequencer: add period to error message
  i18n: merge: change command option help to lowercase
  i18n: merge: mark messages for translation
  i18n: notes: mark options for translation
  i18n: notes: mark strings for translation
  i18n: transport-helper.c: change N_() call to _()
  i18n: bisect: mark strings for translation
  t5523: use test_i18ngrep for negation
  t4153: fix negated test_i18ngrep call
  t9003: become resilient to GETTEXT_POISON
  tests: unpack-trees: update to use test_i18n* functions
  ...
</content>
</entry>
<entry>
<title>i18n: advice: internationalize message for conflicts</title>
<updated>2016-06-17T22:45:48Z</updated>
<author>
<name>Vasco Almeida</name>
<email>vascomalmeida@sapo.pt</email>
</author>
<published>2016-06-17T20:20:52Z</published>
<link rel='alternate' type='text/html' href='https://git.shady.money/git/commit/?id=8785c425320e9288d13f0218e591a8aa5c57479c'/>
<id>urn:sha1:8785c425320e9288d13f0218e591a8aa5c57479c</id>
<content type='text'>
Mark message for translation telling the user she has conflicts to
resolve. Expose each particular use case, in order to enable translating
entire sentences which would facilitate translating into other
languages.

Change "Pull" to lowercase to match other instances. Update test
t5520-pull.sh, that relied on the old error message, to use the new one.

Although we loose in source code conciseness, we would gain better
translations because translators can 1) translate the entire sentence,
including those terms concerning Git (committing, merging, etc) 2) have
leeway to adapt to their languages.

Signed-off-by: Vasco Almeida &lt;vascomalmeida@sapo.pt&gt;
Signed-off-by: Junio C Hamano &lt;gitster@pobox.com&gt;
</content>
</entry>
<entry>
<title>pull: warn on --verify-signatures with --rebase</title>
<updated>2016-05-20T22:01:00Z</updated>
<author>
<name>Alexander Hirsch</name>
<email>1zeeky@gmail.com</email>
</author>
<published>2016-05-20T21:00:54Z</published>
<link rel='alternate' type='text/html' href='https://git.shady.money/git/commit/?id=c57e501c51d6b76ce30658b94ee4a5dc6ac27f3e'/>
<id>urn:sha1:c57e501c51d6b76ce30658b94ee4a5dc6ac27f3e</id>
<content type='text'>
git-pull silently ignores the --verify-signatures option when
running --rebase, potentially leaving users in the belief that
the rebase operation would check for valid GPG signatures.

Implementing --verify-signatures for git-rebase was talked about,
but doubts for a valid workflow rose up.  Since you usually merge
other's branches into your branch you might have an interest that
their side has a valid GPG signature.

Rebasing, on the other hand, is to rebuild your branch on top of
other's work, in order to push the result back, and it is too late
to reject their work even if you find their commits lack acceptable
signature.

Let's warn users that the --verify-signatures option is ignored
during "pull --rebase"; users do not wonder what would happen if
their commits lack acceptable signature that way.

Signed-off-by: Alexander Hirsch &lt;1zeeky@gmail.com&gt;
Signed-off-by: Junio C Hamano &lt;gitster@pobox.com&gt;
</content>
</entry>
<entry>
<title>Merge branch 'va/i18n-misc-updates'</title>
<updated>2016-05-17T21:38:23Z</updated>
<author>
<name>Junio C Hamano</name>
<email>gitster@pobox.com</email>
</author>
<published>2016-05-17T21:38:22Z</published>
<link rel='alternate' type='text/html' href='https://git.shady.money/git/commit/?id=e5e7a9115dc9373f18a6470139cf05d4a541fb16'/>
<id>urn:sha1:e5e7a9115dc9373f18a6470139cf05d4a541fb16</id>
<content type='text'>
Mark several messages for translation.

* va/i18n-misc-updates:
  i18n: unpack-trees: avoid substituting only a verb in sentences
  i18n: builtin/pull.c: split strings marked for translation
  i18n: builtin/pull.c: mark placeholders for translation
  i18n: git-parse-remote.sh: mark strings for translation
  i18n: branch: move comment for translators
  i18n: branch: unmark string for translation
  i18n: builtin/rm.c: remove a comma ',' from string
  i18n: unpack-trees: mark strings for translation
  i18n: builtin/branch.c: mark option for translation
  i18n: index-pack: use plural string instead of normal one
</content>
</entry>
</feed>
