Hello community,

here is the log from the commit of package git for openSUSE:Factory checked in 
at 2015-07-21 13:25:30
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Comparing /work/SRC/openSUSE:Factory/git (Old)
 and      /work/SRC/openSUSE:Factory/.git.new (New)
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++

Package is "git"

Changes:
--------
--- /work/SRC/openSUSE:Factory/git/git.changes  2015-07-05 18:01:26.000000000 
+0200
+++ /work/SRC/openSUSE:Factory/.git.new/git.changes     2015-07-21 
13:25:31.000000000 +0200
@@ -1,0 +2,15 @@
+Fri Jul 17 10:41:11 UTC 2015 - [email protected]
+
+- git 2.4.6:
+ * "git fetch --depth=<depth>" and "git clone --depth=<depth>"
+   issued a shallow transfer request even to an upload-pack that
+   does not support the capability.
+ * "git fsck" used to ignore missing or invalid objects recorded in
+    reflog.
+ * The tcsh completion writes a bash scriptlet but that would have
+   failed for users with noclobber set.
+ * "git format-patch --ignore-if-upstream A..B" did not like to be
+   fed tags as boundary commits.
+- git-tcsh-completion-fixes.diff adjusted for context changes
+
+-------------------------------------------------------------------

Old:
----
  git-2.4.5.tar.sign
  git-2.4.5.tar.xz

New:
----
  git-2.4.6.tar.sign
  git-2.4.6.tar.xz

++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++

Other differences:
------------------
++++++ git.spec ++++++
--- /var/tmp/diff_new_pack.Md0icg/_old  2015-07-21 13:25:32.000000000 +0200
+++ /var/tmp/diff_new_pack.Md0icg/_new  2015-07-21 13:25:32.000000000 +0200
@@ -26,7 +26,7 @@
 %endif
 
 Name:           git
-Version:        2.4.5
+Version:        2.4.6
 Release:        0
 Summary:        Fast, scalable, distributed revision control system
 License:        GPL-2.0

++++++ git-2.4.5.tar.xz -> git-2.4.6.tar.xz ++++++
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/git-2.4.5/Documentation/RelNotes/2.4.6.txt 
new/git-2.4.6/Documentation/RelNotes/2.4.6.txt
--- old/git-2.4.5/Documentation/RelNotes/2.4.6.txt      1970-01-01 
01:00:00.000000000 +0100
+++ new/git-2.4.6/Documentation/RelNotes/2.4.6.txt      2015-07-15 
22:29:34.000000000 +0200
@@ -0,0 +1,23 @@
+Git v2.4.6 Release Notes
+========================
+
+Fixes since v2.4.5
+------------------
+
+ * "git fetch --depth=<depth>" and "git clone --depth=<depth>" issued
+   a shallow transfer request even to an upload-pack that does not
+   support the capability.
+
+ * "git fsck" used to ignore missing or invalid objects recorded in reflog.
+
+ * The tcsh completion writes a bash scriptlet but that would have
+   failed for users with noclobber set.
+
+ * Recent Mac OS X updates breaks the logic to detect that the machine
+   is on the AC power in the sample pre-auto-gc script.
+
+ * "git format-patch --ignore-if-upstream A..B" did not like to be fed
+   tags as boundary commits.
+
+Also contains typofixes, documentation updates and trivial code
+clean-ups.
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/git-2.4.5/Documentation/git-describe.txt 
new/git-2.4.6/Documentation/git-describe.txt
--- old/git-2.4.5/Documentation/git-describe.txt        2015-06-25 
21:15:40.000000000 +0200
+++ new/git-2.4.6/Documentation/git-describe.txt        2015-07-15 
22:29:34.000000000 +0200
@@ -3,7 +3,7 @@
 
 NAME
 ----
-git-describe - Show the most recent tag that is reachable from a commit
+git-describe - Describe a commit using the most recent tag reachable from it
 
 
 SYNOPSIS
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/git-2.4.5/Documentation/git-format-patch.txt 
new/git-2.4.6/Documentation/git-format-patch.txt
--- old/git-2.4.5/Documentation/git-format-patch.txt    2015-06-25 
21:15:40.000000000 +0200
+++ new/git-2.4.6/Documentation/git-format-patch.txt    2015-07-15 
22:29:34.000000000 +0200
@@ -170,7 +170,7 @@
 -v <n>::
 --reroll-count=<n>::
        Mark the series as the <n>-th iteration of the topic. The
-       output filenames have `v<n>` pretended to them, and the
+       output filenames have `v<n>` prepended to them, and the
        subject prefix ("PATCH" by default, but configurable via the
        `--subject-prefix` option) has ` v<n>` appended to it.  E.g.
        `--reroll-count=4` may produce `v4-0001-add-makefile.patch`
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/git-2.4.5/Documentation/git.txt 
new/git-2.4.6/Documentation/git.txt
--- old/git-2.4.5/Documentation/git.txt 2015-06-25 21:15:40.000000000 +0200
+++ new/git-2.4.6/Documentation/git.txt 2015-07-15 22:29:34.000000000 +0200
@@ -43,9 +43,10 @@
 branch of the `git.git` repository.
 Documentation for older releases are available here:
 
-* link:v2.4.5/git.html[documentation for release 2.4.5]
+* link:v2.4.6/git.html[documentation for release 2.4.6]
 
 * release notes for
+  link:RelNotes/2.4.6.txt[2.4.6],
   link:RelNotes/2.4.5.txt[2.4.5],
   link:RelNotes/2.4.4.txt[2.4.4],
   link:RelNotes/2.4.3.txt[2.4.3],
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/git-2.4.5/GIT-VERSION-GEN 
new/git-2.4.6/GIT-VERSION-GEN
--- old/git-2.4.5/GIT-VERSION-GEN       2015-06-25 21:15:40.000000000 +0200
+++ new/git-2.4.6/GIT-VERSION-GEN       2015-07-15 22:29:34.000000000 +0200
@@ -1,7 +1,7 @@
 #!/bin/sh
 
 GVF=GIT-VERSION-FILE
-DEF_VER=v2.4.5
+DEF_VER=v2.4.6
 
 LF='
 '
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/git-2.4.5/RelNotes new/git-2.4.6/RelNotes
--- old/git-2.4.5/RelNotes      2015-07-21 13:25:33.000000000 +0200
+++ new/git-2.4.6/RelNotes      2015-07-21 13:25:33.000000000 +0200
@@ -1 +1 @@
-symbolic link to Documentation/RelNotes/2.4.5.txt
+symbolic link to Documentation/RelNotes/2.4.6.txt
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/git-2.4.5/builtin/fsck.c new/git-2.4.6/builtin/fsck.c
--- old/git-2.4.5/builtin/fsck.c        2015-06-25 21:15:40.000000000 +0200
+++ new/git-2.4.6/builtin/fsck.c        2015-07-15 22:29:34.000000000 +0200
@@ -451,34 +451,40 @@
 
 static int default_refs;
 
+static void fsck_handle_reflog_sha1(const char *refname, unsigned char *sha1)
+{
+       struct object *obj;
+
+       if (!is_null_sha1(sha1)) {
+               obj = lookup_object(sha1);
+               if (obj) {
+                       obj->used = 1;
+                       mark_object_reachable(obj);
+               } else {
+                       error("%s: invalid reflog entry %s", refname, 
sha1_to_hex(sha1));
+                       errors_found |= ERROR_REACHABLE;
+               }
+       }
+}
+
 static int fsck_handle_reflog_ent(unsigned char *osha1, unsigned char *nsha1,
                const char *email, unsigned long timestamp, int tz,
                const char *message, void *cb_data)
 {
-       struct object *obj;
+       const char *refname = cb_data;
 
        if (verbose)
                fprintf(stderr, "Checking reflog %s->%s\n",
                        sha1_to_hex(osha1), sha1_to_hex(nsha1));
 
-       if (!is_null_sha1(osha1)) {
-               obj = lookup_object(osha1);
-               if (obj) {
-                       obj->used = 1;
-                       mark_object_reachable(obj);
-               }
-       }
-       obj = lookup_object(nsha1);
-       if (obj) {
-               obj->used = 1;
-               mark_object_reachable(obj);
-       }
+       fsck_handle_reflog_sha1(refname, osha1);
+       fsck_handle_reflog_sha1(refname, nsha1);
        return 0;
 }
 
 static int fsck_handle_reflog(const char *logname, const unsigned char *sha1, 
int flag, void *cb_data)
 {
-       for_each_reflog_ent(logname, fsck_handle_reflog_ent, NULL);
+       for_each_reflog_ent(logname, fsck_handle_reflog_ent, (void *)logname);
        return 0;
 }
 
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/git-2.4.5/builtin/log.c new/git-2.4.6/builtin/log.c
--- old/git-2.4.5/builtin/log.c 2015-06-25 21:15:40.000000000 +0200
+++ new/git-2.4.6/builtin/log.c 2015-07-15 22:29:34.000000000 +0200
@@ -795,7 +795,7 @@
 static void get_patch_ids(struct rev_info *rev, struct patch_ids *ids)
 {
        struct rev_info check_rev;
-       struct commit *commit;
+       struct commit *commit, *c1, *c2;
        struct object *o1, *o2;
        unsigned flags1, flags2;
 
@@ -803,9 +803,11 @@
                die(_("Need exactly one range."));
 
        o1 = rev->pending.objects[0].item;
-       flags1 = o1->flags;
        o2 = rev->pending.objects[1].item;
+       flags1 = o1->flags;
        flags2 = o2->flags;
+       c1 = lookup_commit_reference(o1->sha1);
+       c2 = lookup_commit_reference(o2->sha1);
 
        if ((flags1 & UNINTERESTING) == (flags2 & UNINTERESTING))
                die(_("Not a range."));
@@ -827,10 +829,8 @@
        }
 
        /* reset for next revision walk */
-       clear_commit_marks((struct commit *)o1,
-                       SEEN | UNINTERESTING | SHOWN | ADDED);
-       clear_commit_marks((struct commit *)o2,
-                       SEEN | UNINTERESTING | SHOWN | ADDED);
+       clear_commit_marks(c1, SEEN | UNINTERESTING | SHOWN | ADDED);
+       clear_commit_marks(c2, SEEN | UNINTERESTING | SHOWN | ADDED);
        o1->flags = flags1;
        o2->flags = flags2;
 }
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/git-2.4.5/configure new/git-2.4.6/configure
--- old/git-2.4.5/configure     2015-06-25 21:15:46.000000000 +0200
+++ new/git-2.4.6/configure     2015-07-15 22:29:34.000000000 +0200
@@ -1,6 +1,6 @@
 #! /bin/sh
 # Guess values for system-dependent variables and create Makefiles.
-# Generated by GNU Autoconf 2.69 for git 2.4.5.
+# Generated by GNU Autoconf 2.69 for git 2.4.6.
 #
 # Report bugs to <[email protected]>.
 #
@@ -580,8 +580,8 @@
 # Identity of this package.
 PACKAGE_NAME='git'
 PACKAGE_TARNAME='git'
-PACKAGE_VERSION='2.4.5'
-PACKAGE_STRING='git 2.4.5'
+PACKAGE_VERSION='2.4.6'
+PACKAGE_STRING='git 2.4.6'
 PACKAGE_BUGREPORT='[email protected]'
 PACKAGE_URL=''
 
@@ -1251,7 +1251,7 @@
   # Omit some internal or obsolete options to make the list less imposing.
   # This message is too long to be a string in the A/UX 3.1 sh.
   cat <<_ACEOF
-\`configure' configures git 2.4.5 to adapt to many kinds of systems.
+\`configure' configures git 2.4.6 to adapt to many kinds of systems.
 
 Usage: $0 [OPTION]... [VAR=VALUE]...
 
@@ -1312,7 +1312,7 @@
 
 if test -n "$ac_init_help"; then
   case $ac_init_help in
-     short | recursive ) echo "Configuration of git 2.4.5:";;
+     short | recursive ) echo "Configuration of git 2.4.6:";;
    esac
   cat <<\_ACEOF
 
@@ -1451,7 +1451,7 @@
 test -n "$ac_init_help" && exit $ac_status
 if $ac_init_version; then
   cat <<\_ACEOF
-git configure 2.4.5
+git configure 2.4.6
 generated by GNU Autoconf 2.69
 
 Copyright (C) 2012 Free Software Foundation, Inc.
@@ -1931,7 +1931,7 @@
 This file contains any messages produced by compilers while
 running configure, to aid debugging if configure makes a mistake.
 
-It was created by git $as_me 2.4.5, which was
+It was created by git $as_me 2.4.6, which was
 generated by GNU Autoconf 2.69.  Invocation command line was
 
   $ $0 $@
@@ -8085,7 +8085,7 @@
 # report actual input values of CONFIG_FILES etc. instead of their
 # values after options handling.
 ac_log="
-This file was extended by git $as_me 2.4.5, which was
+This file was extended by git $as_me 2.4.6, which was
 generated by GNU Autoconf 2.69.  Invocation command line was
 
   CONFIG_FILES    = $CONFIG_FILES
@@ -8142,7 +8142,7 @@
 cat >>$CONFIG_STATUS <<_ACEOF || ac_write_fail=1
 ac_cs_config="`$as_echo "$ac_configure_args" | sed 's/^ //; 
s/[\\""\`\$]/\\\\&/g'`"
 ac_cs_version="\\
-git config.status 2.4.5
+git config.status 2.4.6
 configured by $0, generated by GNU Autoconf 2.69,
   with options \\"\$ac_cs_config\\"
 
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/git-2.4.5/contrib/completion/git-completion.tcsh 
new/git-2.4.6/contrib/completion/git-completion.tcsh
--- old/git-2.4.5/contrib/completion/git-completion.tcsh        2015-06-25 
21:15:40.000000000 +0200
+++ new/git-2.4.6/contrib/completion/git-completion.tcsh        2015-07-15 
22:29:34.000000000 +0200
@@ -41,7 +41,7 @@
        exit
 endif
 
-cat << EOF > ${__git_tcsh_completion_script}
+cat << EOF >! ${__git_tcsh_completion_script}
 #!bash
 #
 # This script is GENERATED and will be overwritten automatically.
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/git-2.4.5/contrib/completion/git-prompt.sh 
new/git-2.4.6/contrib/completion/git-prompt.sh
--- old/git-2.4.5/contrib/completion/git-prompt.sh      2015-06-25 
21:15:40.000000000 +0200
+++ new/git-2.4.6/contrib/completion/git-prompt.sh      2015-07-15 
22:29:34.000000000 +0200
@@ -66,6 +66,10 @@
 #     git           always compare HEAD to @{upstream}
 #     svn           always compare HEAD to your SVN upstream
 #
+# You can change the separator between the branch name and the above
+# state symbols by setting GIT_PS1_STATESEPARATOR. The default separator
+# is SP.
+#
 # By default, __git_ps1 will compare HEAD to your SVN upstream if it can
 # find one, or @{upstream} otherwise.  Once you have set
 # GIT_PS1_SHOWUPSTREAM, you can override it on a per-repository basis by
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/git-2.4.5/contrib/hooks/pre-auto-gc-battery 
new/git-2.4.6/contrib/hooks/pre-auto-gc-battery
--- old/git-2.4.5/contrib/hooks/pre-auto-gc-battery     2015-06-25 
21:15:40.000000000 +0200
+++ new/git-2.4.6/contrib/hooks/pre-auto-gc-battery     2015-07-15 
22:29:34.000000000 +0200
@@ -33,7 +33,7 @@
 then
        exit 0
 elif test -x /usr/bin/pmset && /usr/bin/pmset -g batt |
-       grep -q "Currently drawing from 'AC Power'"
+       grep -q "drawing from 'AC Power'"
 then
        exit 0
 fi
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/git-2.4.5/ewah/bitmap.c new/git-2.4.6/ewah/bitmap.c
--- old/git-2.4.5/ewah/bitmap.c 2015-06-25 21:15:40.000000000 +0200
+++ new/git-2.4.6/ewah/bitmap.c 2015-07-15 22:29:34.000000000 +0200
@@ -20,8 +20,8 @@
 #include "git-compat-util.h"
 #include "ewok.h"
 
-#define MASK(x) ((eword_t)1 << (x % BITS_IN_WORD))
-#define BLOCK(x) (x / BITS_IN_WORD)
+#define EWAH_MASK(x) ((eword_t)1 << (x % BITS_IN_EWORD))
+#define EWAH_BLOCK(x) (x / BITS_IN_EWORD)
 
 struct bitmap *bitmap_new(void)
 {
@@ -33,7 +33,7 @@
 
 void bitmap_set(struct bitmap *self, size_t pos)
 {
-       size_t block = BLOCK(pos);
+       size_t block = EWAH_BLOCK(pos);
 
        if (block >= self->word_alloc) {
                size_t old_size = self->word_alloc;
@@ -45,22 +45,22 @@
                        (self->word_alloc - old_size) * sizeof(eword_t));
        }
 
-       self->words[block] |= MASK(pos);
+       self->words[block] |= EWAH_MASK(pos);
 }
 
 void bitmap_clear(struct bitmap *self, size_t pos)
 {
-       size_t block = BLOCK(pos);
+       size_t block = EWAH_BLOCK(pos);
 
        if (block < self->word_alloc)
-               self->words[block] &= ~MASK(pos);
+               self->words[block] &= ~EWAH_MASK(pos);
 }
 
 int bitmap_get(struct bitmap *self, size_t pos)
 {
-       size_t block = BLOCK(pos);
+       size_t block = EWAH_BLOCK(pos);
        return block < self->word_alloc &&
-               (self->words[block] & MASK(pos)) != 0;
+               (self->words[block] & EWAH_MASK(pos)) != 0;
 }
 
 struct ewah_bitmap *bitmap_to_ewah(struct bitmap *bitmap)
@@ -127,7 +127,7 @@
 void bitmap_or_ewah(struct bitmap *self, struct ewah_bitmap *other)
 {
        size_t original_size = self->word_alloc;
-       size_t other_final = (other->bit_size / BITS_IN_WORD) + 1;
+       size_t other_final = (other->bit_size / BITS_IN_EWORD) + 1;
        size_t i = 0;
        struct ewah_iterator it;
        eword_t word;
@@ -155,17 +155,17 @@
                uint32_t offset;
 
                if (word == (eword_t)~0) {
-                       for (offset = 0; offset < BITS_IN_WORD; ++offset)
+                       for (offset = 0; offset < BITS_IN_EWORD; ++offset)
                                callback(pos++, data);
                } else {
-                       for (offset = 0; offset < BITS_IN_WORD; ++offset) {
+                       for (offset = 0; offset < BITS_IN_EWORD; ++offset) {
                                if ((word >> offset) == 0)
                                        break;
 
                                offset += ewah_bit_ctz64(word >> offset);
                                callback(pos + offset, data);
                        }
-                       pos += BITS_IN_WORD;
+                       pos += BITS_IN_EWORD;
                }
        }
 }
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/git-2.4.5/ewah/ewah_bitmap.c 
new/git-2.4.6/ewah/ewah_bitmap.c
--- old/git-2.4.5/ewah/ewah_bitmap.c    2015-06-25 21:15:40.000000000 +0200
+++ new/git-2.4.6/ewah/ewah_bitmap.c    2015-07-15 22:29:34.000000000 +0200
@@ -102,7 +102,7 @@
        if (number == 0)
                return 0;
 
-       self->bit_size += number * BITS_IN_WORD;
+       self->bit_size += number * BITS_IN_EWORD;
        return add_empty_words(self, v, number);
 }
 
@@ -152,7 +152,7 @@
                        self->buffer_size += can_add;
                }
 
-               self->bit_size += can_add * BITS_IN_WORD;
+               self->bit_size += can_add * BITS_IN_EWORD;
 
                if (number - can_add == 0)
                        break;
@@ -197,7 +197,7 @@
 
 size_t ewah_add(struct ewah_bitmap *self, eword_t word)
 {
-       self->bit_size += BITS_IN_WORD;
+       self->bit_size += BITS_IN_EWORD;
 
        if (word == 0)
                return add_empty_word(self, 0);
@@ -211,8 +211,8 @@
 void ewah_set(struct ewah_bitmap *self, size_t i)
 {
        const size_t dist =
-               (i + BITS_IN_WORD) / BITS_IN_WORD -
-               (self->bit_size + BITS_IN_WORD - 1) / BITS_IN_WORD;
+               (i + BITS_IN_EWORD) / BITS_IN_EWORD -
+               (self->bit_size + BITS_IN_EWORD - 1) / BITS_IN_EWORD;
 
        assert(i >= self->bit_size);
 
@@ -222,19 +222,19 @@
                if (dist > 1)
                        add_empty_words(self, 0, dist - 1);
 
-               add_literal(self, (eword_t)1 << (i % BITS_IN_WORD));
+               add_literal(self, (eword_t)1 << (i % BITS_IN_EWORD));
                return;
        }
 
        if (rlw_get_literal_words(self->rlw) == 0) {
                rlw_set_running_len(self->rlw,
                        rlw_get_running_len(self->rlw) - 1);
-               add_literal(self, (eword_t)1 << (i % BITS_IN_WORD));
+               add_literal(self, (eword_t)1 << (i % BITS_IN_EWORD));
                return;
        }
 
        self->buffer[self->buffer_size - 1] |=
-               ((eword_t)1 << (i % BITS_IN_WORD));
+               ((eword_t)1 << (i % BITS_IN_EWORD));
 
        /* check if we just completed a stream of 1s */
        if (self->buffer[self->buffer_size - 1] == (eword_t)(~0)) {
@@ -255,11 +255,11 @@
                eword_t *word = &self->buffer[pointer];
 
                if (rlw_get_run_bit(word)) {
-                       size_t len = rlw_get_running_len(word) * BITS_IN_WORD;
+                       size_t len = rlw_get_running_len(word) * BITS_IN_EWORD;
                        for (k = 0; k < len; ++k, ++pos)
                                callback(pos, payload);
                } else {
-                       pos += rlw_get_running_len(word) * BITS_IN_WORD;
+                       pos += rlw_get_running_len(word) * BITS_IN_EWORD;
                }
 
                ++pointer;
@@ -268,7 +268,7 @@
                        int c;
 
                        /* todo: zero count optimization */
-                       for (c = 0; c < BITS_IN_WORD; ++c, ++pos) {
+                       for (c = 0; c < BITS_IN_EWORD; ++c, ++pos) {
                                if ((self->buffer[pointer] & ((eword_t)1 << c)) 
!= 0)
                                        callback(pos, payload);
                        }
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/git-2.4.5/ewah/ewok.h new/git-2.4.6/ewah/ewok.h
--- old/git-2.4.5/ewah/ewok.h   2015-06-25 21:15:40.000000000 +0200
+++ new/git-2.4.6/ewah/ewok.h   2015-07-15 22:29:34.000000000 +0200
@@ -31,7 +31,7 @@
 #endif
 
 typedef uint64_t eword_t;
-#define BITS_IN_WORD (sizeof(eword_t) * 8)
+#define BITS_IN_EWORD (sizeof(eword_t) * 8)
 
 /**
  * Do not use __builtin_popcountll. The GCC implementation
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/git-2.4.5/fetch-pack.c new/git-2.4.6/fetch-pack.c
--- old/git-2.4.5/fetch-pack.c  2015-06-25 21:15:40.000000000 +0200
+++ new/git-2.4.6/fetch-pack.c  2015-07-15 22:29:34.000000000 +0200
@@ -790,7 +790,7 @@
        sort_ref_list(&ref, ref_compare_name);
        qsort(sought, nr_sought, sizeof(*sought), cmp_ref_by_name);
 
-       if (is_repository_shallow() && !server_supports("shallow"))
+       if ((args->depth > 0 || is_repository_shallow()) && 
!server_supports("shallow"))
                die("Server does not support shallow clients");
        if (server_supports("multi_ack_detailed")) {
                if (args->verbose)
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/git-2.4.5/git-compat-util.h 
new/git-2.4.6/git-compat-util.h
--- old/git-2.4.5/git-compat-util.h     2015-06-25 21:15:40.000000000 +0200
+++ new/git-2.4.6/git-compat-util.h     2015-07-15 22:29:34.000000000 +0200
@@ -58,15 +58,13 @@
 #define BUILD_ASSERT_OR_ZERO(cond) \
        (sizeof(char [1 - 2*!(cond)]) - 1)
 
-#if defined(__GNUC__) && (__GNUC__ >= 3)
-# if GIT_GNUC_PREREQ(3, 1)
+#if GIT_GNUC_PREREQ(3, 1)
  /* &arr[0] degrades to a pointer: a different type from an array */
 # define BARF_UNLESS_AN_ARRAY(arr)                                             
\
        BUILD_ASSERT_OR_ZERO(!__builtin_types_compatible_p(__typeof__(arr), \
                                                           
__typeof__(&(arr)[0])))
-# else
-#  define BARF_UNLESS_AN_ARRAY(arr) 0
-# endif
+#else
+# define BARF_UNLESS_AN_ARRAY(arr) 0
 #endif
 /*
  * ARRAY_SIZE - get the number of elements in a visible array
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/git-2.4.5/git-stash.sh new/git-2.4.6/git-stash.sh
--- old/git-2.4.5/git-stash.sh  2015-06-25 21:15:40.000000000 +0200
+++ new/git-2.4.6/git-stash.sh  2015-07-15 22:29:34.000000000 +0200
@@ -457,8 +457,6 @@
        assert_stash_like "$@"
 
        git update-index -q --refresh || die "$(gettext "unable to refresh 
index")"
-       git diff-index --cached --quiet --ignore-submodules HEAD -- ||
-               die "$(gettext "Cannot apply stash: Your index contains 
uncommitted changes.")"
 
        # current index state
        c_tree=$(git write-tree) ||
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/git-2.4.5/git.spec new/git-2.4.6/git.spec
--- old/git-2.4.5/git.spec      2015-06-25 21:15:46.000000000 +0200
+++ new/git-2.4.6/git.spec      2015-07-15 22:29:34.000000000 +0200
@@ -1,7 +1,7 @@
 # Pass --without docs to rpmbuild if you don't want the documentation
 
 Name:          git
-Version:       2.4.5
+Version:       2.4.6
 Release:       1%{?dist}
 Summary:       Core git tools
 License:       GPL
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/git-2.4.5/pack-bitmap.c new/git-2.4.6/pack-bitmap.c
--- old/git-2.4.5/pack-bitmap.c 2015-06-25 21:15:40.000000000 +0200
+++ new/git-2.4.6/pack-bitmap.c 2015-07-15 22:29:34.000000000 +0200
@@ -622,7 +622,7 @@
        while (i < objects->word_alloc && ewah_iterator_next(&filter, &it)) {
                eword_t word = objects->words[i] & filter;
 
-               for (offset = 0; offset < BITS_IN_WORD; ++offset) {
+               for (offset = 0; offset < BITS_IN_EWORD; ++offset) {
                        const unsigned char *sha1;
                        struct revindex_entry *entry;
                        uint32_t hash = 0;
@@ -644,7 +644,7 @@
                        show_reach(sha1, object_type, 0, hash, bitmap_git.pack, 
entry->offset);
                }
 
-               pos += BITS_IN_WORD;
+               pos += BITS_IN_EWORD;
                i++;
        }
 }
@@ -776,7 +776,7 @@
                        break;
                }
 
-               reuse_objects += BITS_IN_WORD;
+               reuse_objects += BITS_IN_EWORD;
        }
 
 #ifdef GIT_BITMAP_DEBUG
@@ -1001,7 +1001,7 @@
        while (ewah_iterator_next(&word, &it)) {
                uint32_t offset, bit_pos;
 
-               for (offset = 0; offset < BITS_IN_WORD; ++offset) {
+               for (offset = 0; offset < BITS_IN_EWORD; ++offset) {
                        if ((word >> offset) == 0)
                                break;
 
@@ -1014,7 +1014,7 @@
                                return -1;
                }
 
-               pos += BITS_IN_WORD;
+               pos += BITS_IN_EWORD;
        }
        return 0;
 }
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/git-2.4.5/t/t0302-credential-store.sh 
new/git-2.4.6/t/t0302-credential-store.sh
--- old/git-2.4.5/t/t0302-credential-store.sh   2015-06-25 21:15:40.000000000 
+0200
+++ new/git-2.4.6/t/t0302-credential-store.sh   2015-07-15 22:29:34.000000000 
+0200
@@ -75,7 +75,7 @@
        EOF
 '
 
-test_expect_success POSIXPERM 'get: use xdg file if home file is unreadable' '
+test_expect_success POSIXPERM,SANITY 'get: use xdg file if home file is 
unreadable' '
        echo "https://home-user:[email protected]"; 
>"$HOME/.git-credentials" &&
        chmod -r "$HOME/.git-credentials" &&
        mkdir -p "$HOME/.config/git" &&
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/git-2.4.5/t/t3903-stash.sh 
new/git-2.4.6/t/t3903-stash.sh
--- old/git-2.4.5/t/t3903-stash.sh      2015-06-25 21:15:40.000000000 +0200
+++ new/git-2.4.6/t/t3903-stash.sh      2015-07-15 22:29:34.000000000 +0200
@@ -45,13 +45,6 @@
        test_cmp expect file
 '
 
-test_expect_success 'apply requires a clean index' '
-       test_when_finished "git reset --hard" &&
-       echo changed >other-file &&
-       git add other-file &&
-       test_must_fail git stash apply
-'
-
 test_expect_success 'apply does not need clean working directory' '
        echo 4 >other-file &&
        git stash apply &&
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/git-2.4.5/t/t4014-format-patch.sh 
new/git-2.4.6/t/t4014-format-patch.sh
--- old/git-2.4.5/t/t4014-format-patch.sh       2015-06-25 21:15:40.000000000 
+0200
+++ new/git-2.4.6/t/t4014-format-patch.sh       2015-07-15 22:29:34.000000000 
+0200
@@ -57,6 +57,14 @@
 
 '
 
+test_expect_success "format-patch --ignore-if-in-upstream handles tags" '
+       git tag -a v1 -m tag side &&
+       git tag -a v2 -m tag master &&
+       git format-patch --stdout --ignore-if-in-upstream v2..v1 >patch1 &&
+       cnt=$(grep "^From " patch1 | wc -l) &&
+       test $cnt = 2
+'
+
 test_expect_success "format-patch doesn't consider merge commits" '
 
        git checkout -b slave master &&
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/git-2.4.5/utf8.h new/git-2.4.6/utf8.h
--- old/git-2.4.5/utf8.h        2015-06-25 21:15:40.000000000 +0200
+++ new/git-2.4.6/utf8.h        2015-07-15 22:29:34.000000000 +0200
@@ -31,7 +31,9 @@
                          const char *in_encoding,
                          int *outsz);
 #else
-#define reencode_string_len(a,b,c,d,e) NULL
+static inline char *reencode_string_len(const char *a, int b,
+                                       const char *c, const char *d, int *e)
+{ if (e) *e = 0; return NULL; }
 #endif
 
 static inline char *reencode_string(const char *in,
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/git-2.4.5/version new/git-2.4.6/version
--- old/git-2.4.5/version       2015-06-25 21:15:46.000000000 +0200
+++ new/git-2.4.6/version       2015-07-15 22:29:34.000000000 +0200
@@ -1 +1 @@
-2.4.5
+2.4.6

++++++ git-tcsh-completion-fixes.diff ++++++
--- /var/tmp/diff_new_pack.Md0icg/_old  2015-07-21 13:25:34.000000000 +0200
+++ /var/tmp/diff_new_pack.Md0icg/_new  2015-07-21 13:25:34.000000000 +0200
@@ -4,8 +4,10 @@
  contrib/completion/git.tcsh            |    4 ++++
  3 files changed, 15 insertions(+), 10 deletions(-)
 
---- a/contrib/completion/git-completion.tcsh
-+++ b/contrib/completion/git-completion.tcsh
+Index: git-2.4.6/contrib/completion/git-completion.tcsh
+===================================================================
+--- git-2.4.6.orig/contrib/completion/git-completion.tcsh
++++ git-2.4.6/contrib/completion/git-completion.tcsh
 @@ -32,14 +32,14 @@ if ( ${__git_tcsh_completion_version[1]}
  endif
  unset __git_tcsh_completion_version
@@ -26,7 +28,7 @@
 +#     exit
 +# endif
  
- cat << EOF > ${__git_tcsh_completion_script}
+ cat << EOF >! ${__git_tcsh_completion_script}
  #!bash
 @@ -121,6 +121,3 @@ EOF
  
@@ -35,15 +37,19 @@
 -
 -complete git  'p,*,`bash ${__git_tcsh_completion_script} git 
"${COMMAND_LINE}"`,'
 -complete gitk 'p,*,`bash ${__git_tcsh_completion_script} gitk 
"${COMMAND_LINE}"`,'
+Index: git-2.4.6/contrib/completion/git.csh
+===================================================================
 --- /dev/null
-+++ b/contrib/completion/git.csh
++++ git-2.4.6/contrib/completion/git.csh
 @@ -0,0 +1,4 @@
 +if (${?prompt}) then
 +complete git  'p,*,`bash /usr/share/tcsh/git.complete git "${COMMAND_LINE}"`,'
 +complete gitk 'p,*,`bash /usr/share/tcsh/git.complete gitk 
"${COMMAND_LINE}"`,'
 +endif
+Index: git-2.4.6/contrib/completion/git.tcsh
+===================================================================
 --- /dev/null
-+++ b/contrib/completion/git.tcsh
++++ git-2.4.6/contrib/completion/git.tcsh
 @@ -0,0 +1,4 @@
 +if (${?prompt}) then
 +complete git  'p,*,`bash /usr/share/tcsh/git.complete git "${COMMAND_LINE}"`,'


Reply via email to