summaryrefslogtreecommitdiff
Commit message (Collapse)AuthorAgeFilesLines
* for-each-ref: avoid loading objects to print %(objectname)jk/for-each-ref-skip-parsingJeff King2013-10-302-9/+24
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | If you ask for-each-ref to print each ref and its object, like: git for-each-ref --format='%(objectname) %(refname)' this should involve little more work than looking at the ref files (and packed-refs) themselves. However, for-each-ref will actually load each object from disk just to print its sha1. For most repositories, this isn't a big deal, but it can be noticeable if you have a large number of refs to print. Here are best-of-five timings for the command above on a repo with ~10K refs: [before] real 0m0.112s user 0m0.092s sys 0m0.016s [after] real 0m0.014s user 0m0.012s sys 0m0.000s This patch checks for %(objectname) and %(objectname:short) before we actually parse the object (and the rest of the code is smart enough to avoid parsing if we have filled all of our placeholders). Note that we can't simply move the objectname parsing code into the early loop. If the "deref" form %(*objectname) is used, then we do need to parse the object in order to peel the tag. So instead of moving the code, we factor it out into a separate function that can be called for both cases. While we're at it, we add some basic tests for the dereferenced placeholders, which were not tested at all before. This helps ensure we didn't regress that case. Signed-off-by: Jeff King <peff@peff.net> Signed-off-by: Junio C Hamano <gitster@pobox.com>
* Git 1.8.4v1.8.4Junio C Hamano2013-08-232-1/+6
| | | | Signed-off-by: Junio C Hamano <gitster@pobox.com>
* Typofix draft release notes to 1.8.4Junio C Hamano2013-08-211-2/+2
| | | | Signed-off-by: Junio C Hamano <gitster@pobox.com>
* Git 1.8.4-rc4v1.8.4-rc4Junio C Hamano2013-08-192-10/+1
| | | | | | | | 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 Hamano2013-08-145-28/+0
| | | | | | | | | | | 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 save" kills a directory"Junio C Hamano2013-08-143-40/+2
| | | | | | | | | | 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-rc3v1.8.4-rc3Junio C Hamano2013-08-131-1/+1
| | | | Signed-off-by: Junio C Hamano <gitster@pobox.com>
* Merge git://github.com/git-l10n/git-poJunio C Hamano2013-08-132-0/+9672
|\ | | | | | | | | | | * git://github.com/git-l10n/git-po: l10n: Add reference for french translation team l10n: fr.po: 821/2112 messages translated
| * l10n: Add reference for french translation teamJean-Noel Avila2013-08-111-0/+4
| | | | | | | | Signed-off-by: Jean-Noel Avila <jn.avila@free.fr>
| * l10n: fr.po: 821/2112 messages translatedJean-Noel Avila2013-08-111-0/+9668
| | | | | | | | | | | | Trying to focus on most useful phrases. Signed-off-by: Jean-Noel Avila <jn.avila@free.fr>
* | Merge branch 'sb/mailmap-updates'Junio C Hamano2013-08-131-2/+16
|\ \ | | | | | | | | | | | | | | | * 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 personssb/mailmap-updatesStefan Beller2013-08-131-1/+3
| | | | | | | | | | | | | | | Signed-off-by: Stefan Beller <stefanbeller@googlemail.com> Signed-off-by: Junio C Hamano <gitster@pobox.com>
| * | .mailmap: update long-lost friends with multiple defunct addressesJunio C Hamano2013-08-131-1/+13
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 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 Moy2013-08-131-0/+1
| |/ |/| | | | | | | Signed-off-by: Matthieu Moy <Matthieu.Moy@imag.fr> Signed-off-by: Junio C Hamano <gitster@pobox.com>
* | Merge branch 'maint'Junio C Hamano2013-08-091-1/+1
|\ \ | | | | | | | | | | | | * maint: parse-options: fix clang opterror() -Wunused-value warning
| * | parse-options: fix clang opterror() -Wunused-value warningEric Sunshine2013-08-091-1/+1
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 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>
* | | Merge branch 'master' of git://github.com/git-l10n/git-poJunio C Hamano2013-08-095-4414/+5144
|\ \ \ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | * '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)
| * | | l10n: de.po: translate 5 messagesRalf Thielow2013-08-091-188/+243
| | | | | | | | | | | | | | | | | | | | | | | | | | | | 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 Thielow2013-08-091-1638/+1954
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 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>
| * | | l10n: de.po: switch from pure German to German+EnglishRalf Thielow2013-08-081-922/+909
| | | | | | | | | | | | | | | | | | | | | | | | | | | | 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 Hoffmann2013-08-081-1/+1
| | | | | | | | | | | | | | | | Signed-off-by: Wieland Hoffmann <themineo@gmail.com>
| * | | l10n: Update Swedish translation (2135t0f0u)Peter Krefting2013-08-061-1521/+1844
| | | | | | | | | | | | | | | | | | | | | | | | 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 Xin2013-08-061-164/+182
| | | | | | | | | | | | | | | | | | | | | | | | | | | | 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 Quan2013-08-061-169/+187
| | | | | | | | | | | | | | | | Signed-off-by: Tran Ngoc Quan <vnwildman@gmail.com>
| * | | l10n: git.pot: v1.8.4 round 2 (5 new, 3 removed)Jiang Xin2013-08-061-161/+174
| | | | | | | | | | | | | | | | | | | | | | | | | | | | 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>
* | | | Merge branch 'jk/submodule-subdirectory-ok'Junio C Hamano2013-08-091-1/+1
|\ \ \ \ | | | | | | | | | | | | | | | | | | | | * jk/submodule-subdirectory-ok: t/t7407: fix two typos in submodule tests
| * | | | t/t7407: fix two typos in submodule testsjk/submodule-subdirectory-okPhil Hord2013-08-091-1/+1
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 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>
* | | | | Merge branch 'sb/mailmap-updates'Junio C Hamano2013-08-091-2/+7
|\ \ \ \ \ | | |_|_|/ | |/| | | | | | | | | | | | | * sb/mailmap-updates: .mailmap: fixup entries
| * | | | .mailmap: fixup entriesStefan Beller2013-08-091-2/+7
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 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>
* | | | | Git 1.8.4-rc2v1.8.4-rc2Junio C Hamano2013-08-082-1/+8
| |_|/ / |/| | | | | | | | | | | | | | | | | | | | | | | 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>
* | | | Sync with maint to grab trivial doc fixesJunio C Hamano2013-08-054-4/+4
|\ \ \ \ | | |_|/ | |/| | | | | | | | | | | | | | | | | | * 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
| * | | fix typo in documentation of git-svnFelix Gruber2013-08-051-1/+1
| | | | | | | | | | | | | | | | | | | | 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 --*-parentsTorstein Hegge2013-08-051-1/+1
| | | | | | | | | | | | | | | | | | | | | | | | | | | | 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>
| * | | log doc: the argument to --encoding is not optionalJonathan Nieder2013-08-052-2/+2
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | $ 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>
* | | | Merge branch 'es/blame-L-breakage'Junio C Hamano2013-08-051-2/+2
|\ \ \ \ | | | | | | | | | | | | | | | | | | | | * es/blame-L-breakage: t8001, t8002: fix "blame -L :literal" test on NetBSD
| * | | | t8001, t8002: fix "blame -L :literal" test on NetBSDes/blame-L-breakageRené Scharfe2013-08-051-2/+2
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 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 Hamano2013-08-053-4352/+5403
|\ \ \ \ \ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | * 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)
| * | | | | l10n: zh_CN.po: translate 99 messages (2133t0f0u)Jiang Xin2013-08-031-1449/+1851
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 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>
| * | | | | l10n: vi.po (2133t)Tran Ngoc Quan2013-07-271-1507/+1876
| | | | | | | | | | | | | | | | | | | | | | | | Signed-off-by: Tran Ngoc Quan <vnwildman@gmail.com>
| * | | | | l10n: git.pot: v1.8.4 round 1 (99 new, 46 removed)Jiang Xin2013-07-261-1396/+1676
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 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>
* | | | | | Merge branch 'sb/mailmap-updates'Junio C Hamano2013-08-051-0/+3
|\ \ \ \ \ \ | | |_|_|/ / | |/| | | | | | | | | | | | | | | | * sb/mailmap-updates: .mailmap: Multiple addresses of Michael S. Tsirkin
| * | | | | .mailmap: Multiple addresses of Michael S. TsirkinStefan Beller2013-08-051-0/+3
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 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>
* | | | | | Merge branch 'dn/test-reject-utf-16'Junio C Hamano2013-08-052-2/+2
|\ \ \ \ \ \ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | * dn/test-reject-utf-16: t3900: test rejecting log message with NULs correctly Add missing test file for UTF-16.
| * | | | | | t3900: test rejecting log message with NULs correctlydn/test-reject-utf-16Junio C Hamano2013-08-051-2/+2
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 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. Carlson2013-08-051-0/+0
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 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>
* | | | | | | Merge branch 'bc/commit-invalid-utf8'Junio C Hamano2013-08-051-1/+1
|\ \ \ \ \ \ \ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | * bc/commit-invalid-utf8: commit: typofix for xxFFF[EF] check
| * | | | | | | commit: typofix for xxFFF[EF] checkbc/commit-invalid-utf8Junio C Hamano2013-08-051-1/+1
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 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>
* | | | | | | | Merge branch 'rj/cygwin-clarify-use-of-cheating-lstat'Junio C Hamano2013-08-029-200/+2
|\ \ \ \ \ \ \ \ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 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
| * | | | | | | | cygwin: Remove the Win32 l/stat() implementationrj/cygwin-clarify-use-of-cheating-lstatRamsay Jones2013-07-189-200/+2
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Commit adbc0b6b ("cygwin: Use native Win32 API for stat", 30-09-2008) added a Win32 specific implementation of the stat functions. In order to handle absolute paths, cygwin mount points and symbolic links, this implementation may fall back on the standard cygwin l/stat() functions. Also, the choice of cygwin or Win32 functions is made lazily (by the first call(s) to l/stat) based on the state of some config variables. Unfortunately, this "schizophrenic stat" implementation has been the source of many problems ever since. For example, see commits 7faee6b8, 79748439, 452993c2, 085479e7, b8a97333, 924aaf3e, 05bab3ea and 0117c2f0. In order to avoid further problems, such as the issue raised by the new reference handling API, remove the Win32 l/stat() implementation. Signed-off-by: Ramsay Jones <ramsay@ramsay1.demon.co.uk> Signed-off-by: Junio C Hamano <gitster@pobox.com>
* | | | | | | | | Merge branch 'jk/cat-file-batch-optim'Junio C Hamano2013-08-023-34/+3
|\ \ \ \ \ \ \ \ \ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | * jk/cat-file-batch-optim: Revert "cat-file: split --batch input lines on whitespace"