<feed xmlns='http://www.w3.org/2005/Atom'>
<title>git/git-pull.sh, branch v2.4.9</title>
<subtitle>Mirror of https://git.kernel.org/pub/scm/git/git.git/
</subtitle>
<id>https://git.shady.money/git/atom?h=v2.4.9</id>
<link rel='self' href='https://git.shady.money/git/atom?h=v2.4.9'/>
<link rel='alternate' type='text/html' href='https://git.shady.money/git/'/>
<updated>2015-06-25T18:02:12Z</updated>
<entry>
<title>Merge branch 'pt/pull-tags-error-diag' into maint</title>
<updated>2015-06-25T18:02:12Z</updated>
<author>
<name>Junio C Hamano</name>
<email>gitster@pobox.com</email>
</author>
<published>2015-06-25T18:02:12Z</published>
<link rel='alternate' type='text/html' href='https://git.shady.money/git/commit/?id=6356003c80c744eefdd49d76bb587184d900228f'/>
<id>urn:sha1:6356003c80c744eefdd49d76bb587184d900228f</id>
<content type='text'>
There was a dead code that used to handle "git pull --tags" and
show special-cased error message, which was made irrelevant when
the semantics of the option changed back in Git 1.9 days.

* pt/pull-tags-error-diag:
  pull: remove --tags error in no merge candidates case
</content>
</entry>
<entry>
<title>Merge branch 'pt/pull-log-n' into maint</title>
<updated>2015-06-05T19:00:24Z</updated>
<author>
<name>Junio C Hamano</name>
<email>gitster@pobox.com</email>
</author>
<published>2015-06-05T19:00:24Z</published>
<link rel='alternate' type='text/html' href='https://git.shady.money/git/commit/?id=4cb9fe35c015c576177d6a0ce096c935876544fc'/>
<id>urn:sha1:4cb9fe35c015c576177d6a0ce096c935876544fc</id>
<content type='text'>
"git pull --log" and "git pull --no-log" worked as expected, but
"git pull --log=20" did not.

* pt/pull-log-n:
  pull: handle --log=&lt;n&gt;
</content>
</entry>
<entry>
<title>pull: parse pull.ff as a bool or string</title>
<updated>2015-05-18T18:22:38Z</updated>
<author>
<name>Paul Tan</name>
<email>pyokagan@gmail.com</email>
</author>
<published>2015-05-18T13:45:42Z</published>
<link rel='alternate' type='text/html' href='https://git.shady.money/git/commit/?id=db9bb280ed7df7858a2de5d1d0334114dd837be0'/>
<id>urn:sha1:db9bb280ed7df7858a2de5d1d0334114dd837be0</id>
<content type='text'>
Since b814da8 (pull: add pull.ff configuration, 2014-01-15) git-pull
supported setting --(no-)ff via the pull.ff configuration value.
However, as it only matches the string values of "true" and "false", it
does not support other boolean aliases such as "on", "off", "1", "0".
This is inconsistent with the merge.ff setting, which supports these
aliases.

Fix this by using the bool_or_string_config function to retrieve the
value of pull.ff.

Signed-off-by: Paul Tan &lt;pyokagan@gmail.com&gt;
Reviewed-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 pull.ff=true override merge.ff</title>
<updated>2015-05-18T18:22:27Z</updated>
<author>
<name>Paul Tan</name>
<email>pyokagan@gmail.com</email>
</author>
<published>2015-05-18T13:45:41Z</published>
<link rel='alternate' type='text/html' href='https://git.shady.money/git/commit/?id=eb8dc05c3d364174a6b694e2850ffd6cfe32c6d3'/>
<id>urn:sha1:eb8dc05c3d364174a6b694e2850ffd6cfe32c6d3</id>
<content type='text'>
Since b814da8 (pull: add pull.ff configuration, 2014-01-15), running
git-pull with the configuration pull.ff=false or pull.ff=only is
equivalent to passing --no-ff and --ff-only to git-merge. However, if
pull.ff=true, no switch is passed to git-merge. This leads to the
confusing behavior where pull.ff=false or pull.ff=only is able to
override merge.ff, while pull.ff=true is unable to.

Fix this by adding the --ff switch if pull.ff=true, and add a test to
catch future regressions.

Furthermore, clarify in the documentation that pull.ff overrides
merge.ff.

Signed-off-by: Paul Tan &lt;pyokagan@gmail.com&gt;
Reviewed-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: handle --log=&lt;n&gt;</title>
<updated>2015-05-18T18:19:36Z</updated>
<author>
<name>Paul Tan</name>
<email>pyokagan@gmail.com</email>
</author>
<published>2015-05-18T13:39:56Z</published>
<link rel='alternate' type='text/html' href='https://git.shady.money/git/commit/?id=5061a44bcc7bfab0764b3854b8b2df69a93675ad'/>
<id>urn:sha1:5061a44bcc7bfab0764b3854b8b2df69a93675ad</id>
<content type='text'>
Since efb779f (merge, pull: add '--(no-)log' command line option,
2008-04-06) git-pull supported the (--no-)log switch and would pass it
to git-merge.

96e9420 (merge: Make '--log' an integer option for number of shortlog
entries, 2010-09-08) implemented support for the --log=&lt;n&gt; switch, which
would explicitly set the number of shortlog entries. However, git-pull
does not recognize this option, and will instead pass it to git-fetch,
leading to "unknown option" errors.

Fix this by matching --log=* in addition to --log and --no-log.

Implement a test for this use case.

Signed-off-by: Paul Tan &lt;pyokagan@gmail.com&gt;
Signed-off-by: Junio C Hamano &lt;gitster@pobox.com&gt;
</content>
</entry>
<entry>
<title>pull: remove --tags error in no merge candidates case</title>
<updated>2015-05-14T16:52:51Z</updated>
<author>
<name>Paul Tan</name>
<email>pyokagan@gmail.com</email>
</author>
<published>2015-05-13T10:06:47Z</published>
<link rel='alternate' type='text/html' href='https://git.shady.money/git/commit/?id=19d122bf1b119a759267076fead332fb857af87e'/>
<id>urn:sha1:19d122bf1b119a759267076fead332fb857af87e</id>
<content type='text'>
Since 441ed41 ("git pull --tags": error out with a better message.,
2007-12-28), git pull --tags would print a different error message if
git-fetch did not return any merge candidates:

   It doesn't make sense to pull all tags; you probably meant:
        git fetch --tags

This is because at that time, git-fetch --tags would override any
configured refspecs, and thus there would be no merge candidates. The
error message was thus introduced to prevent confusion.

However, since c5a84e9 (fetch --tags: fetch tags *in addition to*
other stuff, 2013-10-30), git fetch --tags would fetch tags in addition
to any configured refspecs. Hence, if any no merge candidates situation
occurs, it is not because --tags was set. As such, this special error
message is now irrelevant.

To prevent confusion, remove this error message.

Signed-off-by: Paul Tan &lt;pyokagan@gmail.com&gt;
Signed-off-by: Junio C Hamano &lt;gitster@pobox.com&gt;
</content>
</entry>
<entry>
<title>merge, pull: stop advising 'commit -a' in case of conflict</title>
<updated>2014-08-28T17:29:53Z</updated>
<author>
<name>Matthieu Moy</name>
<email>Matthieu.Moy@imag.fr</email>
</author>
<published>2014-08-28T09:46:58Z</published>
<link rel='alternate' type='text/html' href='https://git.shady.money/git/commit/?id=91e70e00ac3e72eb81e10273b48d884553e7d01d'/>
<id>urn:sha1:91e70e00ac3e72eb81e10273b48d884553e7d01d</id>
<content type='text'>
'git commit -a' is rarely a good way to mark conflicts as resolved:
the user anyway has to go manually through the list of conflicts to
do the actual resolution, and it is usually better to use "git add"
on each files after doing the resolution.

On the other hand, using 'git commit -a' is potentially dangerous,
as it makes it very easy to mistakenly commit conflict markers
without noticing, and even worse, the user may have started a merge
while having local changes that do not overlap with it in the
working tree.

While we're there, synchronize the 'git pull' and 'git merge'
messages: the first was ending with '...  and make a commit.', but
not the latter.

Eventually, git should detect that conflicts have been resolved in
the working tree and tailor these messages further.  Not only "use
git commit -a" could be resurected, but "Fix them up in the work
tree" should be dropped when it happens.

Signed-off-by: Matthieu Moy &lt;Matthieu.Moy@imag.fr&gt;
Signed-off-by: Junio C Hamano &lt;gitster@pobox.com&gt;
</content>
</entry>
<entry>
<title>Sync with maint</title>
<updated>2014-06-12T19:22:38Z</updated>
<author>
<name>Junio C Hamano</name>
<email>gitster@pobox.com</email>
</author>
<published>2014-06-12T19:22:38Z</published>
<link rel='alternate' type='text/html' href='https://git.shady.money/git/commit/?id=75cc6c67e25656c1b19c7c8f6ca29d1463aefef4'/>
<id>urn:sha1:75cc6c67e25656c1b19c7c8f6ca29d1463aefef4</id>
<content type='text'>
* maint:
  pull: do not abuse 'break' inside a shell 'case'
</content>
</entry>
<entry>
<title>pull: do not abuse 'break' inside a shell 'case'</title>
<updated>2014-06-12T19:15:49Z</updated>
<author>
<name>Jacek Konieczny</name>
<email>jajcus@jajcus.net</email>
</author>
<published>2014-06-11T08:47:45Z</published>
<link rel='alternate' type='text/html' href='https://git.shady.money/git/commit/?id=8f92c7755ef2e2802e24eeb3a7de1727045950c0'/>
<id>urn:sha1:8f92c7755ef2e2802e24eeb3a7de1727045950c0</id>
<content type='text'>
It is not C. The code would break under mksh when 'pull.ff' is set:

  $ git pull
  /usr/lib/git-core/git-pull[67]: break: can't break
  Already up-to-date.

Signed-off-by: Jacek Konieczny &lt;jajcus@jajcus.net&gt;
Signed-off-by: Junio C Hamano &lt;gitster@pobox.com&gt;
</content>
</entry>
<entry>
<title>git-pull.sh: use the $( ... ) construct for command substitution</title>
<updated>2014-04-23T22:17:02Z</updated>
<author>
<name>Elia Pinto</name>
<email>gitter.spiros@gmail.com</email>
</author>
<published>2014-04-23T13:43:58Z</published>
<link rel='alternate' type='text/html' href='https://git.shady.money/git/commit/?id=eadf619cd434135bdfa598566376b3e3dbf9f2b5'/>
<id>urn:sha1:eadf619cd434135bdfa598566376b3e3dbf9f2b5</id>
<content type='text'>
The Git CodingGuidelines prefer the $(...) construct for command
substitution instead of using the backquotes `...`.

The backquoted form is the traditional method for command
substitution, and is supported by POSIX.  However, all but the
simplest uses become complicated quickly.  In particular, embedded
command substitutions and/or the use of double quotes require
careful escaping with the backslash character.

The patch was generated by:

for _f in $(find . -name "*.sh")
do
   sed -i 's@`\(.*\)`@$(\1)@g' ${_f}
done

and then carefully proof-read.

Signed-off-by: Elia Pinto &lt;gitter.spiros@gmail.com&gt;
Reviewed-by: Matthieu Moy &lt;Matthieu.Moy@imag.fr&gt;
Signed-off-by: Junio C Hamano &lt;gitster@pobox.com&gt;
</content>
</entry>
</feed>
