gitweb.git
revision: introduce --exclude=<glob> to tame wildcardsJunio C Hamano Fri, 30 Aug 2013 23:37:55 +0000 (16:37 -0700)

revision: introduce --exclude=<glob> to tame wildcards

People often find "git log --branches" etc. that includes _all_
branches is cumbersome to use when they want to grab most but except
some. The same applies to --tags, --all and --glob.

Teach the revision machinery to remember patterns, and then upon the
next such a globbing option, exclude those that match the pattern.

With this, I can view only my integration branches (e.g. maint,
master, etc.) without topic branches, which are named after two
letters from primary authors' names, slash and topic name.

git rev-list --no-walk --exclude=??/* --branches |
git name-rev --refs refs/heads/* --stdin

This one shows things reachable from local and remote branches that
have not been merged to the integration branches.

git log --remotes --branches --not --exclude=??/* --branches

It may be a bit rough around the edges, in that the pattern to give
the exclude option depends on what globbing option follows. In
these examples, the pattern "??/*" is used, not "refs/heads/??/*",
because the globbing option that follows the -"-exclude=<pattern>"
is "--branches". As each use of globbing option resets previously
set "--exclude", this may not be such a bad thing, though.

Signed-off-by: Junio C Hamano <gitster@pobox.com>

Git 1.8.4 v1.8.4Junio C Hamano Fri, 23 Aug 2013 18:49:46 +0000 (11:49 -0700)

Git 1.8.4

Signed-off-by: Junio C Hamano <gitster@pobox.com>

Typofix draft release notes to 1.8.4Junio C Hamano Wed, 21 Aug 2013 22:30:04 +0000 (15:30 -0700)

Typofix draft release notes to 1.8.4

Signed-off-by: Junio C Hamano <gitster@pobox.com>

Git 1.8.4-rc4 v1.8.4-rc4Junio C Hamano Mon, 19 Aug 2013 17:34:14 +0000 (10:34 -0700)

Git 1.8.4-rc4

As we had to revert two topics at the last minute, let's have
another (hopefully short) round of rc to make sure the final release
will be sound.

Signed-off-by: Junio C Hamano <gitster@pobox.com>

Revert "Add new @ shortcut for HEAD"Junio C Hamano Wed, 14 Aug 2013 17:57:24 +0000 (10:57 -0700)

Revert "Add new @ shortcut for HEAD"

This reverts commit cdfd94837b27c220f70f032b596ea993d195488f, as it
does not just apply to "@" (and forms with modifiers like @{u}
applied to it), but also affects e.g. "refs/heads/@/foo", which it
shouldn't.

The basic idea of giving a short-hand might be good, and the topic
can be retried later, but let's revert to avoid affecting existing
use cases for now for the upcoming release.

Revert "git stash: avoid data loss when "git stash... Junio C Hamano Wed, 14 Aug 2013 16:53:43 +0000 (09:53 -0700)

Revert "git stash: avoid data loss when "git stash save" kills a directory"

This reverts commit a73653130edd6a8977106d45a8092c09040f9132, as it
has been reported that "ls-files --killed" is too time-consuming in
a deep directory with too many untracked crufts (e.g. $HOME/.git
tracking only a few files).

We'd need to revisit it later but "ls-files --killed" needs to be
optimized before it happens.

Git 1.8.4-rc3 v1.8.4-rc3Junio C Hamano Tue, 13 Aug 2013 18:10:18 +0000 (11:10 -0700)

Git 1.8.4-rc3

Signed-off-by: Junio C Hamano <gitster@pobox.com>

Merge git://github.com/git-l10n/git-poJunio C Hamano Tue, 13 Aug 2013 17:50:01 +0000 (10:50 -0700)

Merge git://github.com/git-l10n/git-po

* git://github.com/git-l10n/git-po:
l10n: Add reference for french translation team
l10n: fr.po: 821/2112 messages translated

Merge branch 'sb/mailmap-updates'Junio C Hamano Tue, 13 Aug 2013 17:49:33 +0000 (10:49 -0700)

Merge branch 'sb/mailmap-updates'

* sb/mailmap-updates:
.mailmap: Combine more (name, email) to individual persons
.mailmap: update long-lost friends with multiple defunct addresses

.mailmap: Combine more (name, email) to individual... Stefan Beller Mon, 12 Aug 2013 08:12:09 +0000 (10:12 +0200)

.mailmap: Combine more (name, email) to individual persons

Signed-off-by: Stefan Beller <stefanbeller@googlemail.com>
Signed-off-by: Junio C Hamano <gitster@pobox.com>

.mailmap: update long-lost friends with multiple defunc... Junio C Hamano Mon, 12 Aug 2013 07:58:11 +0000 (00:58 -0700)

.mailmap: update long-lost friends with multiple defunct addresses

A handful of past contributors are recorded with multiple e-mail
addresses, all of which are undeliverable. With a lot of help from
Jonathan, we located all of them except for one person, and a pair
of addresses we suspect belong to a single person but we are not
certain.

Update the found ones with their currently preferred address, and
use the last known address to consolidate contributions by the lost
one.

Helped-by: Stefan Beller <stefanbeller@googlemail.com>
Helped-by: Jonathan Nieder <jrnieder@gmail.com>
Signed-off-by: Junio C Hamano <gitster@pobox.com>

git-remote-mediawiki: ignore generated git-mwMatthieu Moy Tue, 13 Aug 2013 13:32:19 +0000 (15:32 +0200)

git-remote-mediawiki: ignore generated git-mw

Signed-off-by: Matthieu Moy <Matthieu.Moy@imag.fr>
Signed-off-by: Junio C Hamano <gitster@pobox.com>

l10n: Add reference for french translation teamJean-Noel Avila Fri, 9 Aug 2013 22:30:55 +0000 (00:30 +0200)

l10n: Add reference for french translation team

Signed-off-by: Jean-Noel Avila <jn.avila@free.fr>

l10n: fr.po: 821/2112 messages translatedJean-Noel Avila Mon, 1 Jul 2013 20:19:04 +0000 (22:19 +0200)

l10n: fr.po: 821/2112 messages translated

Trying to focus on most useful phrases.

Signed-off-by: Jean-Noel Avila <jn.avila@free.fr>

Merge branch 'maint'Junio C Hamano Fri, 9 Aug 2013 22:49:55 +0000 (15:49 -0700)

Merge branch 'maint'

* maint:
parse-options: fix clang opterror() -Wunused-value warning

Merge branch 'master' of git://github.com/git-l10n... Junio C Hamano Fri, 9 Aug 2013 21:31:28 +0000 (14:31 -0700)

Merge branch 'master' of git://github.com/git-l10n/git-po

* 'master' of git://github.com/git-l10n/git-po:
l10n: de.po: translate 5 messages
l10n: de.po: translate 99 new messages
l10n: de.po: switch from pure German to German+English
l10n: de.po: Fix a typo
l10n: Update Swedish translation (2135t0f0u)
l10n: zh_CN.po: translate 5 messages (2135t0f0u)
l10n: vi.po(2135t): v1.8.4 round 2
l10n: git.pot: v1.8.4 round 2 (5 new, 3 removed)

Merge branch 'jk/submodule-subdirectory-ok'Junio C Hamano Fri, 9 Aug 2013 21:30:41 +0000 (14:30 -0700)

Merge branch 'jk/submodule-subdirectory-ok'

* jk/submodule-subdirectory-ok:
t/t7407: fix two typos in submodule tests

Merge branch 'sb/mailmap-updates'Junio C Hamano Fri, 9 Aug 2013 21:30:13 +0000 (14:30 -0700)

Merge branch 'sb/mailmap-updates'

* sb/mailmap-updates:
.mailmap: fixup entries

.mailmap: fixup entriesStefan Beller Fri, 9 Aug 2013 18:18:24 +0000 (20:18 +0200)

.mailmap: fixup entries

This patch adds no new names, but fixes the mistakes I made in the previous
commits. (94b410bba8, f4f49e225, c07a6bc57, 2013-07-12, .mailmap: Map
email addresses to names).

These mistakes are double white spaces between name and surname,
different capitalization in email address, or just the email address set
as name.

Also I forgot to include James Knight to the mailmap file.

Signed-off-by: Stefan Beller <stefanbeller@googlemail.com>
Signed-off-by: Junio C Hamano <gitster@pobox.com>

t/t7407: fix two typos in submodule testsPhil Hord Fri, 9 Aug 2013 20:12:54 +0000 (16:12 -0400)

t/t7407: fix two typos in submodule tests

In t/t7407-submodule-foreach.sh there is a typo in one of the
path names given for a test step. The correct path is
nested1/nested2/.git, but nested1/nested1/nested2/.git is
given instead. The typo is hidden because this line also
accidentally omits the && chain operator. The omitted chain
also means the return values of all the previous commands in
this test are also being ignored.

Fix the path and add the chain operator so the entire test
sequence can be properly validated.

Signed-off-by: Phil Hord <hordp@cisco.com>
Signed-off-by: Junio C Hamano <gitster@pobox.com>

parse-options: fix clang opterror() -Wunused-value... Eric Sunshine Fri, 9 Aug 2013 09:06:17 +0000 (05:06 -0400)

parse-options: fix clang opterror() -Wunused-value warning

a469a1019352b8ef (silence some -Wuninitialized false positives;
2012-12-15) triggered "unused value" warnings when the return value of
opterror() and several other error-related functions was not used.
5ded807f7c0be10e (fix clang -Wunused-value warnings for error functions;
2013-01-16) applied a fix by adding #if !defined(__clang__) in cache.h
and git-compat-util.h, but misspelled it as #if !defined(clang) in
parse-options.h. Fix this.

This mistake went unnoticed because existing callers of opterror()
utilize its return value. 1158826394e162c5 (parse-options: add
OPT_CMDMODE(); 2013-07-30), however, adds a new invocation of opterror()
which ignores the return value, thus triggering the "unused value"
warning.

Signed-off-by: Eric Sunshine <sunshine@sunshineco.com>
Signed-off-by: Junio C Hamano <gitster@pobox.com>

l10n: de.po: translate 5 messagesRalf Thielow Tue, 6 Aug 2013 17:54:29 +0000 (19:54 +0200)

l10n: de.po: translate 5 messages

Translate 5 new messages came from git.pot update in b8ecf23
(l10n: git.pot: v1.8.4 round 2 (5 new, 3 removed)).

Signed-off-by: Ralf Thielow <ralf.thielow@gmail.com>

l10n: de.po: translate 99 new messagesRalf Thielow Fri, 26 Jul 2013 15:48:46 +0000 (17:48 +0200)

l10n: de.po: translate 99 new messages

Translate 99 new messages came from git.pot update in
28b3cff (l10n: git.pot: v1.8.4 round 1 (99 new, 46 removed)).

Signed-off-by: Ralf Thielow <ralf.thielow@gmail.com>
Acked-by: Thomas Rast <trast@inf.ethz.ch>

Git 1.8.4-rc2 v1.8.4-rc2Junio C Hamano Thu, 8 Aug 2013 20:58:34 +0000 (13:58 -0700)

Git 1.8.4-rc2

This is with mostly minor documentation and test updates, nothing
spectacular except for removal of funky lstat(2) emulation on Cygwin.

Signed-off-by: Junio C Hamano <gitster@pobox.com>

l10n: de.po: switch from pure German to German+EnglishRalf Thielow Wed, 29 May 2013 16:03:39 +0000 (18:03 +0200)

l10n: de.po: switch from pure German to German+English

This switches the translation from pure German to German+English.

Signed-off-by: Ralf Thielow <ralf.thielow@gmail.com>
Acked-by: Thomas Rast <trast@inf.ethz.ch>

l10n: de.po: Fix a typoWieland Hoffmann Wed, 5 Jun 2013 20:59:44 +0000 (22:59 +0200)

l10n: de.po: Fix a typo

Signed-off-by: Wieland Hoffmann <themineo@gmail.com>

l10n: Update Swedish translation (2135t0f0u)Peter Krefting Tue, 6 Aug 2013 11:41:48 +0000 (12:41 +0100)

l10n: Update Swedish translation (2135t0f0u)

Fix some incorrect translations in existing messages while at it.

Signed-off-by: Peter Krefting <peter@softwolves.pp.se>

l10n: zh_CN.po: translate 5 messages (2135t0f0u)Jiang Xin Tue, 6 Aug 2013 06:49:18 +0000 (14:49 +0800)

l10n: zh_CN.po: translate 5 messages (2135t0f0u)

Translate 5 new messages came from git.pot update in b8ecf23
(l10n: git.pot: v1.8.4 round 2 (5 new, 3 removed)).

Signed-off-by: Jiang Xin <worldhello.net@gmail.com>

l10n: vi.po(2135t): v1.8.4 round 2Tran Ngoc Quan Tue, 6 Aug 2013 07:34:48 +0000 (14:34 +0700)

l10n: vi.po(2135t): v1.8.4 round 2

Signed-off-by: Tran Ngoc Quan <vnwildman@gmail.com>

l10n: git.pot: v1.8.4 round 2 (5 new, 3 removed)Jiang Xin Tue, 6 Aug 2013 06:13:23 +0000 (14:13 +0800)

l10n: git.pot: v1.8.4 round 2 (5 new, 3 removed)

Generate po/git.pot from v1.8.4-rc1-21-gfb56570 for git v1.8.4
l10n round 2.

Signed-off-by: Jiang Xin <worldhello.net@gmail.com>

Sync with maint to grab trivial doc fixesJunio C Hamano Mon, 5 Aug 2013 20:00:20 +0000 (13:00 -0700)

Sync with maint to grab trivial doc fixes

* maint:
fix typo in documentation of git-svn
Documentation/rev-list-options: add missing word in --*-parents
log doc: the argument to --encoding is not optional

Merge branch 'es/blame-L-breakage'Junio C Hamano Mon, 5 Aug 2013 17:44:39 +0000 (10:44 -0700)

Merge branch 'es/blame-L-breakage'

* es/blame-L-breakage:
t8001, t8002: fix "blame -L :literal" test on NetBSD

t8001, t8002: fix "blame -L :literal" test on NetBSDRené Scharfe Mon, 5 Aug 2013 15:21:17 +0000 (17:21 +0200)

t8001, t8002: fix "blame -L :literal" test on NetBSD

Sub-test 42 of t8001 and t8002 ("blame -L :literal") fails on NetBSD
with the following verbose output:

git annotate -L:main hello.c
Author F (expected 4, attributed 3) bad
Author G (expected 1, attributed 1) good

This is not caused by different behaviour of git blame or annotate on
that platform, but by different test input, in turn caused by a sed
command that forgets to add a newline on NetBSD. Here's the diff of the
commit that adds "goodbye" to hello.c, for Linux:

@@ -1,4 +1,5 @@
int main(int argc, const char *argv[])
{
puts("hello");
+ puts("goodbye");
}

We see that it adds an extra TAB, but that's not a problem. Here's the
same on NetBSD:

@@ -1,4 +1,4 @@
int main(int argc, const char *argv[])
{
puts("hello");
-}
+ puts("goodbye");}

It also adds an extra TAB, but it is missing the newline character
after the semicolon.

The following patch gets rid of the extra TAB at the beginning, but
more importantly adds the missing newline at the end in a (hopefully)
portable way, mentioned in http://sed.sourceforge.net/sedfaq4.html.
The diff becomes this, on both Linux and NetBSD:

@@ -1,4 +1,5 @@
int main(int argc, const char *argv[])
{
puts("hello");
+ puts("goodbye");
}

Signed-off-by: Rene Scharfe <l.s.r@web.de>
Signed-off-by: Junio C Hamano <gitster@pobox.com>

Merge git://github.com/git-l10n/git-poJunio C Hamano Mon, 5 Aug 2013 17:38:23 +0000 (10:38 -0700)

Merge git://github.com/git-l10n/git-po

* git://github.com/git-l10n/git-po:
l10n: zh_CN.po: translate 99 messages (2133t0f0u)
l10n: vi.po (2133t)
l10n: git.pot: v1.8.4 round 1 (99 new, 46 removed)

Merge branch 'sb/mailmap-updates'Junio C Hamano Mon, 5 Aug 2013 17:11:14 +0000 (10:11 -0700)

Merge branch 'sb/mailmap-updates'

* sb/mailmap-updates:
.mailmap: Multiple addresses of Michael S. Tsirkin

Merge branch 'dn/test-reject-utf-16'Junio C Hamano Mon, 5 Aug 2013 17:11:10 +0000 (10:11 -0700)

Merge branch 'dn/test-reject-utf-16'

* dn/test-reject-utf-16:
t3900: test rejecting log message with NULs correctly
Add missing test file for UTF-16.

Merge branch 'bc/commit-invalid-utf8'Junio C Hamano Mon, 5 Aug 2013 17:11:04 +0000 (10:11 -0700)

Merge branch 'bc/commit-invalid-utf8'

* bc/commit-invalid-utf8:
commit: typofix for xxFFF[EF] check

commit: typofix for xxFFF[EF] checkJunio C Hamano Mon, 5 Aug 2013 16:52:28 +0000 (09:52 -0700)

commit: typofix for xxFFF[EF] check

We wanted to catch all codepoints that ends with FFFE and FFFF,
not with 0FFFE and 0FFFF.

Noticed and corrected by Peter Krefting.

Signed-off-by: Junio C Hamano <gitster@pobox.com>

t3900: test rejecting log message with NULs correctlyJunio C Hamano Mon, 5 Aug 2013 16:47:11 +0000 (09:47 -0700)

t3900: test rejecting log message with NULs correctly

It is not like that our longer term desire is to someday start
accept log messages with NULs in them, so it is wrong to mark a test
that demonstrates "git commit" that correctly fails given such an
input as "expect-failure". "git commit" should fail today, and it
should fail the same way in the future given a message with NUL in it.

Signed-off-by: Junio C Hamano <gitster@pobox.com>

Add missing test file for UTF-16.Brian M. Carlson Sat, 3 Aug 2013 17:26:31 +0000 (17:26 +0000)

Add missing test file for UTF-16.

The test file that the UTF-16 rejection test looks for is missing, but this went
unnoticed because the test is expected to fail anyway; as a consequence, the
test fails because the file containing the commit message is missing, and not
because the test file contains a NUL byte. Fix this by including a sample text
file containing a commit message encoded in UTF-16.

Signed-off-by: Brian M. Carlson <sandals@crustytoothpaste.net>
Tested-by: Duy Nguyen <pclouds@gmail.com>
Signed-off-by: Junio C Hamano <gitster@pobox.com>

fix typo in documentation of git-svnFelix Gruber Sat, 3 Aug 2013 14:37:15 +0000 (16:37 +0200)

fix typo in documentation of git-svn

Signed-off-by: Felix Gruber <felgru@gmx.de>
Signed-off-by: Junio C Hamano <gitster@pobox.com>

Documentation/rev-list-options: add missing word in... Torstein Hegge Fri, 2 Aug 2013 18:40:07 +0000 (20:40 +0200)

Documentation/rev-list-options: add missing word in --*-parents

A commit has "parent commits" or "parents", not "commits".

Signed-off-by: Torstein Hegge <hegge@resisty.net>
Signed-off-by: Junio C Hamano <gitster@pobox.com>

.mailmap: Multiple addresses of Michael S. TsirkinStefan Beller Sat, 3 Aug 2013 11:54:03 +0000 (13:54 +0200)

.mailmap: Multiple addresses of Michael S. Tsirkin

Acked-by: Michael S. Tsirkin <mst@redhat.com>
Signed-off-by: Stefan Beller <stefanbeller@googlemail.com>
Signed-off-by: Junio C Hamano <gitster@pobox.com>

log doc: the argument to --encoding is not optionalJonathan Nieder Fri, 2 Aug 2013 22:16:40 +0000 (15:16 -0700)

log doc: the argument to --encoding is not optional

$ git log --encoding
fatal: Option '--encoding' requires a value
$ git rev-list --encoding
fatal: Option '--encoding' requires a value

The argument to --encoding has always been mandatory. Unfortunately
manpages like git-rev-list(1), git-log(1), and git-show(1) have
described the option's syntax as "--encoding[=<encoding>]" since it
was first documented. Clarify by removing the extra brackets.

Signed-off-by: Jonathan Nieder <jrnieder@gmail.com>
Signed-off-by: Junio C Hamano <gitster@pobox.com>

l10n: zh_CN.po: translate 99 messages (2133t0f0u)Jiang Xin Fri, 26 Jul 2013 06:00:02 +0000 (14:00 +0800)

l10n: zh_CN.po: translate 99 messages (2133t0f0u)

Translate 99 new messages came from git.pot update in 28b3cff
(l10n: git.pot: v1.8.4 round 1 (99 new, 46 removed)).

Signed-off-by: Jiang Xin <worldhello.net@gmail.com>

Merge branch 'rj/cygwin-clarify-use-of-cheating-lstat'Junio C Hamano Fri, 2 Aug 2013 18:01:00 +0000 (11:01 -0700)

Merge branch 'rj/cygwin-clarify-use-of-cheating-lstat'

Cygwin port added a "not quite correct but a lot faster and good
enough for many lstat() calls that are only used to see if the
working tree entity matches the index entry" lstat() emulation some
time ago, and it started biting us in places. This removes it and
uses the standard lstat() that comes with Cygwin.

Recent topic that uses lstat on packed-refs file is broken when
this cheating lstat is used, and this is a simplest fix that is
also the cleanest direction to go in the long run.

* rj/cygwin-clarify-use-of-cheating-lstat:
cygwin: Remove the Win32 l/stat() implementation

Merge branch 'jk/cat-file-batch-optim'Junio C Hamano Fri, 2 Aug 2013 16:32:48 +0000 (09:32 -0700)

Merge branch 'jk/cat-file-batch-optim'

* jk/cat-file-batch-optim:
Revert "cat-file: split --batch input lines on whitespace"

Revert "cat-file: split --batch input lines on whitespace"Junio C Hamano Fri, 2 Aug 2013 16:29:30 +0000 (09:29 -0700)

Revert "cat-file: split --batch input lines on whitespace"

This reverts commit c334b87b30c1464a1ab563fe1fb8de5eaf0e5bac; the
update assumed that people only used the command to read from
"rev-list --objects" output, whose lines begin with a 40-hex object
name followed by a whitespace, but it turns out that scripts feed
random extended SHA-1 expressions (e.g. "HEAD:$pathname") in which
a whitespace has to be kept.

Git 1.8.4-rc1 v1.8.4-rc1Junio C Hamano Thu, 1 Aug 2013 19:01:53 +0000 (12:01 -0700)

Git 1.8.4-rc1

Signed-off-by: Junio C Hamano <gitster@pobox.com>

Merge branch 'ob/typofixes'Junio C Hamano Thu, 1 Aug 2013 18:58:32 +0000 (11:58 -0700)

Merge branch 'ob/typofixes'

* ob/typofixes:
many small typofixes

Merge branch 'ms/subtree-install-fix'Junio C Hamano Thu, 1 Aug 2013 18:57:25 +0000 (11:57 -0700)

Merge branch 'ms/subtree-install-fix'

* ms/subtree-install-fix:
contrib/subtree: Fix make install target

Merge branch 'jc/rm-submodule-error-message'Junio C Hamano Thu, 1 Aug 2013 18:57:25 +0000 (11:57 -0700)

Merge branch 'jc/rm-submodule-error-message'

Consolidate two messages phrased subtly differently without a good
reason.

* jc/rm-submodule-error-message:
builtin/rm.c: consolidate error reporting for removing submodules

Merge branch 'lf/echo-n-is-not-portable'Junio C Hamano Thu, 1 Aug 2013 18:52:43 +0000 (11:52 -0700)

Merge branch 'lf/echo-n-is-not-portable'

* lf/echo-n-is-not-portable:
Avoid using `echo -n` anywhere

Merge branch 'ma/hg-to-git'Junio C Hamano Thu, 1 Aug 2013 18:52:40 +0000 (11:52 -0700)

Merge branch 'ma/hg-to-git'

* ma/hg-to-git:
hg-to-git: --allow-empty-message in git commit

Merge branch 'jx/clean-interactive'Junio C Hamano Thu, 1 Aug 2013 18:52:37 +0000 (11:52 -0700)

Merge branch 'jx/clean-interactive'

* jx/clean-interactive:
git-clean: implement partial matching for selection
Documentation/git-clean: fix description for range

Rename advice.object_name_warning to objectNameWarningThomas Rast Wed, 31 Jul 2013 20:23:31 +0000 (22:23 +0200)

Rename advice.object_name_warning to objectNameWarning

We spell config variables in camelCase instead of with_underscores.

Signed-off-by: Thomas Rast <trast@inf.ethz.ch>
Signed-off-by: Junio C Hamano <gitster@pobox.com>

Merge branch 'rr/rebase-autostash'Junio C Hamano Wed, 31 Jul 2013 19:38:29 +0000 (12:38 -0700)

Merge branch 'rr/rebase-autostash'

* rr/rebase-autostash:
git-rebase: fix typo

Merge branch 'rj/commit-slab-fix'Junio C Hamano Wed, 31 Jul 2013 19:38:27 +0000 (12:38 -0700)

Merge branch 'rj/commit-slab-fix'

* rj/commit-slab-fix:
commit-slab.h: Fix memory allocation and addressing

Merge branch 'jk/commit-how-to-abort-cherry-pick'Junio C Hamano Wed, 31 Jul 2013 19:38:23 +0000 (12:38 -0700)

Merge branch 'jk/commit-how-to-abort-cherry-pick'

* jk/commit-how-to-abort-cherry-pick:
commit: tweak empty cherry pick advice for sequencer

Merge branch 'ds/doc-two-kinds-of-tags'Junio C Hamano Wed, 31 Jul 2013 19:38:21 +0000 (12:38 -0700)

Merge branch 'ds/doc-two-kinds-of-tags'

* ds/doc-two-kinds-of-tags:
docs/git-tag: explain lightweight versus annotated tags

Merge branch 'rr/maint-tilde-markup-in-doc'Junio C Hamano Wed, 31 Jul 2013 19:38:15 +0000 (12:38 -0700)

Merge branch 'rr/maint-tilde-markup-in-doc'

* rr/maint-tilde-markup-in-doc:
config doc: quote paths, fixing tilde-interpretation

Merge branch 'mh/packed-refs-do-one-ref-recursion'Junio C Hamano Wed, 31 Jul 2013 19:38:11 +0000 (12:38 -0700)

Merge branch 'mh/packed-refs-do-one-ref-recursion'

Fix a NULL-pointer dereference during nested iterations over
references (for example, when replace references are being used).

* mh/packed-refs-do-one-ref-recursion:
do_one_ref(): save and restore value of current_ref

Merge branch 'jk/capabilities-doc'Junio C Hamano Tue, 30 Jul 2013 16:16:42 +0000 (09:16 -0700)

Merge branch 'jk/capabilities-doc'

* jk/capabilities-doc:
document 'allow-tip-sha1-in-want' capability
document 'quiet' receive-pack capability
document 'agent' protocol capability
docs: note that receive-pack knows side-band-64k capability
docs: fix 'report-status' protocol capability thinko

Merge branch 'sb/mailmap-updates'Junio C Hamano Tue, 30 Jul 2013 16:16:39 +0000 (09:16 -0700)

Merge branch 'sb/mailmap-updates'

* sb/mailmap-updates:
.mailmap: combine more (email, name) to individual persons

Merge branch 'bc/completion-for-bash-3.0'Junio C Hamano Tue, 30 Jul 2013 16:16:36 +0000 (09:16 -0700)

Merge branch 'bc/completion-for-bash-3.0'

* bc/completion-for-bash-3.0:
git-completion.bash: replace zsh notation that breaks bash 3.X

contrib/subtree: Fix make install targetMichal Sojka Tue, 30 Jul 2013 08:16:09 +0000 (10:16 +0200)

contrib/subtree: Fix make install target

If the libexec directory doesn't exist, git-subtree gets installed as
$prefix/share/libexec/git-core file. This patch creates the directory
before installing git-subtree file into it.

Signed-off-by: Michal Sojka <sojkam1@fel.cvut.cz>
Signed-off-by: Junio C Hamano <gitster@pobox.com>

many small typofixesOndřej Bílka Mon, 29 Jul 2013 08:18:21 +0000 (10:18 +0200)

many small typofixes

Signed-off-by: Ondřej Bílka <neleai@seznam.cz>
Reviewed-by: Marc Branchaud <marcnarc@xiplink.com>
Signed-off-by: Junio C Hamano <gitster@pobox.com>

git-rebase: fix typoRalf Thielow Mon, 29 Jul 2013 04:24:43 +0000 (06:24 +0200)

git-rebase: fix typo

Signed-off-by: Ralf Thielow <ralf.thielow@gmail.com>
Signed-off-by: Junio C Hamano <gitster@pobox.com>

Avoid using `echo -n` anywhereLukas Fleischer Sat, 27 Jul 2013 12:11:33 +0000 (14:11 +0200)

Avoid using `echo -n` anywhere

`echo -n` is non-portable. The POSIX specification says:

Conforming applications that wish to do prompting without <newline>
characters or that could possibly be expecting to echo a -n, should
use the printf utility derived from the Ninth Edition system.

Since all of the affected shell scripts use a POSIX shell shebang,
replace `echo -n` invocations with printf.

Signed-off-by: Lukas Fleischer <git@cryptocrack.de>
Signed-off-by: Junio C Hamano <gitster@pobox.com>

commit-slab.h: Fix memory allocation and addressingRamsay Jones Sat, 27 Jul 2013 19:00:07 +0000 (20:00 +0100)

commit-slab.h: Fix memory allocation and addressing

The slab initialization code includes the calculation of the
slab 'elem_size', which is in turn used to determine the size
(capacity) of the slab. Each element of the slab represents an
array, of length 'stride', of 'elemtype'. (Note that it may be
clearer if the define_commit_slab macro parameter was called
'basetype' rather than 'elemtype'). However, the 'elem_size'
calculation incorrectly uses 'sizeof(struct slabname)' in the
expression, rather than 'sizeof(elemtype)'.

Within the slab access routine, <slabname>_at(), the given commit
'index' is transformed into an (slab#, slot#) pair used to address
the required element (a pointer to the first element of the array
of 'elemtype' associated with that commit). The current code to
calculate these address coordinates multiplies the commit index
by the 'stride' which, at least for the slab#, produces the wrong
result. Using the commit index directly, without scaling by the
'stride', produces the correct 'logical' address.

Also, when allocating a new slab, the size of the allocation only
allows for a slab containing elements of single element arrays of
'elemtype'. This should allow for elements of an array of length
'stride' of 'elemtype'. In order to fix this, we need to change
the element size parameter to xcalloc() by multiplying the current
element size (sizeof(**s->slab)) by the s->stride.

Having changed the calculation of the slot#, we now need to convert
the logical 'nth_slot', by scaling with s->stride, into the correct
physical address.

Signed-off-by: Ramsay Jones <ramsay@ramsay1.demon.co.uk>
Signed-off-by: Junio C Hamano <gitster@pobox.com>

commit: tweak empty cherry pick advice for sequencerJeff King Fri, 26 Jul 2013 23:39:28 +0000 (19:39 -0400)

commit: tweak empty cherry pick advice for sequencer

When we refuse to make an empty commit, we check whether we
are in a cherry-pick in order to give better advice on how
to proceed. We instruct the user to repeat the commit with
"--allow-empty" to force the commit, or to use "git reset"
to skip it and abort the cherry-pick.

In the case of a single cherry-pick, the distinction between
skipping and aborting is not important, as there is no more
work to be done afterwards. When we are using the sequencer
to cherry pick a series of commits, though, the instruction
is confusing: does it skip this commit, or does it abort the
rest of the cherry-pick?

It does skip, after which the user can continue the
cherry-pick. This is the right thing to be advising the user
to do, but let's make it more clear what will happen, both
by using the word "skip", and by mentioning that the rest of
the sequence can be continued via "cherry-pick --continue"
(whether we skip or take the commit).

Noticed-by: Ramkumar Ramachandra <artagnon@gmail.com>
Helped-by: Jonathan Nieder <jrnieder@gmail.com>
Signed-off-by: Jeff King <peff@peff.net>
Signed-off-by: Junio C Hamano <gitster@pobox.com>

docs/git-tag: explain lightweight versus annotated... Daniele Segato Fri, 26 Jul 2013 19:06:02 +0000 (15:06 -0400)

docs/git-tag: explain lightweight versus annotated tags

Stress the difference between the two with a suggestion on
when the user should use one in place of the other.

Signed-off-by: Daniele Segato <daniele.segato@gmail.com>
Signed-off-by: Jeff King <peff@peff.net>
Reviewed-by: Jonathan Nieder <jrnieder@gmail.com>
Signed-off-by: Junio C Hamano <gitster@pobox.com>

l10n: vi.po (2133t)Tran Ngoc Quan Sat, 27 Jul 2013 01:46:06 +0000 (08:46 +0700)

l10n: vi.po (2133t)

Signed-off-by: Tran Ngoc Quan <vnwildman@gmail.com>

config doc: quote paths, fixing tilde-interpretationRamkumar Ramachandra Fri, 26 Jul 2013 10:42:02 +0000 (16:12 +0530)

config doc: quote paths, fixing tilde-interpretation

The --global section of git-config(1) currently reads like:

For writing options: write to global /.gitconfig file rather than the
^
start tilde

repository .git/config, write to $XDG_CONFIG_HOME/git/config file if
this file exists and the/.gitconfig file doesn’t.
^
end tilde

Instead of tilde (~) being interpreted literally, asciidoc subscripts
the text between the two tildes. To fix this problem, use backticks (`)
to quote all the paths in the file uniformly, just like config.txt does.

Signed-off-by: Ramkumar Ramachandra <artagnon@gmail.com>
Signed-off-by: Junio C Hamano <gitster@pobox.com>

document 'allow-tip-sha1-in-want' capabilityNguyễn Thái Ngọc Duy Fri, 26 Jul 2013 11:01:54 +0000 (18:01 +0700)

document 'allow-tip-sha1-in-want' capability

See 390eb36 (upload-pack: optionally allow fetching from the tips of
hidden refs - 2013-01-28) for more information.

Signed-off-by: Nguyễn Thái Ngọc Duy <pclouds@gmail.com>
Signed-off-by: Junio C Hamano <gitster@pobox.com>

l10n: git.pot: v1.8.4 round 1 (99 new, 46 removed)Jiang Xin Fri, 26 Jul 2013 00:56:45 +0000 (08:56 +0800)

l10n: git.pot: v1.8.4 round 1 (99 new, 46 removed)

Generate po/git.pot from v1.8.4-rc0 for git v1.8.4 l10n round 1.

Signed-off-by: Jiang Xin <worldhello.net@gmail.com>

builtin/rm.c: consolidate error reporting for removing... Junio C Hamano Fri, 26 Jul 2013 06:05:17 +0000 (23:05 -0700)

builtin/rm.c: consolidate error reporting for removing submodules

We have two (not identical) copies of error reporting when
attempting to remove submodules that have their repositories
embedded within them. Add a helper function so that we do not have
to repeat similar error messages with subtly different wording
without a good reason.

Noticed by Jiang Xin.

Signed-off-by: Junio C Hamano <gitster@pobox.com>

commit.h: drop redundant commentJeff King Thu, 25 Jul 2013 20:01:00 +0000 (16:01 -0400)

commit.h: drop redundant comment

We mention twice that the from_ident field of struct
pretty_print_context is internal.

The first comment was added by 10f2fbf, which prepares the
struct for internal fields, and then the second by a908047,
which actually adds such a field. This was a mistake made
when re-rolling the series on the list; the comment should
have been removed from the latter commit.

Signed-off-by: Jeff King <peff@peff.net>
Signed-off-by: Junio C Hamano <gitster@pobox.com>

Git 1.8.4-rc0 v1.8.4-rc0Junio C Hamano Thu, 25 Jul 2013 02:29:07 +0000 (19:29 -0700)

Git 1.8.4-rc0

Signed-off-by: Junio C Hamano <gitster@pobox.com>

Merge branch 'mh/multimail'Junio C Hamano Thu, 25 Jul 2013 02:23:03 +0000 (19:23 -0700)

Merge branch 'mh/multimail'

An enhanced "post-receive" hook to send e-mail messages.

* mh/multimail:
post-receive-email: deprecate script in favor of git-multimail
git-multimail: an improved replacement for post-receive-email

Merge branch 'ob/typofixes'Junio C Hamano Thu, 25 Jul 2013 02:23:00 +0000 (19:23 -0700)

Merge branch 'ob/typofixes'

* ob/typofixes:
typofix: in-code comments
typofix: documentation
typofix: release notes

Merge branch 'es/contacts'Junio C Hamano Thu, 25 Jul 2013 02:22:57 +0000 (19:22 -0700)

Merge branch 'es/contacts'

A helper to read from a set of format-patch output files or a range
of commits and find those who may have insights to the code that
the changes touch by running a series of "git blame" commands.

* es/contacts:
contrib: contacts: add documentation
contrib: contacts: add mailmap support
contrib: contacts: interpret committish akin to format-patch
contrib: contacts: add ability to parse from committish
contrib: add git-contacts helper

Merge branch 'ml/cygwin-updates'Junio C Hamano Thu, 25 Jul 2013 02:22:49 +0000 (19:22 -0700)

Merge branch 'ml/cygwin-updates'

The tip one does _not_ revert c869753e (Force core.filemode to
false on Cygwin., 2006-12-30) on purpose, so that people can
still retain the old behaviour if they wanted to.

* ml/cygwin-updates:
cygwin: stop forcing core.filemode=false
Cygwin 1.7 supports mmap
Cygwin 1.7 has thread-safe pread
Cygwin 1.7 needs compat/regex

Merge branch 'rj/sparse'Junio C Hamano Thu, 25 Jul 2013 02:21:30 +0000 (19:21 -0700)

Merge branch 'rj/sparse'

* rj/sparse:
Revert "compat/unsetenv.c: Fix a sparse warning"

Merge branch 'sb/traverse-trees-bitmask-variable-name'Junio C Hamano Thu, 25 Jul 2013 02:21:25 +0000 (19:21 -0700)

Merge branch 'sb/traverse-trees-bitmask-variable-name'

* sb/traverse-trees-bitmask-variable-name:
traverse_trees(): clarify return value of the callback

Merge branch 'jk/cat-file-batch-optim'Junio C Hamano Thu, 25 Jul 2013 02:21:21 +0000 (19:21 -0700)

Merge branch 'jk/cat-file-batch-optim'

If somebody wants to only know on-disk footprint of an object
without having to know its type or payload size, we can bypass a
lot of code to cheaply learn it.

* jk/cat-file-batch-optim:
Fix some sparse warnings
sha1_object_info_extended: pass object_info to helpers
sha1_object_info_extended: make type calculation optional
packed_object_info: make type lookup optional
packed_object_info: hoist delta type resolution to helper
sha1_loose_object_info: make type lookup optional
sha1_object_info_extended: rename "status" to "type"
cat-file: disable object/refname ambiguity check for batch mode

Merge branch 'ml/avoid-using-grep-on-crlf-files'Junio C Hamano Thu, 25 Jul 2013 02:21:18 +0000 (19:21 -0700)

Merge branch 'ml/avoid-using-grep-on-crlf-files'

On systems that understand a CRLF as a line ending, tests in this
script that worked on files with CRLF line endings using "grep" to
extract matching lines may lose the CR at the end of lines that
match, causing the actual output not to match the expected output.

* ml/avoid-using-grep-on-crlf-files:
test-lib.sh - define and use GREP_STRIPS_CR

Merge branch 'jm/doc-ref-prune'Junio C Hamano Thu, 25 Jul 2013 02:21:15 +0000 (19:21 -0700)

Merge branch 'jm/doc-ref-prune'

* jm/doc-ref-prune:
Documentation: fix git-prune example usage
Documentation: remove --prune from pack-refs examples

Merge branch 'rh/template-updates'Junio C Hamano Thu, 25 Jul 2013 02:21:07 +0000 (19:21 -0700)

Merge branch 'rh/template-updates'

* rh/template-updates:
templates: spell ASCII in uppercase in pre-commit hook
templates: Reformat pre-commit hook's message
templates: Use heredoc in pre-commit hook

Merge branch 'mh/ref-races-optim-invalidate-cached'Junio C Hamano Thu, 25 Jul 2013 02:21:02 +0000 (19:21 -0700)

Merge branch 'mh/ref-races-optim-invalidate-cached'

* mh/ref-races-optim-invalidate-cached:
refs: do not invalidate the packed-refs cache unnecessarily

Merge branch 'sb/misc-fixes'Junio C Hamano Thu, 25 Jul 2013 02:20:58 +0000 (19:20 -0700)

Merge branch 'sb/misc-fixes'

Assorted code cleanups and a minor fix.

* sb/misc-fixes:
diff.c: Do not initialize a variable, which gets reassigned anyway.
commit: Fix a memory leak in determine_author_info
daemon.c:handle: Remove unneeded check for null pointer.

Merge branch 'tr/line-log'Junio C Hamano Thu, 25 Jul 2013 02:19:24 +0000 (19:19 -0700)

Merge branch 'tr/line-log'

Fix "log -L" command line parsing bugs.

* tr/line-log:
t4211: fix incorrect rebase at f8395edc (range-set: satisfy non-empty ranges invariant)
line-log: fix "log -LN" crash when N is last line of file
range-set: satisfy non-empty ranges invariant
t4211: demonstrate crash when first -L encountered is empty range
t4211: demonstrate empty -L range crash
range-set: fix sort_and_merge_range_set() corner case bug

git-clean: implement partial matching for selectionJiang Xin Wed, 24 Jul 2013 02:22:04 +0000 (10:22 +0800)

git-clean: implement partial matching for selection

Document for interactive git-clean says: "You also could say `c` or
`clean` above as long as the choice is unique". But it's not true,
because only hotkey `c` and full match (`clean`) could work.

Implement partial matching via find_unique function to make the
document right.

Signed-off-by: Jiang Xin <worldhello.net@gmail.com>
Signed-off-by: Junio C Hamano <gitster@pobox.com>

Documentation/git-clean: fix description for rangeJiang Xin Tue, 23 Jul 2013 22:22:43 +0000 (06:22 +0800)

Documentation/git-clean: fix description for range

The descriptions of "select by numbers" section for interactive
git-clean are borrowed from git-add, and one sentence should be
replaced.

Signed-off-by: Jiang Xin <worldhello.net@gmail.com>
Signed-off-by: Junio C Hamano <gitster@pobox.com>

.mailmap: combine more (email, name) to individual... Stefan Beller Wed, 24 Jul 2013 17:55:18 +0000 (19:55 +0200)

.mailmap: combine more (email, name) to individual persons

I got more responses from people regarding the .mailmap file.
All added persons gave permission to add them to the .mailmap file.

Signed-off-by: Stefan Beller <stefanbeller@googlemail.com>
Signed-off-by: Junio C Hamano <gitster@pobox.com>

document 'quiet' receive-pack capabilityJeff King Wed, 24 Jul 2013 08:03:43 +0000 (04:03 -0400)

document 'quiet' receive-pack capability

This was added in c207e34 (fix push --quiet: add 'quiet'
capability to receive-pack, 2012-01-08) but never
documented.

Signed-off-by: Jeff King <peff@peff.net>
Signed-off-by: Junio C Hamano <gitster@pobox.com>

document 'agent' protocol capabilityJeff King Wed, 24 Jul 2013 08:03:13 +0000 (04:03 -0400)

document 'agent' protocol capability

This was added in ff5effd (include agent identifier in
capability string, 2012-08-03), but neither the syntax nor
the semantics were ever documented outside of the commit
message.

Signed-off-by: Jeff King <peff@peff.net>
Signed-off-by: Junio C Hamano <gitster@pobox.com>

docs: note that receive-pack knows side-band-64k capabilityJeff King Wed, 24 Jul 2013 08:01:59 +0000 (04:01 -0400)

docs: note that receive-pack knows side-band-64k capability

The protocol-capabilities documentation notes that any
capabilities not explicitly mentioned for receive-pack work
only for upload-pack.

Receive-pack has advertised and understood side-band-64k
since 38a81b4 (receive-pack: Wrap status reports inside
side-band-64k, 2010-02-05), but we do not mention it
explicitly. Let's do so.

Note that receive-pack does not understand side-band, which
was obsolete by that point.

Signed-off-by: Jeff King <peff@peff.net>
Signed-off-by: Junio C Hamano <gitster@pobox.com>

docs: fix 'report-status' protocol capability thinkoJeff King Wed, 24 Jul 2013 08:01:21 +0000 (04:01 -0400)

docs: fix 'report-status' protocol capability thinko

The report-status capability is understood by receive-pack,
not upload-pack.

Signed-off-by: Jeff King <peff@peff.net>
Signed-off-by: Junio C Hamano <gitster@pobox.com>

git-completion.bash: replace zsh notation that breaks... Brandon Casey Fri, 18 Jan 2013 19:24:01 +0000 (11:24 -0800)

git-completion.bash: replace zsh notation that breaks bash 3.X

50c5885e (git-completion.bash: replace zsh notation that breaks bash
3.X, 2013-01-18) fixed a zsh-ism introduced earlier to append to an
array, which older versions of bash (3.0) did not grok. This was
again broken by 734b2f05 (completion: synchronize zsh wrapper,
2013-05-08).

Cherry-pick the fix again to let those with older bash use the
completion script.

Signed-off-by: Brandon Casey <drafnel@gmail.com>
Signed-off-by: Junio C Hamano <gitster@pobox.com>