c5c31d3 | Junio C Hamano | 03 October 2012, 21:47:48 UTC | grep: move pattern-type bits support to top-level grep.[ch] Switching between -E/-G/-P/-F correctly needs a lot more than just flipping opt->regflags bit these days, and we have a nice helper function buried in builtin/grep.c for the sole use of "git grep". Extract it so that "log --grep" family can also use it. Signed-off-by: Junio C Hamano <gitster@pobox.com> | 10 October 2012, 06:21:29 UTC |
7687a05 | Junio C Hamano | 09 October 2012, 23:17:50 UTC | grep: move the configuration parsing logic to grep.[ch] The configuration handling is a library-ish part of this program, that is not specific to "git grep" command. It should be reusable by "log" and others. Signed-off-by: Junio C Hamano <gitster@pobox.com> | 09 October 2012, 23:17:50 UTC |
15fabd1 | Junio C Hamano | 09 October 2012, 23:04:12 UTC | builtin/grep.c: make configuration callback more reusable The grep_config() function takes one instance of grep_opt as its callback parameter, and populates it by running git_config(). This has three practical implications: - You have to have an instance of grep_opt already when you call the configuration, but that is not necessarily always true. You may be trying to initialize the grep_filter member of rev_info, but are not ready to call init_revisions() on it yet. - It is not easy to enhance grep_config() in such a way to make it cascade to other callback functions to grab other variables in one call of git_config(); grep_config() can be cascaded into from other callbacks, but it has to be at the leaf level of a cascade. - If you ever need to use more than one instance of grep_opt, you will have to open and read the configuration file(s) every time you initialize them. Rearrange the configuration mechanism and model it after how diff configuration variables are handled. An early call to git_config() reads and remembers the values taken from the configuration in the default "template", and a separate call to grep_init() uses this template to instantiate a grep_opt. The next step will be to move some of this out of this file so that the other user of the grep machinery (i.e. "log") can use it. Signed-off-by: Junio C Hamano <gitster@pobox.com> | 09 October 2012, 23:04:12 UTC |
d64383a | Junio C Hamano | 09 October 2012, 21:23:45 UTC | Merge branch 'maint' * maint: l10n: de.po: fix a few minor typos | 09 October 2012, 21:23:45 UTC |
9979a50 | Øyvind A. Holm | 09 October 2012, 14:26:11 UTC | configure.ac: Add missing comma to CC_LD_DYNPATH 40bfbde ("build: don't duplicate substitution of make variables", 2012-09-11) by mistake removed a necessary comma at the end of "CC_LD_DYNPATH=-Wl,rpath," in line 414. When executing "./configure --with-zlib=PATH", this resulted in [...] CC xdiff/xhistogram.o AR xdiff/lib.a LINK git-credential-store /usr/bin/ld: bad -rpath option collect2: ld returned 1 exit status make: *** [git-credential-store] Error 1 $ during make. Signed-off-by: Øyvind A. Holm <sunny@sunbase.org> Acked-by: Stefano Lattarini <stefano.lattarini@gmail.com> Signed-off-by: Junio C Hamano <gitster@pobox.com> | 09 October 2012, 21:19:37 UTC |
7bfffdc | Junio C Hamano | 09 October 2012, 18:48:53 UTC | Merge branch 'maint' of git://github.com/git-l10n/git-po into maint * 'maint' of git://github.com/git-l10n/git-po: l10n: de.po: fix a few minor typos | 09 October 2012, 18:48:53 UTC |
d4a7ffa | Ben Walton | 08 October 2012, 08:08:01 UTC | tests: "cp -a" is a GNUism These tests just want a bit-for-bit identical copy; they do not need even -H (there is no symbolic link involved) nor -p (there is no funny permission or ownership issues involved). Just use "cp -R" instead. Signed-off-by: Ben Walton <bdwalton@gmail.com> Signed-off-by: Junio C Hamano <gitster@pobox.com> | 08 October 2012, 21:37:43 UTC |
6347e71 | Ramkumar Ramachandra | 08 October 2012, 17:26:53 UTC | Git url doc: mark ftp/ftps as read-only and deprecate them It is not even worth mentioning their removal; just discourage people from using them. Signed-off-by: Ramkumar Ramachandra <artagnon@gmail.com> Reviewed-by: Jonathan Nieder <jrnieder@gmail.com> Signed-off-by: Junio C Hamano <gitster@pobox.com> | 08 October 2012, 21:18:19 UTC |
4c6c949 | Junio C Hamano | 08 October 2012, 18:45:41 UTC | Git 1.8.0-rc1 Signed-off-by: Junio C Hamano <gitster@pobox.com> | 08 October 2012, 18:45:41 UTC |
d519e45 | Junio C Hamano | 08 October 2012, 18:43:10 UTC | Merge branch 'jc/maint-t1450-fsck-order-fix' The fsck test assumed too much on what kind of error it will detect. The only important thing is the inconsistency is detected as an error. * jc/maint-t1450-fsck-order-fix: t1450: the order the objects are checked is undefined | 08 October 2012, 18:43:10 UTC |
683a820 | Junio C Hamano | 08 October 2012, 18:42:15 UTC | Merge branch 'jc/merge-bases-paint-fix' "git fmt-merge-msg" (an internal helper reduce_heads() it uses) had a severe performance regression; an empty "git pull" took forever to finish as the result. * jc/merge-bases-paint-fix: paint_down_to_common(): parse commit before relying on its timestamp | 08 October 2012, 18:42:15 UTC |
5a333ad | Junio C Hamano | 08 October 2012, 18:41:21 UTC | Sync with 1.7.12.3 | 08 October 2012, 18:41:21 UTC |
234cd45 | Junio C Hamano | 08 October 2012, 18:40:43 UTC | Git 1.7.12.3 Signed-off-by: Junio C Hamano <gitster@pobox.com> | 08 October 2012, 18:40:43 UTC |
ff5702c | Junio C Hamano | 08 October 2012, 18:34:34 UTC | Merge branch 'os/commit-submodule-ignore' into maint "git status" honored the ignore=dirty settings in .gitmodules but "git commit" didn't. * os/commit-submodule-ignore: commit: pay attention to submodule.$name.ignore in .gitmodules | 08 October 2012, 18:34:34 UTC |
25c0890 | Junio C Hamano | 08 October 2012, 18:34:19 UTC | Merge branch 'jk/receive-pack-unpack-error-to-pusher' into maint "git receive-pack" (the counterpart to "git push") did not give progress output while processing objects it received to the puser when run over the smart-http protocol. * jk/receive-pack-unpack-error-to-pusher: receive-pack: drop "n/a" on unpacker errors receive-pack: send pack-processing stderr over sideband receive-pack: redirect unpack-objects stdout to /dev/null | 08 October 2012, 18:34:19 UTC |
9b4030c | Junio C Hamano | 08 October 2012, 18:34:02 UTC | Merge branch 'rt/maint-clone-single' into maint A repository created with "git clone --single" had its fetch refspecs set up just like a clone without "--single", leading the subsequent "git fetch" to slurp all the other branches, defeating the whole point of specifying "only this branch". * rt/maint-clone-single: clone --single: limit the fetch refspec to fetched branch | 08 October 2012, 18:34:02 UTC |
63c0c2c | Junio C Hamano | 08 October 2012, 18:33:35 UTC | Merge branch 'jc/blame-follows-renames' into maint It was unclear in the documentation for "git blame" that it is unnecessary for users to use the "--follow" option. * jc/blame-follows-renames: git blame: document that it always follows origin across whole-file renames | 08 October 2012, 18:33:35 UTC |
6e20357 | Junio C Hamano | 08 October 2012, 18:32:59 UTC | Merge branch 'lt/mailinfo-handle-attachment-more-sanely' into maint A patch attached as application/octet-stream (e.g. not text/*) were mishandled, not correctly honoring Content-Transfer-Encoding (e.g. base64). * lt/mailinfo-handle-attachment-more-sanely: mailinfo: don't require "text" mime type for attachments | 08 October 2012, 18:33:00 UTC |
866f5f8 | Nguyễn Thái Ngọc Duy | 07 October 2012, 03:13:54 UTC | gitignore.txt: suggestions how to get literal # or ! at the beginning We support backslash escape, but we hide the details behind the phrase "a shell glob suitable for consumption by fnmatch(3)". So it may not be obvious how one can get literal # or ! at the beginning of pattern. Add a few lines on how to work around the magic characters. Signed-off-by: Nguyễn Thái Ngọc Duy <pclouds@gmail.com> Signed-off-by: Junio C Hamano <gitster@pobox.com> | 07 October 2012, 23:15:19 UTC |
dc01f88 | Jonathan Nieder | 05 October 2012, 07:04:31 UTC | git-svn: keep leading slash when canonicalizing paths (fallback case) Subversion's svn_dirent_canonicalize() and svn_path_canonicalize() APIs keep a leading slash in the return value if one was present on the argument, which can be useful since it allows relative and absolute paths to be distinguished. When git-svn's canonicalize_path() learned to use these functions if available, its semantics changed in the corresponding way. Some new callers rely on the leading slash --- for example, if the slash is stripped out then _canonicalize_url_ourselves() will transform "proto://host/path/to/resource" to "proto://hostpath/to/resource". Unfortunately the fallback _canonicalize_path_ourselves(), used when the appropriate SVN APIs are not usable, still follows the old semantics, so if that code path is exercised then it breaks. Fix it to follow the new convention. Noticed by forcing the fallback on and running tests. Without this patch, t9101.4 fails: Bad URL passed to RA layer: Unable to open an ra_local session to \ URL: Local URL 'file://homejrnsrcgit-scratch/t/trash%20directory.\ t9101-git-svn-props/svnrepo' contains unsupported hostname at \ /home/jrn/src/git-scratch/perl/blib/lib/Git/SVN.pm line 148 With it, the git-svn tests pass again. Signed-off-by: Jonathan Nieder <jrnieder@gmail.com> Signed-off-by: Eric Wong <normalperson@yhbt.net> | 05 October 2012, 22:52:52 UTC |
52de6fa | Jonathan Nieder | 17 September 2012, 09:13:31 UTC | Git::SVN: rename private path field All users of $gs->{path} should have been converted to use the accessor by now. Check our work by renaming the underlying variable to break callers that try to use it directly. Signed-off-by: Jonathan Nieder <jrnieder@gmail.com> Signed-off-by: Eric Wong <normalperson@yhbt.net> | 05 October 2012, 22:48:12 UTC |
f304591 | Eric Wong | 18 September 2012, 00:09:31 UTC | git-svn: use path accessor for Git::SVN objects The accessors should improve maintainability and enforce consistent access to Git::SVN objects. Signed-off-by: Eric Wong <normalperson@yhbt.net> Reviewed-by: Jonathan Nieder <jrnieder@gmail.com> | 05 October 2012, 22:48:12 UTC |
9478b11 | Ammon Riley | 30 August 2012, 22:53:57 UTC | Make git-svn branch patterns match complete URL When using the {word,[...]} style of configuration for tags and branches, it appears the intent is to only match whole path parts, since the words in the {} pattern are meta-character quoted. When the pattern word appears in the beginning or middle of the url, it's matched completely, since the left side, pattern, and (non-empty) right side are joined together with path separators. However, when the pattern word appears at the end of the URL, the right side is an empty pattern, and the resulting regex matches more than just the specified pattern. For example, if you specify something along the lines of branches = branches/project/{release_1,release_2} and your repository also contains "branches/project/release_1_2", you will also get the release_1_2 branch. By restricting the match regex with anchors, this is avoided. Signed-off-by: Ammon Riley <ammon.riley@gmail.com> Signed-off-by: Eric Wong <normalperson@yhbt.net> | 05 October 2012, 22:48:12 UTC |
a967cb1 | Robert Luberda | 19 August 2012, 22:43:19 UTC | t9164: Add missing quotes in test This fixes `ambiguous redirect' error given by bash. [ew: fix misspelled test name, also eliminate space after ">>" to conform to guidelines] Signed-off-by: Eric Wong <normalperson@yhbt.net> | 05 October 2012, 22:48:12 UTC |
14d3ce1 | Steven Walter | 20 August 2012, 01:39:41 UTC | git-svn.perl: keep processing all commits in parents_exclude This fixes a bug where git finds the incorrect merge parent. Consider a repository with trunk, branch1 of trunk, and branch2 of branch1. Without this change, git interprets a merge of branch2 into trunk as a merge of branch1 into trunk. Signed-off-by: Steven Walter <stevenrwalter@gmail.com> Reviewed-by: Sam Vilain <sam@vilain.net> Signed-off-by: Eric Wong <normalperson@yhbt.net> | 05 October 2012, 22:48:12 UTC |
f271fad | Steven Walter | 20 August 2012, 01:39:40 UTC | git-svn.perl: consider all ranges for a given merge, instead of only tip-by-tip Consider the case where you have trunk, branch1 of trunk, and branch2 of branch1. trunk is merged back into branch2, and then branch2 is reintegrated into trunk. The merge of branch2 into trunk will have svn:mergeinfo property references to both branch1 and branch2. When git-svn fetches the commit that merges branch2 (check_cherry_pick), it is necessary to eliminate the merged contents of branch1 as well as branch2, or else the merge will be incorrectly ignored as a cherry-pick. Signed-off-by: Steven Walter <stevenrwalter@gmail.com> Reviewed-by: Sam Vilain <sam@vilain.net> Signed-off-by: Eric Wong <normalperson@yhbt.net> | 05 October 2012, 22:48:12 UTC |
30462a7 | Junio C Hamano | 04 October 2012, 17:13:49 UTC | gitcli: parse-options lets you omit tail of long options Describe the behaviour, but do warn people against taking it too literally and expect an abbreviation valid today will stay valid forever. Signed-off-by: Junio C Hamano <gitster@pobox.com> | 05 October 2012, 03:30:27 UTC |
d866924 | Junio C Hamano | 04 October 2012, 22:37:15 UTC | paint_down_to_common(): parse commit before relying on its timestamp When refactoring the merge-base computation to reduce the pairwise O(n*(n-1)) traversals to parallel O(n) traversals, the code forgot that timestamp based heuristics needs each commit to have been parsed. This caused an empty "git pull" to spend cycles, traversing the history all the way down to 0 (because an unparsed commit object has 0 timestamp, and any other commit object with positive timestamp will be processed for its parents, all getting parsed), only to come up with a merge message to be used. Signed-off-by: Junio C Hamano <gitster@pobox.com> | 04 October 2012, 22:49:39 UTC |
01cd63c | Simon Ruderich | 04 October 2012, 14:23:14 UTC | l10n: de.po: fix a few minor typos Signed-off-by: Simon Ruderich <simon@ruderich.org> Signed-off-by: Ralf Thielow <ralf.thielow@gmail.com> | 04 October 2012, 17:13:43 UTC |
f84667d | Junio C Hamano | 03 October 2012, 04:18:40 UTC | Update draft release notes to 1.8.0 Signed-off-by: Junio C Hamano <gitster@pobox.com> | 03 October 2012, 04:18:40 UTC |
fa11d7c | Junio C Hamano | 03 October 2012, 04:13:39 UTC | Merge branch 'nd/grep-reflog' Teach the commands from the "log" family the "--grep-reflog" option to limit output by string that appears in the reflog entry when the "--walk-reflogs" option is in effect. * nd/grep-reflog: revision: make --grep search in notes too if shown log --grep-reflog: reject the option without -g revision: add --grep-reflog to filter commits by reflog messages grep: prepare for new header field filter | 03 October 2012, 04:13:39 UTC |
5ce993a | Junio C Hamano | 03 October 2012, 04:13:35 UTC | Merge branch 'lt/mailinfo-handle-attachment-more-sanely' A patch attached as application/octet-stream (e.g. not text/*) were mishandled, not correctly honoring Content-Transfer-Encoding (e.g. base64). * lt/mailinfo-handle-attachment-more-sanely: mailinfo: don't require "text" mime type for attachments | 03 October 2012, 04:13:35 UTC |
9ac54d0 | Junio C Hamano | 03 October 2012, 04:13:27 UTC | Merge branch 'tu/gc-auto-quiet' "gc --auto" notified the user that auto-packing has triggered even under the "--quiet" option. * tu/gc-auto-quiet: silence git gc --auto --quiet output | 03 October 2012, 04:13:27 UTC |
9dad83b | Junio C Hamano | 02 October 2012, 22:08:16 UTC | t1450: the order the objects are checked is undefined When a tag T points at an object X that is of a type that is different from what the tag records as, fsck should report it as an error. However, depending on the order X and T are checked individually, the actual error message can be different. If X is checked first, fsck remembers X's type and then when it checks T, it notices that T records X as a wrong type (i.e. the complaint is about a broken tag T). If T is checked first, on the other hand, fsck remembers that we need to verify X is of the type tag records, and when it later checks X, it notices that X is of a wrong type (i.e. the complaint is about a broken object X). The important thing is that fsck notices such an error and diagnoses the issue on object X, but the test was expecting that we happen to check objects in the order to make us detect issues with tag T, not with object X. Remove this unwarranted assumption. Signed-off-by: Junio C Hamano <gitster@pobox.com> | 02 October 2012, 22:08:16 UTC |
b65f30b | Junio C Hamano | 02 October 2012, 20:47:30 UTC | Merge branch 'maint' | 02 October 2012, 20:47:30 UTC |
9376c86 | Junio C Hamano | 02 October 2012, 20:44:59 UTC | Start preparing for 1.7.12.3 Signed-off-by: Junio C Hamano <gitster@pobox.com> | 02 October 2012, 20:44:59 UTC |
e2c7a5b | Junio C Hamano | 02 October 2012, 20:42:32 UTC | Merge branch 'rr/maint-submodule-unknown-cmd' into maint "git submodule frotz" was not diagnosed as "frotz" being an unknown subcommand to "git submodule"; the user instead got a complaint that "git submodule status" was run with an unknown path "frotz". * rr/maint-submodule-unknown-cmd: submodule: if $command was not matched, don't parse other args | 02 October 2012, 20:42:32 UTC |
0a65df5 | Junio C Hamano | 02 October 2012, 20:42:13 UTC | Merge branch 'sp/maint-http-enable-gzip' into maint "git fetch" over http advertised that it supports "deflate", which is much less common, and did not advertise more common "gzip" on its Accept-Encoding header. * sp/maint-http-enable-gzip: Enable info/refs gzip decompression in HTTP client | 02 October 2012, 20:42:14 UTC |
8a477dd | Junio C Hamano | 02 October 2012, 20:41:38 UTC | Merge branch 'sp/maint-http-info-refs-no-retry' into maint "git fetch" over http had an old workaround for an unlikely server misconfiguration; it turns out that this hurts debuggability of the configuration in general, and has been reverted. * sp/maint-http-info-refs-no-retry: Revert "retry request without query when info/refs?query fails" | 02 October 2012, 20:41:38 UTC |
a907309 | Peter Krefting | 02 October 2012, 07:25:32 UTC | l10n: Fix to Swedish translation Fix bad translation of "Receiving objects". Signed-off-by: Peter Krefting <peter@softwolves.pp.se> Signed-off-by: Junio C Hamano <gitster@pobox.com> | 02 October 2012, 19:39:55 UTC |
1ec6f48 | Ramkumar Ramachandra | 02 October 2012, 15:38:00 UTC | Documentation: mention `push.default` in git-push.txt It already is listed in the "git config" documentation, but people interested in pushing would first look at "git push" documentation. Noticed-by: David Glasser Signed-off-by: Ramkumar Ramachandra <artagnon@gmail.com> Acked-by: Matthieu Moy <Matthieu.Moy@grenoble-inp.fr> Fixed-by: Junio C Hamano <gitster@pobox.com> Signed-off-by: Junio C Hamano <gitster@pobox.com> | 02 October 2012, 19:07:44 UTC |
d117dd2 | Michael J Gruber | 02 October 2012, 14:35:55 UTC | RelNotes/1.8.0: various typo and style fixes Signed-off-by: Michael J Gruber <git@drmicha.warpmail.net> Signed-off-by: Junio C Hamano <gitster@pobox.com> | 02 October 2012, 17:17:25 UTC |
b0ec16b | Junio C Hamano | 01 October 2012, 20:09:47 UTC | Git 1.8.0-rc0 Signed-off-by: Junio C Hamano <gitster@pobox.com> | 01 October 2012, 20:09:47 UTC |
abc05cb | Junio C Hamano | 01 October 2012, 19:59:10 UTC | Merge branch 'jk/completion-tests' * jk/completion-tests: t9902: add completion tests for "odd" filenames t9902: add a few basic completion tests | 01 October 2012, 19:59:11 UTC |
70dac5f | Junio C Hamano | 01 October 2012, 19:59:06 UTC | Merge branch 'ep/malloc-check-perturb' Fixes a brown-paper bag bug. * ep/malloc-check-perturb: MALLOC_CHECK: enable it, unless disabled explicitly | 01 October 2012, 19:59:06 UTC |
5ec11ab | Junio C Hamano | 01 October 2012, 19:58:57 UTC | Merge branch 'da/mergetool-custom' The actual external command to run for mergetool backend can be specified with difftool/mergetool.$name.cmd configuration variables, but this mechanism was ignored for the backends we natively support. * da/mergetool-custom: mergetool--lib: Allow custom commands to override built-ins | 01 October 2012, 19:58:57 UTC |
6975991 | Junio C Hamano | 01 October 2012, 19:58:51 UTC | Merge branch 'os/commit-submodule-ignore' "git status" honored the ignore=dirty settings in .gitmodules but "git commit" didn't. * os/commit-submodule-ignore: commit: pay attention to submodule.$name.ignore in .gitmodules | 01 October 2012, 19:58:52 UTC |
4dbf436 | Junio C Hamano | 01 October 2012, 19:58:43 UTC | Merge branch 'jc/blame-follows-renames' Clarify the "blame" documentation to tell the users that there is no need to ask for "--follow". * jc/blame-follows-renames: git blame: document that it always follows origin across whole-file renames | 01 October 2012, 19:58:43 UTC |
03b98d2 | Junio C Hamano | 01 October 2012, 19:58:34 UTC | Merge branch 'jk/receive-pack-unpack-error-to-pusher' Send errors from "unpack-objects" and "index-pack" back to the "git push" over the git and smart-http protocols, just like it is done for a push over the ssh protocol. * jk/receive-pack-unpack-error-to-pusher: receive-pack: drop "n/a" on unpacker errors receive-pack: send pack-processing stderr over sideband receive-pack: redirect unpack-objects stdout to /dev/null | 01 October 2012, 19:58:34 UTC |
92f6e98 | Junio C Hamano | 01 October 2012, 19:58:10 UTC | Merge branch 'rt/maint-clone-single' Running "git fetch" in a repository made with "git clone --single" slurps all the branches, defeating the point of "--single". * rt/maint-clone-single: clone --single: limit the fetch refspec to fetched branch | 01 October 2012, 19:58:10 UTC |
0971e99 | Ben Walton | 30 September 2012, 19:44:36 UTC | Remove the hard coded length limit on variable names in config files Previously while reading the variable names in config files, there was a 256 character limit with at most 128 of those characters being used by the section header portion of the variable name. This limitation was only enforced while reading the config files. It was possible to write a config file that was not subsequently readable. Instead of enforcing this limitation for both reading and writing, remove it entirely by changing the var member of the config_file struct to a strbuf instead of a fixed length buffer. Update all of the parsing functions in config.c to use the strbuf instead of the static buffer. The parsing functions that returned the base length of the variable name now return simply 0 for success and -1 for failure. The base length information is obtained through the strbuf's len member. We now send the buf member of the strbuf to external callback functions to preserve the external api. None of the external callers rely on the old size limitation for sizing their own buffers so removing the limit should have no externally visible effect. Signed-off-by: Ben Walton <bdwalton@gmail.com> Signed-off-by: Junio C Hamano <gitster@pobox.com> | 01 October 2012, 19:27:45 UTC |
9d55b2e | Linus Torvalds | 30 September 2012, 22:10:48 UTC | mailinfo: don't require "text" mime type for attachments Currently "git am" does insane things if the mbox it is given contains attachments with a MIME type that aren't "text/*". In particular, it will still decode them, and pass them "one line at a time" to the mail body filter, but because it has determined that they aren't text (without actually looking at the contents, just at the mime type) the "line" will be the encoding line (eg 'base64') rather than a line of *content*. Which then will cause the text filtering to fail, because we won't correctly notice when the attachment text switches from the commit message to the actual patch. Resulting in a patch failure, even if patch may be a perfectly well-formed attachment, it's just that the message type may be (for example) "application/octet-stream" instead of "text/plain". Just remove all the bogus games with the message_type. The only difference that code creates is how the data is passed to the filter function (chunked per-pred-code line or per post-decode line), and that difference is *wrong*, since chunking things per pre-decode line can never be a sensible operation, and cannot possibly matter for binary data anyway. This code goes all the way back to March of 2007, in commit 87ab79923463 ("builtin-mailinfo.c infrastrcture changes"), and apparently Don used to pass random mbox contents to git. However, the pre-decode vs post-decode logic really shouldn't matter even for that case, and more importantly, "I fed git am crap" is not a valid reason to break *real* patch attachments. If somebody really cares, and determines that some attachment is binary data (by looking at the data, not the MIME-type), the whole attachment should be dismissed, rather than fed in random-sized chunks to "handle_filter()". Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org> Cc: Don Zickus <dzickus@redhat.com> Signed-off-by: Junio C Hamano <gitster@pobox.com> | 01 October 2012, 00:29:27 UTC |
261b511 | Junio C Hamano | 30 September 2012, 06:28:20 UTC | Merge git://github.com/git-l10n/git-po * 'master' of git://github.com/git-l10n/git-po: l10n: Fixes to Swedish translation Update Swedish translation (1967t0f0u) l10n: zh.CN.po: msgmerge git.pot (1142t195f630u) l10n: Update git.pot (825 new, 24 removed messages) | 30 September 2012, 06:29:19 UTC |
f65ed83 | Junio C Hamano | 30 September 2012, 05:50:53 UTC | Update draft release notes to 1.8.0 Signed-off-by: Junio C Hamano <gitster@pobox.com> | 30 September 2012, 06:25:09 UTC |
28de297 | Junio C Hamano | 30 September 2012, 06:22:53 UTC | Sync with 1.7.12.2 Signed-off-by: Junio C Hamano <gitster@pobox.com> | 30 September 2012, 06:22:53 UTC |
d8cf053 | Junio C Hamano | 30 September 2012, 05:33:25 UTC | Git 1.7.12.2 Signed-off-by: Junio C Hamano <gitster@pobox.com> | 30 September 2012, 06:20:47 UTC |
d4018a5 | Junio C Hamano | 30 September 2012, 06:20:13 UTC | Merge branch 'maint' of git://github.com/git-l10n/git-po into maint Update German and Simplified Chinese translations. * 'maint' of git://github.com/git-l10n/git-po: l10n: de.po: correct translation of a 'rebase' message l10n: Improve many translation for zh_CN l10n: Unify the translation for '(un)expected' | 30 September 2012, 06:20:13 UTC |
31d69db | Junio C Hamano | 30 September 2012, 05:30:56 UTC | Merge branch 'jc/maint-log-grep-all-match-1' into maint * jc/maint-log-grep-all-match-1: grep.c: make two symbols really file-scope static this time t7810-grep: test --all-match with multiple --grep and --author options t7810-grep: test interaction of multiple --grep and --author options t7810-grep: test multiple --author with --all-match t7810-grep: test multiple --grep with and without --all-match t7810-grep: bring log --grep tests in common form grep.c: mark private file-scope symbols as static log: document use of multiple commit limiting options log --grep/--author: honor --all-match honored for multiple --grep patterns grep: show --debug output only once grep: teach --debug option to dump the parse tree | 30 September 2012, 05:30:56 UTC |
52938b1 | Junio C Hamano | 30 September 2012, 05:30:47 UTC | Merge branch 'jc/maint-mailinfo-mime-attr' into maint * jc/maint-mailinfo-mime-attr: mailinfo: do not concatenate charset= attribute values from mime headers | 30 September 2012, 05:30:48 UTC |
da5a2bd | Junio C Hamano | 30 September 2012, 05:28:32 UTC | Merge branch 'rr/maint-submodule-unknown-cmd' * rr/maint-submodule-unknown-cmd: submodule: if $command was not matched, don't parse other args | 30 September 2012, 05:28:33 UTC |
f06e207 | Junio C Hamano | 30 September 2012, 05:28:28 UTC | Merge branch 'rs/archive-zip-utf8' With another reroll, it looks like the series is as polished as it could be. * rs/archive-zip-utf8: archive-zip: write extended timestamp archive-zip: support UTF-8 paths Revert "archive-zip: support UTF-8 paths" archive-zip: support UTF-8 paths | 30 September 2012, 05:28:28 UTC |
fb1e4a8 | Junio C Hamano | 30 September 2012, 05:28:24 UTC | Merge branch 'jk/smart-http-switch' Allows users to turn off smart-http when talking to dumb-only servers. * jk/smart-http-switch: remote-curl: let users turn off smart http remote-curl: rename is_http variable | 30 September 2012, 05:28:25 UTC |
c318040 | Junio C Hamano | 30 September 2012, 05:28:20 UTC | Merge branch 'sp/maint-http-enable-gzip' Allows a more common 'gzip' Accept-Encoding to be used. * sp/maint-http-enable-gzip: Enable info/refs gzip decompression in HTTP client | 30 September 2012, 05:28:20 UTC |
d9c7314 | Junio C Hamano | 30 September 2012, 05:28:16 UTC | Merge branch 'sp/maint-http-info-refs-no-retry' Kills an old workaround for a unlikely server misconfiguration that hurts debuggability. * sp/maint-http-info-refs-no-retry: Revert "retry request without query when info/refs?query fails" | 30 September 2012, 05:28:16 UTC |
68a31b7 | Junio C Hamano | 30 September 2012, 05:28:12 UTC | Merge branch 'aw/rebase-i-edit-todo' Teach an option to edit the insn sheet to "git rebase -i". * aw/rebase-i-edit-todo: rebase -i: suggest using --edit-todo to fix an unknown instruction rebase -i: Add tests for "--edit-todo" rebase -i: Teach "--edit-todo" action rebase -i: Refactor help messages for todo file rebase usage: subcommands can not be combined with -i | 30 September 2012, 05:28:12 UTC |
f5fd2a7 | Junio C Hamano | 30 September 2012, 05:28:05 UTC | Merge branch 'js/rebase-exec-command-not-found' * js/rebase-exec-command-not-found: rebase -i: fix misleading error message after 'exec no-such' instruction | 30 September 2012, 05:28:05 UTC |
a275e82 | Junio C Hamano | 30 September 2012, 05:27:56 UTC | Merge branch 'rr/test-use-shell-path-not-shell' Fixes a brown-paper bag bug. * rr/test-use-shell-path-not-shell: test-lib: use $SHELL_PATH, not $SHELL | 30 September 2012, 05:27:56 UTC |
38cfe91 | Nguyễn Thái Ngọc Duy | 29 September 2012, 04:41:29 UTC | revision: make --grep search in notes too if shown Notes are shown after commit body. From user perspective it looks pretty much like commit body and they may assume --grep would search in that part too. Make it so. Signed-off-by: Nguyễn Thái Ngọc Duy <pclouds@gmail.com> Signed-off-by: Junio C Hamano <gitster@pobox.com> | 29 September 2012, 19:15:05 UTC |
baa6378 | Junio C Hamano | 29 September 2012, 18:59:52 UTC | log --grep-reflog: reject the option without -g Signed-off-by: Junio C Hamano <gitster@pobox.com> | 29 September 2012, 19:07:04 UTC |
72fd13f | Nguyễn Thái Ngọc Duy | 29 September 2012, 04:41:28 UTC | revision: add --grep-reflog to filter commits by reflog messages Similar to --author/--committer which filters commits by author and committer header fields. --grep-reflog adds a fake "reflog" header to commit and a grep filter to search on that line. All rules to --author/--committer apply except no timestamp stripping. Signed-off-by: Nguyễn Thái Ngọc Duy <pclouds@gmail.com> Signed-off-by: Junio C Hamano <gitster@pobox.com> | 29 September 2012, 18:41:14 UTC |
ad4813b | Nguyễn Thái Ngọc Duy | 29 September 2012, 04:41:27 UTC | grep: prepare for new header field filter grep supports only author and committer headers, which have the same special treatment that later headers may or may not have. Check for field type and only strip_timestamp() when the field is either author or committer. GREP_HEADER_FIELD_MAX is put in the grep_header_field enum to be calculated automatically, correctly, as long as it's at the end of the enum. Signed-off-by: Nguyễn Thái Ngọc Duy <pclouds@gmail.com> Signed-off-by: Junio C Hamano <gitster@pobox.com> | 29 September 2012, 18:40:58 UTC |
df995c7 | Tobias Ulmer | 24 September 2012, 02:40:24 UTC | silence git gc --auto --quiet output When --quiet is requested, gc --auto should not display messages unless there is an error. Signed-off-by: Tobias Ulmer <tobiasu@tmux.org> Acked-by: Jeff King <peff@peff.net> Signed-off-by: Junio C Hamano <gitster@pobox.com> | 28 September 2012, 00:57:26 UTC |
bafed0d | Jeff King | 26 September 2012, 21:51:06 UTC | t9902: add completion tests for "odd" filenames We correctly handle completion items with spaces just fine, since we pass the lists around with newline delimiters. However, we do not handle filenames with shell metacharacters, as "compgen -W" performs expansion on the list we give it. Signed-off-by: Jeff King <peff@peff.net> Signed-off-by: Junio C Hamano <gitster@pobox.com> | 28 September 2012, 00:25:52 UTC |
49ba92b | Jeff King | 26 September 2012, 21:47:51 UTC | t9902: add a few basic completion tests We were not testing ref or tree completion at all. Let's give them even basic sanity checks to avoid regressions. Signed-off-by: Jeff King <peff@peff.net> Signed-off-by: Junio C Hamano <gitster@pobox.com> | 28 September 2012, 00:25:48 UTC |
b2f4b6c | Jiang Xin | 27 September 2012, 23:03:43 UTC | Merge git://github.com/gotgit/git-po-zh_CN * git://github.com/gotgit/git-po-zh_CN: l10n: zh.CN.po: msgmerge git.pot (1142t195f630u) | 27 September 2012, 23:03:43 UTC |
4d8e8ed | Jiang Xin | 27 September 2012, 22:53:54 UTC | Merge branch 'maint' * maint: l10n: de.po: correct translation of a 'rebase' message l10n: Improve many translation for zh_CN l10n: Unify the translation for '(un)expected' | 27 September 2012, 22:53:54 UTC |
5b3ba71 | Jiang Xin | 27 September 2012, 22:49:08 UTC | Merge branch 'l10n-thynson' of git://github.com/thynson/git-po-zh_CN into maint * 'l10n-thynson' of git://github.com/thynson/git-po-zh_CN: l10n: Improve many translation for zh_CN l10n: Unify the translation for '(un)expected' | 27 September 2012, 22:49:08 UTC |
173c173 | Jiang Xin | 27 September 2012, 22:30:11 UTC | Merge branch 'maint' of https://github.com/ralfth/git-po-de into maint * 'maint' of https://github.com/ralfth/git-po-de: l10n: de.po: correct translation of a 'rebase' message | 27 September 2012, 22:30:11 UTC |
5f38e5e | Ralf Thielow | 24 September 2012, 17:16:21 UTC | l10n: de.po: correct translation of a 'rebase' message Noticed-by: Sascha Cunz <sascha-ml@babbelbox.org> Signed-off-by: Ralf Thielow <ralf.thielow@gmail.com> | 27 September 2012, 18:58:51 UTC |
ee1431b | René Scharfe | 26 September 2012, 20:16:39 UTC | MALLOC_CHECK: enable it, unless disabled explicitly The malloc checks in tests are currently disabled. Actually evaluate the variable for turning them off and enable them if it's unset. Also use this opportunity to give it the more descriptive and consistent name TEST_NO_MALLOC_CHECK. Signed-off-by: Rene Scharfe <rene.scharfe@lsrfire.ath.cx> Signed-off-by: Junio C Hamano <gitster@pobox.com> | 27 September 2012, 06:39:13 UTC |
4e02667 | Peter Krefting | 26 September 2012, 07:06:36 UTC | l10n: Fixes to Swedish translation Fix bad translation of "Receiving objects". Make translation of push.default message narrower, to make it fit 80 columns even when prefixed. Signed-off-by: Peter Krefting <peter@softwolves.pp.se> | 26 September 2012, 07:06:36 UTC |
af9c9f9 | Ramkumar Ramachandra | 22 September 2012, 11:27:59 UTC | submodule: if $command was not matched, don't parse other args "git submodule" command DWIMs the command line and assumes a unspecified action word for 'status' action. This is a UI mistake that leads to a confusing behaviour. A mistyped command name is instead treated as a request for 'status' of the submodule with that name, e.g. $ git submodule show error: pathspec 'show' did not match any file(s) known to git. Did you forget to 'git add'? Stop DWIMming an unknown or mistyped subcommand name as pathspec given to unspelled "status" subcommand. "git submodule" without any argument is still interpreted as "git submodule status", but its value is questionable. Adjust t7400 to match, and stop advertising the default subcommand being 'status' which does not help much in practice, other than promoting laziness and confusion. Signed-off-by: Ramkumar Ramachandra <artagnon@gmail.com> Signed-off-by: Junio C Hamano <gitster@pobox.com> | 25 September 2012, 18:31:48 UTC |
652398a | Junio C Hamano | 25 September 2012, 17:44:32 UTC | Update draft release notes to 1.8.0 Signed-off-by: Junio C Hamano <gitster@pobox.com> | 25 September 2012, 17:44:32 UTC |
86bdfa3 | Junio C Hamano | 25 September 2012, 17:40:24 UTC | Merge branch 'rr/test-make-sure-we-have-git' Only the first test t0000 in the test suite made sure we have built Git to be tested; move the check to test-lib so that it applies to all tests equally. * rr/test-make-sure-we-have-git: t/test-lib: make sure Git has already been built | 25 September 2012, 17:40:24 UTC |
cbea001 | Junio C Hamano | 25 September 2012, 17:40:21 UTC | Merge branch 'js/hp-nonstop' Port to HP NonStop aka Tandem. * js/hp-nonstop: Port to HP NonStop | 25 September 2012, 17:40:21 UTC |
d782797 | Junio C Hamano | 25 September 2012, 17:40:18 UTC | Merge branch 'js/poll-emu' * js/poll-emu: make poll() work on platforms that can't recv() on a non-socket poll() exits too early with EFAULT if 1st arg is NULL fix some win32 specific dependencies in poll.c make poll available for other platforms lacking it | 25 September 2012, 17:40:18 UTC |
0ec6aa5 | Junio C Hamano | 25 September 2012, 17:40:14 UTC | Merge branch 'ep/malloc-check-perturb' Run our test scripts with MALLOC_CHECK_ and MALLOC_PERTURB_, the built-in memory access checking facility GNU libc has. * ep/malloc-check-perturb: MALLOC_CHECK: various clean-ups Add MALLOC_CHECK_ and MALLOC_PERTURB_ libc env to the test suite for detecting heap corruption | 25 September 2012, 17:40:15 UTC |
c4eed86 | Junio C Hamano | 25 September 2012, 17:40:11 UTC | Merge branch 'aj/xfuncname-ada' * aj/xfuncname-ada: Add userdiff patterns for Ada | 25 September 2012, 17:40:11 UTC |
b1bb02d | Junio C Hamano | 25 September 2012, 17:39:56 UTC | Merge branch 'jc/maint-mailinfo-mime-attr' When "git am" is fed an input that has multiple "Content-type: ..." header, it did not grok charset= attribute correctly. * jc/maint-mailinfo-mime-attr: mailinfo: do not concatenate charset= attribute values from mime headers | 25 September 2012, 17:39:56 UTC |
ff91dbb | Junio C Hamano | 25 September 2012, 17:39:52 UTC | Merge branch 'po/maint-docs' Various documentation fixups. * po/maint-docs: Doc branch: show -vv option and alternative Doc clean: add See Also link Doc add: link gitignore Doc: separate gitignore pattern sources Doc: shallow clone deepens _to_ new depth | 25 September 2012, 17:39:52 UTC |
8ccd4b6 | Junio C Hamano | 25 September 2012, 17:39:48 UTC | Merge branch 'db/doc-custom-xmlto' * db/doc-custom-xmlto: Documentation/Makefile: Allow custom XMLTO binary | 25 September 2012, 17:39:48 UTC |
8e609b2 | Junio C Hamano | 25 September 2012, 17:25:52 UTC | Merge branch 'maint' * maint: Revert "completion: fix shell expansion of items" | 25 September 2012, 17:25:52 UTC |
4cde519 | Ramkumar Ramachandra | 22 September 2012, 04:55:10 UTC | test-lib: use $SHELL_PATH, not $SHELL The codepath for handling "--tee" ends up relaunching the test script under a shell, and that one has to be a Bourne. But we incorrectly used $SHELL, which could be a non-Bourne (e.g. zsh or csh); we have the Makefile variable $SHELL_PATH for exactly that, so use it instead. Signed-off-by: Ramkumar Ramachandra <artagnon@gmail.com> Signed-off-by: Junio C Hamano <gitster@pobox.com> | 25 September 2012, 17:17:29 UTC |
a427ef7 | David Aguilar | 25 September 2012, 07:48:11 UTC | mergetool--lib: Allow custom commands to override built-ins Allow users to override the default commands provided by the mergetools/* scriptlets. Users occasionally run into problems where they expect to be able to override the built-in tool names. The documentation does not explicitly mention that built-ins cannot be overridden, so it's easy to assume that it should work. Lift this restriction so that built-in tools are handled the same way as user-configured tools. Add tests to guarantee this behavior. A nice benefit of this change is that it protects users from having future versions of git trump their custom configuration with a new built-in tool. C.f.: http://stackoverflow.com/questions/7435002/mergetool-from-gitconfig-being-ignored http://thread.gmane.org/gmane.comp.version-control.msysgit/13188 http://thread.gmane.org/gmane.comp.version-control.git/148267 Signed-off-by: David Aguilar <davvid@gmail.com> Signed-off-by: Junio C Hamano <gitster@pobox.com> | 25 September 2012, 16:04:39 UTC |
666ca59 | Jeff King | 25 September 2012, 04:31:19 UTC | Revert "completion: fix shell expansion of items" This reverts commit 25ae7cfd19c8f21721363c64163cd5d9d1135b20. That patch does fix expansion of weird variables in some simple tests, but it also seems to break other things, like expansion of refs by "git checkout". While we're sorting out the correct solution, we are much better with the original bug (people with metacharacters in their completions occasionally see an error message) than the current bug (ref completion does not work at all). Signed-off-by: Jeff King <peff@peff.net> Signed-off-by: Junio C Hamano <gitster@pobox.com> | 25 September 2012, 16:00:28 UTC |
b5d156c | Junio C Hamano | 24 September 2012, 19:50:36 UTC | Sync with maint | 24 September 2012, 19:50:36 UTC |
1a002c7 | Junio C Hamano | 24 September 2012, 19:50:00 UTC | Start preparation for 1.7.12.2 Signed-off-by: Junio C Hamano <gitster@pobox.com> | 24 September 2012, 19:50:00 UTC |
140011d | Junio C Hamano | 24 September 2012, 19:40:02 UTC | Merge branch 'jc/maint-blame-no-such-path' into maint Even during a conflicted merge, "git blame $path" always meant to blame uncommitted changes to the "working tree" version; make it more useful by showing cleanly merged parts as coming from the other branch that is being merged. This incidentally fixes an unrelated problem on a case insensitive filesystem, where "git blame MAKEFILE" run in a history that has "Makefile" but not "MAKEFILE" did not say "No such file MAKEFILE in HEAD" but pretended as if "MAKEFILE" was a newly added file. * jc/maint-blame-no-such-path: blame: allow "blame file" in the middle of a conflicted merge blame $path: avoid getting fooled by case insensitive filesystems | 24 September 2012, 19:40:02 UTC |
8144049 | Junio C Hamano | 24 September 2012, 19:39:21 UTC | Merge branch 'dj/fetch-all-tags' into maint "git fetch --all", when passed "--no-tags", did not honor the "--no-tags" option while fetching from individual remotes (the same issue existed with "--tags", but combination "--all --tags" makes much less sense than "--all --no-tags"). * dj/fetch-all-tags: fetch --all: pass --tags/--no-tags through to each remote submodule: use argv_array instead of hand-building arrays fetch: use argv_array instead of hand-building arrays argv-array: fix bogus cast when freeing array argv-array: add pop function | 24 September 2012, 19:39:21 UTC |
f9db192 | Jonathan "Duke" Leto | 24 September 2012, 17:41:26 UTC | Improve the description of GIT_PS1_SHOWUPSTREAM Describe what '=' means in the output of __git_ps1 when using GIT_PS1_SHOWUPSTREAM, which was not previously described. Signed-off-by: Jonathan "Duke" Leto <jonathan@leto.net> Signed-off-by: Junio C Hamano <gitster@pobox.com> | 24 September 2012, 19:38:41 UTC |