0da3e1d | Yann Dirson | 07 July 2009, 20:22:22 UTC | git-svn.txt: fix description of fetch flags accepted by clone. Signed-off-by: Yann Dirson <ydirson@altern.org> Acked-by: Eric Wong <normalperson@yhbt.net> Signed-off-by: Junio C Hamano <gitster@pobox.com> | 08 July 2009, 17:42:27 UTC |
eb1f7e0 | Yann Dirson | 07 July 2009, 20:22:21 UTC | git-svn.txt: fix fetch flags incorrectly documented as init flags. Signed-off-by: Yann Dirson <ydirson@altern.org> Acked-by: Eric Wong <normalperson@yhbt.net> Signed-off-by: Junio C Hamano <gitster@pobox.com> | 08 July 2009, 17:42:27 UTC |
6c32a7a | Yann Dirson | 07 July 2009, 20:22:20 UTC | git-svn.txt: make formatting more consistent. - correctly link paragraphs within list items - consistently format examples - put option alernatives on separate lines - always use [verse] for config items - always indent 1st paragraph of a list item, with a tab Signed-off-by: Yann Dirson <ydirson@altern.org> Acked-by: Eric Wong <normalperson@yhbt.net> Signed-off-by: Junio C Hamano <gitster@pobox.com> | 08 July 2009, 17:42:27 UTC |
647ac70 | Yann Dirson | 07 July 2009, 20:22:19 UTC | git-svn.txt: stop using dash-form of commands. Also consistently use single quotes around git commands to make things clear (was only needed at a couple of places). Signed-off-by: Yann Dirson <ydirson@altern.org> Acked-by: Eric Wong <normalperson@yhbt.net> Signed-off-by: Junio C Hamano <gitster@pobox.com> | 08 July 2009, 17:42:27 UTC |
26192be | Junio C Hamano | 08 July 2009, 17:42:23 UTC | Merge branch 'maint' * maint: Documentation: update description of shell aliases | 08 July 2009, 17:42:23 UTC |
49902bd | Junio C Hamano | 08 July 2009, 16:52:25 UTC | Merge branch 'cb/maint-fetch-refspec-wo-dst' into maint * cb/maint-fetch-refspec-wo-dst: fetch: do not create ref from empty name | 08 July 2009, 16:52:25 UTC |
b13493b | Junio C Hamano | 08 July 2009, 16:52:14 UTC | Merge branch 'cf/maint-remote-uploadpack-useconfig-fix' into maint * cf/maint-remote-uploadpack-useconfig-fix: git-remote: fix missing .uploadpack usage for show command | 08 July 2009, 16:52:14 UTC |
595b8db | Sitaram Chamarty | 01 July 2009, 16:00:31 UTC | Documentation: update description of shell aliases Aliases that invoke shell commands start from the top-level directory, but this was not documented. Signed-off-by: Sitaram Chamarty <sitaramc@gmail.com> Signed-off-by: Junio C Hamano <gitster@pobox.com> | 08 July 2009, 16:45:28 UTC |
f581de1 | Stephen Boyd | 30 June 2009, 05:08:38 UTC | completion: __git_config_get_set_variables() handle values with spaces Commit 0065236 (bash completion: complete variable names for "git config" with options 2009-05-08) implemented its config variable search wrong. When a config contains a value with a space and a period (.) in it, completion erroneously thinks that line in the configuration is multiple config variables. For example $ cat .git/config format.cc = Junio C Hamano <gitster@pobox.com> $ git config --unset <TAB> format.cc <gitster@pobox.com> Instead of using a for loop splitting across spaces, pipe each line to a while read loop and beef up the case statement to match only 'config.variable=value'. Signed-off-by: Stephen Boyd <bebarino@gmail.com> Signed-off-by: Junio C Hamano <gitster@pobox.com> | 06 July 2009, 16:45:00 UTC |
dd787c1 | Junio C Hamano | 06 July 2009, 16:39:46 UTC | Merge branch 'tr/die_errno' * tr/die_errno: Use die_errno() instead of die() when checking syscalls Convert existing die(..., strerror(errno)) to die_errno() die_errno(): double % in strerror() output just in case Introduce die_errno() that appends strerror(errno) to die() | 06 July 2009, 16:39:46 UTC |
864cd94 | Junio C Hamano | 06 July 2009, 16:39:38 UTC | Merge branch 'cb/maint-fetch-refspec-wo-dst' * cb/maint-fetch-refspec-wo-dst: fetch: do not create ref from empty name | 06 July 2009, 16:39:38 UTC |
ea1b9b9 | Junio C Hamano | 06 July 2009, 16:38:58 UTC | Merge branch 'sb/show-ref-parse-options' * sb/show-ref-parse-options: show-ref: migrate to parse-options | 06 July 2009, 16:38:58 UTC |
7557b34 | Junio C Hamano | 06 July 2009, 16:38:33 UTC | Merge branch 'gb/am-foreign' * gb/am-foreign: git-am: refactor 'cleaning up and aborting' git-am foreign patch support: StGIT support git-am foreign patch support: autodetect some patch formats git-am foreign patch support: introduce patch_format | 06 July 2009, 16:38:33 UTC |
e526692 | Junio C Hamano | 06 July 2009, 16:38:08 UTC | Merge branch 'jk/use-our-regexp' * jk/use-our-regexp: Makefile: Solaris needs HAVE_ALLOCA_H for alloca() Makefile: use compat regex on Solaris Makefile: refactor regex compat support | 06 July 2009, 16:38:08 UTC |
5cacf3d | Junio C Hamano | 06 July 2009, 16:38:01 UTC | Merge branch 'uk/rev-parse-parse-opt' * uk/rev-parse-parse-opt: parse-opt: make PARSE_OPT_STOP_AT_NON_OPTION available to git rev-parse more tests for git rev-parse --parse-opt | 06 July 2009, 16:38:01 UTC |
3115fe9 | Nick Woolley | 06 July 2009, 13:33:45 UTC | Avoid generating a warning if $fullname{$file} is undefined Signed-off-by: Nick Woolley <git.wu-lee@noodlefactory.co.uk> Signed-off-by: Junio C Hamano <gitster@pobox.com> | 06 July 2009, 16:36:43 UTC |
444f29c | Nick Woolley | 06 July 2009, 13:33:07 UTC | Remove archaic use of regex capture \1 in favour of $1 Using it will generate a perl warning "\1 better written as $1". Signed-off-by: Nick Woolley <git.wu-lee@noodlefactory.co.uk> Signed-off-by: Junio C Hamano <gitster@pobox.com> | 06 July 2009, 16:36:39 UTC |
5d0e634 | Todd Zullinger | 03 June 2009, 20:20:58 UTC | completion: Add --full-diff to log options Signed-off-by: Todd Zullinger <tmz@pobox.com> Signed-off-by: Junio C Hamano <gitster@pobox.com> | 06 July 2009, 16:36:24 UTC |
f290974 | Eric Wong | 03 July 2009, 04:34:54 UTC | Allow the Unix epoch to be a valid commit date It is common practice to use the Unix epoch as a fallback date when a suitable date is not available. This is true of git svn and possibly other importing tools that import non-git history into git. Instead of clobbering established strtoul() error reporting semantics with our own, preserve the strtoul() error value of ULONG_MAX for fsck.c to handle. Signed-off-by: Eric Wong <normalperson@yhbt.net> Signed-off-by: Junio C Hamano <gitster@pobox.com> | 06 July 2009, 16:36:16 UTC |
c8400d9 | Hunter, D. Seth | 01 July 2009, 00:24:47 UTC | http-push: fix xml_entities() string parsing overrun xml_entities() in http-push.c did not properly stop at the end of the string being examined, which would occasionally cause nonsense to be appended to escaped URL strings and result in failed DAV XML queries Signed-off-by: Seth Hunter <hunter@ll.mit.edu> Signed-off-by: Junio C Hamano <gitster@pobox.com> | 06 July 2009, 16:36:08 UTC |
47e3de0 | Johannes Sixt | 05 July 2009, 18:57:46 UTC | MinGW: truncate exit()'s argument to lowest 8 bits For some reason, MinGW's bash cannot reliably detect failure of the child process if a negative value is passed to exit(). This fixes it by truncating the exit code in all calls of exit(). This issue was worked around in run_builtin() of git.c (2488df84 builtin run_command: do not exit with -1, 2007-11-15). This workaround is no longer necessary and is reverted. Suggested-by: Junio C Hamano <gitster@pobox.com> Signed-off-by: Johannes Sixt <j6t@kdbg.org> Signed-off-by: Junio C Hamano <gitster@pobox.com> | 05 July 2009, 19:16:26 UTC |
ed24e40 | René Scharfe | 01 July 2009, 22:06:34 UTC | grep: simplify -p output It was found a bit too loud to show == separators between the function headers. Signed-off-by: Rene Scharfe <rene.scharfe@lsrfire.ath.cx> Signed-off-by: Junio C Hamano <gitster@pobox.com> | 03 July 2009, 04:36:42 UTC |
606475f | Martin Renold | 01 July 2009, 20:18:04 UTC | Remove filename from conflict markers Put filenames into the conflict markers only when they are different. Otherwise they are redundant information clutter. Print the filename explicitely when warning about a binary conflict. Signed-off-by: Martin Renold <martinxyz@gmx.ch> Signed-off-by: Junio C Hamano <gitster@pobox.com> | 02 July 2009, 02:46:30 UTC |
702beb3 | Junio C Hamano | 02 July 2009, 02:41:04 UTC | Merge branch 'cc/bisect' * cc/bisect: Documentation: remove warning saying that "git bisect skip" may slow bisection bisect: use a PRNG with a bias when skipping away from untestable commits | 02 July 2009, 02:41:04 UTC |
a4103ba | Junio C Hamano | 02 July 2009, 02:41:00 UTC | Merge branch 'js/daemon-log' * js/daemon-log: receive-pack: do not send error details to the client upload-pack: squelch progress indicator if client cannot see it daemon: send stderr of service programs to the syslog | 02 July 2009, 02:41:00 UTC |
59773c7 | Junio C Hamano | 02 July 2009, 02:40:54 UTC | Merge branch 'cf/maint-remote-uploadpack-useconfig-fix' * cf/maint-remote-uploadpack-useconfig-fix: git-remote: fix missing .uploadpack usage for show command | 02 July 2009, 02:40:54 UTC |
e6c7c2c | Junio C Hamano | 02 July 2009, 02:40:50 UTC | Merge branch 'sb/quiet-porcelains' * sb/quiet-porcelains: stash: teach quiet option am, rebase: teach quiet option submodule, repack: migrate to git-sh-setup's say() git-sh-setup: introduce say() for quiet options am: suppress apply errors when using 3-way t4150: test applying with a newline in subject | 02 July 2009, 02:40:50 UTC |
4197195 | Junio C Hamano | 02 July 2009, 02:40:47 UTC | Merge branch 'ne/maint-1.6.0-diff-tree-t-r-show-directory' * ne/maint-1.6.0-diff-tree-t-r-show-directory: diff-tree -r -t: include added/removed directories in the output | 02 July 2009, 02:40:47 UTC |
3eb1e8e | Junio C Hamano | 02 July 2009, 02:40:16 UTC | Merge branch 'maint' * maint: request-pull: really really disable pager | 02 July 2009, 02:40:16 UTC |
60ecac9 | René Scharfe | 01 July 2009, 22:07:24 UTC | grep -p: support user defined regular expressions Respect the userdiff attributes and config settings when looking for lines with function definitions in git grep -p. Signed-off-by: Rene Scharfe <rene.scharfe@lsrfire.ath.cx> Signed-off-by: Junio C Hamano <gitster@pobox.com> | 02 July 2009, 02:16:50 UTC |
2944e4e | René Scharfe | 01 July 2009, 22:06:34 UTC | grep: add option -p/--show-function The new option -p instructs git grep to print the previous function definition as a context line, similar to diff -p. Such context lines are marked with an equal sign instead of a dash. This option complements the existing context options -A, -B, -C. Function definitions are detected using the same heuristic that diff uses. User defined regular expressions are not supported, yet. Signed-off-by: Rene Scharfe <rene.scharfe@lsrfire.ath.cx> Signed-off-by: Junio C Hamano <gitster@pobox.com> | 02 July 2009, 02:16:49 UTC |
49de321 | René Scharfe | 01 July 2009, 22:05:17 UTC | grep: handle pre context lines on demand Factor out pre context line handling into the new function show_pre_context() and change the algorithm to rewind by looking for newline characters and roll forward again, instead of maintaining an array of line beginnings and ends. This is slower for hits, but the cost for non-matching lines becomes zero. Normally, there are far more non-matching lines, so the time spent in total decreases. Before this patch (current Linux kernel repo, best of five runs): $ time git grep --no-ext-grep -B1 memset >/dev/null real 0m2.134s user 0m1.932s sys 0m0.196s $ time git grep --no-ext-grep -B1000 memset >/dev/null real 0m12.059s user 0m11.837s sys 0m0.224s The same with this patch: $ time git grep --no-ext-grep -B1 memset >/dev/null real 0m2.117s user 0m1.892s sys 0m0.228s $ time git grep --no-ext-grep -B1000 memset >/dev/null real 0m2.986s user 0m2.696s sys 0m0.288s Signed-off-by: Rene Scharfe <rene.scharfe@lsrfire.ath.cx> Signed-off-by: Junio C Hamano <gitster@pobox.com> | 02 July 2009, 02:16:48 UTC |
046802d | René Scharfe | 01 July 2009, 22:03:44 UTC | grep: print context hunk marks between files Print a hunk mark before matches from a new file are shown, in addition to the current behaviour of printing them if lines have been skipped. The result is easier to read, as (presumably unrelated) matches from different files are separated by a hunk mark. GNU grep does the same. Signed-off-by: Rene Scharfe <rene.scharfe@lsrfire.ath.cx> Signed-off-by: Junio C Hamano <gitster@pobox.com> | 02 July 2009, 02:16:46 UTC |
5dd06d3 | René Scharfe | 01 July 2009, 22:02:38 UTC | grep: move context hunk mark handling into show_line() Move last_shown into struct grep_opt, to make it available in show_line(), and then make the function handle the printing of hunk marks for context lines in a central place. Signed-off-by: Rene Scharfe <rene.scharfe@lsrfire.ath.cx> Signed-off-by: Junio C Hamano <gitster@pobox.com> | 02 July 2009, 02:16:45 UTC |
8cfe5f1 | René Scharfe | 01 July 2009, 22:01:43 UTC | userdiff: add xdiff_clear_find_func() xdiff_set_find_func() is used to set user defined regular expressions for finding function signatures. Add xdiff_clear_find_func(), which frees the memory allocated by the former, making the API complete. Also, use the new function in diff.c (the only call site of xdiff_set_find_func()) to clean up after ourselves. Signed-off-by: Rene Scharfe <rene.scharfe@lsrfire.ath.cx> Signed-off-by: Junio C Hamano <gitster@pobox.com> | 02 July 2009, 02:16:37 UTC |
653a31c | Michal Marek | 01 July 2009, 09:40:30 UTC | request-pull: really really disable pager Earlier 476cc72 (request-pull: really disable pager, 2009-06-30) tried to use the correct environment variable to disable paging from multiple calls to "git log" and friends, but there was one extra call to "git log" that was not covered by the trick. Move the setting and exporting of GIT_PAGER much earlier in the script to cover everybody. Signed-off-by: Junio C Hamano <gitster@pobox.com> | 01 July 2009, 20:20:00 UTC |
8715227 | Jeff King | 01 July 2009, 07:26:28 UTC | log-tree: fix confusing comment This comment mentions the case where use_terminator is set, but this case is not handled at all by this chunk of code. Signed-off-by: Jeff King <peff@peff.net> Signed-off-by: Junio C Hamano <gitster@pobox.com> | 01 July 2009, 18:16:54 UTC |
725cf7b | Junio C Hamano | 30 June 2009, 23:12:35 UTC | Merge branch 'maint' * maint: attr: plug minor memory leak request-pull: really disable pager Makes some cleanup/review in gittutorial Makefile: git.o depends on library headers git-submodule documentation: fix foreach example | 30 June 2009, 23:12:35 UTC |
d4c9856 | René Scharfe | 30 June 2009, 22:30:00 UTC | attr: plug minor memory leak Free the memory allocated for struct strbuf pathbuf when we're done. Signed-off-by: Rene Scharfe <rene.scharfe@lsrfire.ath.cx> Signed-off-by: Junio C Hamano <gitster@pobox.com> | 30 June 2009, 23:12:24 UTC |
6167c13 | Brandon Casey | 30 June 2009, 20:24:13 UTC | git.c: avoid allocating one-too-many elements for new argv array When creating a new argv array from a configured alias and the supplied command line arguments, the new argv was allocated with one element too many. Since the first element of the original argv array is skipped when copying it to the new_argv, the number of elements that are allocated should be reduced by one. 'count' is the number of elements that new_argv contains, and *argcp is the number of elements in the original argv array. So the total allocation (including the terminating NULL entry) for the new_argv array should be: count + (*argcp - 1) + 1 Also, the explicit assignment of the NULL terminating entry can be avoided by just copying it over from the original argv array. Signed-off-by: Brandon Casey <drafnel@gmail.com> Signed-off-by: Junio C Hamano <gitster@pobox.com> | 30 June 2009, 23:12:14 UTC |
476cc72 | Junio C Hamano | 30 June 2009, 18:29:36 UTC | request-pull: really disable pager ff06c74 (Improve request-pull to handle non-rebased branches, 2007-05-01) attempted to disable pager when running subcommands in this script, but with a wrong variable. If GIT_PAGER is set, it takes precedence over PAGER. Noticed by Michal Marek. Signed-off-by: Junio C Hamano <gitster@pobox.com> | 30 June 2009, 18:33:30 UTC |
b8f2626 | Johannes Sixt | 30 June 2009, 13:33:57 UTC | git-mv: fix directory separator treatment on Windows The following invocations did not work as expected on Windows: git mv foo\bar dest git mv foo\ dest The first command was interpreted as git mv foo/bar dest/foo/bar because the Windows style directory separator was not obeyed when the basename of 'foo\bar' was computed. The second command failed because the Windows style directory separator was not removed from the source directory, whereupon the lookup of the directory in the index failed. This fixes both issues by using is_dir_sep() and basename(). Signed-off-by: Johannes Sixt <j6t@kdbg.org> Acked-by: Johannes Schindelin <Johannes.Schindelin@gmx.de> Signed-off-by: Junio C Hamano <gitster@pobox.com> | 30 June 2009, 18:23:21 UTC |
6fac1b8 | Stephen Boyd | 30 June 2009, 04:24:24 UTC | completion: add missing config variables Update to include branch.*.rebase, remote.*.pushurl, and add.ignore-errors Signed-off-by: Stephen Boyd <bebarino@gmail.com> Signed-off-by: Junio C Hamano <gitster@pobox.com> | 30 June 2009, 18:20:04 UTC |
21d777f | Thadeu Lima de Souza Cascardo | 29 June 2009, 15:13:58 UTC | Makes some cleanup/review in gittutorial There are some different but little cleanup changes to fix some missing quotes, to fix what seemed to be an unended sentence, to reident a little paragraph with too large a sentence and fix a branch name that was referred to twice later by another name. Signed-off-by: Thadeu Lima de Souza Cascardo <cascardo@holoscopio.com> Signed-off-by: Junio C Hamano <gitster@pobox.com> | 30 June 2009, 18:17:55 UTC |
fe10498 | Johannes Sixt | 29 June 2009, 19:42:08 UTC | Makefile: git.o depends on library headers This dependency was not yet specified anywhere else. Signed-off-by: Johannes Sixt <j6t@kdbg.org> Signed-off-by: Junio C Hamano <gitster@pobox.com> | 30 June 2009, 18:17:54 UTC |
1c3acfc | Miklos Vajna | 28 June 2009, 12:55:45 UTC | git-submodule documentation: fix foreach example Backtick and apostrophe are asciidoc markup, so they should be escaped in order to get the expected result in the rendered manual page. Signed-off-by: Miklos Vajna <vmiklos@frugalware.org> Signed-off-by: Junio C Hamano <gitster@pobox.com> | 30 June 2009, 18:17:54 UTC |
7d25ef4 | Giuseppe Bilotta | 29 June 2009, 22:00:54 UTC | gitweb: add empty alt text to avatar img The empty alt text optimizes screen estate in text-only browsers. Signed-off-by: Giuseppe Bilotta <giuseppe.bilotta@gmail.com> Signed-off-by: Junio C Hamano <gitster@pobox.com> | 30 June 2009, 18:06:37 UTC |
679a1a1 | Giuseppe Bilotta | 29 June 2009, 22:00:53 UTC | gitweb: picon avatar provider Simple implementation of picon that only relies on the indiana.edu database. Signed-off-by: Giuseppe Bilotta <giuseppe.bilotta@gmail.com> Signed-off-by: Junio C Hamano <gitster@pobox.com> | 30 June 2009, 18:06:36 UTC |
5a371b7 | Giuseppe Bilotta | 29 June 2009, 22:00:52 UTC | gitweb: gravatar url cache Views which contain many occurrences of the same email address (e.g. shortlog view) benefit from not having to recalculate the MD5 of the email address every time. Signed-off-by: Giuseppe Bilotta <giuseppe.bilotta@gmail.com> Signed-off-by: Junio C Hamano <gitster@pobox.com> | 30 June 2009, 18:06:36 UTC |
e9fdd74 | Giuseppe Bilotta | 29 June 2009, 22:00:51 UTC | gitweb: (gr)avatar support Introduce avatar support: the feature adds the appropriate img tag next to author and committer in commit(diff), history, shortlog, log and tag views. Multiple avatar providers are possible, but only gravatar is implemented at the moment. Gravatar support depends on Digest::MD5, which is a core package since Perl 5.8. If gravatars are activated but Digest::MD5 cannot be found, the feature will be automatically disabled. No avatar provider is selected by default, except in the t9500 test. Signed-off-by: Giuseppe Bilotta <giuseppe.bilotta@gmail.com> Signed-off-by: Junio C Hamano <gitster@pobox.com> | 30 June 2009, 18:06:35 UTC |
ba92473 | Giuseppe Bilotta | 29 June 2009, 22:00:50 UTC | gitweb: use git_print_authorship_rows in 'tag' view too parse_tag must be adapted to use the hash keys expected by git_print_authorship_rows. This is not a problem since git_tag is the only user of this sub. Signed-off-by: Giuseppe Bilotta <giuseppe.bilotta@gmail.com> Signed-off-by: Junio C Hamano <gitster@pobox.com> | 30 June 2009, 18:06:34 UTC |
f88bafa | Giuseppe Bilotta | 29 June 2009, 22:00:49 UTC | gitweb: uniform author info for commit and commitdiff Switch from 'log'-like layout A U Thor <email@example.com> [date time] to 'commit'-like layout author A U Thor <email@example.com> date time committer C O Mitter <other.email@example.com> committer date time Signed-off-by: Giuseppe Bilotta <giuseppe.bilotta@gmail.com> Signed-off-by: Junio C Hamano <gitster@pobox.com> | 30 June 2009, 18:06:32 UTC |
1c49a4e | Giuseppe Bilotta | 29 June 2009, 22:00:48 UTC | gitweb: refactor author name insertion Collect all author display code in appropriate functions, making it easier to extend these functions on the CGI side. We also move some of the presentation code from hard-coded HTML to CSS, for easier customization. A side effect of the refactoring is that now localtime is always displayed with the 'at night' warning. Signed-off-by: Giuseppe Bilotta <giuseppe.bilotta@gmail.com> Signed-off-by: Junio C Hamano <gitster@pobox.com> | 30 June 2009, 18:06:30 UTC |
b8e8db2 | Linus Torvalds | 29 June 2009, 17:28:25 UTC | git log: add '--merges' flag to match '--no-merges' I do various statistics on git, and one of the things I look at is merges, because they are often interesting events to count ("how many merges vs how much 'real development'" kind of statistics). And you can do it with some fairly straightforward scripting, ie git rev-list --parents HEAD | grep ' .* ' | git diff-tree --always -s --pretty=oneline --stdin | less -S will do it. But I finally got irritated with the fact that we can skip merges with '--no-merges', but we can't do the trivial reverse operation. So this just adds a '--merges' flag that _only_ shows merges. Now you can do the above with just a git log --merges --pretty=oneline which is a lot simpler. It also means that we automatically get a lot of statistics for free, eg git shortlog -ns --merges does exactly what you'd want it to do. Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org> Signed-off-by: Junio C Hamano <gitster@pobox.com> | 29 June 2009, 19:32:51 UTC |
1965ff7 | Larry D'Anna | 23 June 2009, 01:10:01 UTC | add --porcelain option to git-push If --porcelain is used git-push will produce machine-readable output. The output status line for each ref will be tab-separated and sent to stdout instead of stderr. The full symbolic names of the refs will be given. For example $ git push --dry-run --porcelain master :foobar 2>/dev/null \ | perl -pe 's/\t/ TAB /g' = TAB refs/heads/master:refs/heads/master TAB [up to date] - TAB :refs/heads/foobar TAB [deleted] Signed-off-by: Larry D'Anna <larry@elder-gods.org> Signed-off-by: Junio C Hamano <gitster@pobox.com> | 28 June 2009, 05:26:58 UTC |
4f2b15c | Junio C Hamano | 28 June 2009, 03:09:04 UTC | Merge git://git.bogomips.org/git-svn * git://git.bogomips.org/git-svn: git svn: Doc update for multiple branch and tag paths git svn: cleanup t9138-multiple-branches git-svn: Canonicalize svn urls to prevent libsvn assertion t9138: remove stray dot in test which broke bash git-svn: convert globs to regexps for branch destinations git svn: Support multiple branch and tag paths in the svn repository. Add 'git svn reset' to unwind 'git svn fetch' git-svn: speed up find_rev_before Add 'git svn help [cmd]' which works outside a repo. git-svn: let 'dcommit $rev' work on $rev instead of HEAD | 28 June 2009, 03:09:04 UTC |
ab81a36 | Marc Branchaud | 26 June 2009, 20:49:19 UTC | git svn: Doc update for multiple branch and tag paths Signed-off-by: Marc Branchaud <marcnarc@xiplink.com> Acked-by: Eric Wong <normalperson@yhbt.net> | 27 June 2009, 22:05:42 UTC |
b5c9b38 | Marc Branchaud | 26 June 2009, 21:08:19 UTC | git svn: cleanup t9138-multiple-branches Using the "svn_cmd" wrapper instead of "svn" alone allows tests to run consistently for users with customized ~/.subversion/configs. Additionally, using subshells via "(cd ...)" allow cleaner and less error-prone tests to be written. [ew: expanded commit message] Signed-off-by: Marc Branchaud <marcnarc@xiplink.com> Acked-by: Eric Wong <normalperson@yhbt.net> | 27 June 2009, 22:01:57 UTC |
36e74ab | Junio C Hamano | 27 June 2009, 21:13:43 UTC | Merge branch 'pb/send-email-cccmd-fix' * pb/send-email-cccmd-fix: t/t9001-send-email.sh: ensure generated script is executed with $SHELL_PATH | 27 June 2009, 21:13:43 UTC |
8af15d2 | Elijah Newren | 26 June 2009, 04:48:33 UTC | fast-export: Document the fact that git-rev-list arguments are accepted Signed-off-by: Elijah Newren <newren@gmail.com> Signed-off-by: Junio C Hamano <gitster@pobox.com> | 27 June 2009, 21:10:10 UTC |
25e0ca5 | Elijah Newren | 26 June 2009, 04:48:32 UTC | Add new fast-export testcases The testcases test the new --tag-of-filtered-object option, the output when limiting what to export by path, and test behavior when no exact-ref revision is included (e.g. master~8 present on command line but not master). Signed-off-by: Elijah Newren <newren@gmail.com> Signed-off-by: Junio C Hamano <gitster@pobox.com> | 27 June 2009, 21:10:10 UTC |
2d8ad46 | Elijah Newren | 26 June 2009, 04:48:31 UTC | fast-export: Add a --tag-of-filtered-object option for newly dangling tags When providing a list of paths to limit what is exported, the object that a tag points to can be filtered out entirely. This new switch allows the user to specify what should happen to the tag in such a case. The default action, 'abort' will exit with an error message. With 'drop', the tag will simply be omitted from the output. With 'rewrite', if the object tagged was a commit, the tag will be modified to tag an alternate commit. The alternate commit is determined by treating the original commit as the "parent" of the tag and then using the parent rewriting algorithm of the revision traversal machinery (related to the "--parents" option of "git rev-list") Signed-off-by: Elijah Newren <newren@gmail.com> Signed-off-by: Junio C Hamano <gitster@pobox.com> | 27 June 2009, 21:10:10 UTC |
3216413 | Elijah Newren | 26 June 2009, 04:48:30 UTC | fast-export: Do parent rewriting to avoid dropping relevant commits When specifying paths to export, parent rewriting must be turned on for fast-export to output anything at all. Signed-off-by: Elijah Newren <newren@gmail.com> Signed-off-by: Junio C Hamano <gitster@pobox.com> | 27 June 2009, 21:10:10 UTC |
2374502 | Elijah Newren | 26 June 2009, 04:48:29 UTC | fast-export: Make sure we show actual ref names instead of "(null)" The code expects a ref name to be provided in commit->util. While there was some code to set commit->util, it only worked in cases where there was an unbroken chain of revisions from a ref to the relevant commit. In cases such as running git fast-export --parents master -- COPYING commit->util would fail to be set. The old method of setting commit->util has been removed in favor of requesting show_source from the revision traversal machinery (related to the "--source" option of "git log" family of commands.) However, this change does not fix cases like git fast export master~1 or git fast export :/arguments since in such cases commit->util will be "master~1" or ":/arguments" while we need the actual ref (e.g. "refs/heads/master") Signed-off-by: Elijah Newren <newren@gmail.com> Signed-off-by: Junio C Hamano <gitster@pobox.com> | 27 June 2009, 21:10:10 UTC |
02c48cd | Elijah Newren | 26 June 2009, 04:48:28 UTC | fast-export: Omit tags that tag trees Commit c0582c53bcf4e83bba70e1ad23abbad31f96ebc8 introduced logic to just omit tags that point to tree objects. However, these objects were still being output and were pointing at "mark :0", which caused fast-import to crash. This patch makes sure such tags (including deeper nestings such as tags of tags of trees), are omitted. Signed-off-by: Elijah Newren <newren@gmail.com> Signed-off-by: Junio C Hamano <gitster@pobox.com> | 27 June 2009, 21:10:09 UTC |
668f3aa | Elijah Newren | 26 June 2009, 04:48:27 UTC | fast-export: Set revs.topo_order before calling setup_revisions setup_revisions sets a variety of flags based on the setting of other flags, such as setting the limited flag when topo_order is set. To avoid circumventing any invariants created by setup_revisions, we set revs.topo_order before calling it rather than after. Signed-off-by: Elijah Newren <newren@gmail.com> Signed-off-by: Junio C Hamano <gitster@pobox.com> | 27 June 2009, 21:10:09 UTC |
2dc7f40 | Junio C Hamano | 27 June 2009, 20:44:25 UTC | Merge branch 'maint' * maint: gitweb/README: fix AliasMatch in example Test grep --and/--or/--not Test git archive --remote fread does not return negative on error | 27 June 2009, 20:44:25 UTC |
1bed73c | Giuseppe Bilotta | 27 June 2009, 16:24:11 UTC | gitweb/README: fix AliasMatch in example When combining "dumb client" and human-friendly access by using the '.git' extension to switch between the two, make sure the AliasMatch covers the entire request. Without a full match, a request for http://git.example.com/project/shortlog/branch..gitsomething would result in a 404 because the server would try to access the the project 'project/shortlog/branch.' The solution is still not bulletproof, so document the possible failing case. Signed-off-by: Giuseppe Bilotta <giuseppe.bilotta@gmail.com> Signed-off-by: Junio C Hamano <gitster@pobox.com> | 27 June 2009, 20:15:57 UTC |
0f70504 | Thomas Rast | 27 June 2009, 18:47:44 UTC | Test grep --and/--or/--not Signed-off-by: Thomas Rast <trast@student.ethz.ch> Signed-off-by: Junio C Hamano <gitster@pobox.com> | 27 June 2009, 20:15:41 UTC |
4813926 | Thomas Rast | 27 June 2009, 18:47:43 UTC | Test git archive --remote Add a small test case for git archive --remote (and thus git-upload-archive), which so far went untested. Signed-off-by: Thomas Rast <trast@student.ethz.ch> Signed-off-by: Junio C Hamano <gitster@pobox.com> | 27 June 2009, 20:15:39 UTC |
0721c31 | Thomas Rast | 27 June 2009, 15:58:47 UTC | Use die_errno() instead of die() when checking syscalls Lots of die() calls did not actually report the kind of error, which can leave the user confused as to the real problem. Use die_errno() where we check a system/library call that sets errno on failure, or one of the following that wrap such calls: Function Passes on error from -------- -------------------- odb_pack_keep open read_ancestry fopen read_in_full xread strbuf_read xread strbuf_read_file open or strbuf_read_file strbuf_readlink readlink write_in_full xwrite Signed-off-by: Thomas Rast <trast@student.ethz.ch> Signed-off-by: Junio C Hamano <gitster@pobox.com> | 27 June 2009, 18:14:53 UTC |
d824cbb | Thomas Rast | 27 June 2009, 15:58:46 UTC | Convert existing die(..., strerror(errno)) to die_errno() Change calls to die(..., strerror(errno)) to use the new die_errno(). In the process, also make slight style adjustments: at least state _something_ about the function that failed (instead of just printing the pathname), and put paths in single quotes. Signed-off-by: Thomas Rast <trast@student.ethz.ch> Signed-off-by: Junio C Hamano <gitster@pobox.com> | 27 June 2009, 18:14:53 UTC |
f8b5a8e | Junio C Hamano | 27 June 2009, 15:58:45 UTC | die_errno(): double % in strerror() output just in case [tr: handle border case where % is placed at end of buffer] Signed-off-by: Junio C Hamano <gitster@pobox.com> Signed-off-by: Thomas Rast <trast@student.ethz.ch> Signed-off-by: Junio C Hamano <gitster@pobox.com> | 27 June 2009, 18:14:53 UTC |
b875036 | Thomas Rast | 27 June 2009, 15:58:44 UTC | Introduce die_errno() that appends strerror(errno) to die() There are many calls to die() that do, or should, report strerror(errno) to indicate how the syscall they guard failed. Introduce a small helper function for this case. Note: - POSIX says vsnprintf can modify errno in some unlikely cases, so we have to use errno early. - We take some care to pass the original format to die_routine(), in case someone wants to call die_errno() with custom format characters. Signed-off-by: Thomas Rast <trast@student.ethz.ch> Signed-off-by: Junio C Hamano <gitster@pobox.com> | 27 June 2009, 18:14:53 UTC |
50ff236 | Ulrich Dangel | 26 June 2009, 14:52:09 UTC | git-svn: Canonicalize svn urls to prevent libsvn assertion Cloning/initializing svn repositories with an uncanonicalize url does not work as libsvn throws an assertion. This patch canonicalize svn uris for the clone and init command from git-svn. [ew: fixed trailing whitespace] Signed-off-by: Ulrich Dangel <uli@spamt.net> Acked-by: Eric Wong <normalperson@yhbt.net> | 26 June 2009, 21:08:52 UTC |
2317d28 | Eric Wong | 25 June 2009, 23:09:59 UTC | t9138: remove stray dot in test which broke bash The stray dot broke bash and probably some other shells, but worked fine with dash in my limited testing. Signed-off-by: Eric Wong <normalperson@yhbt.net> | 26 June 2009, 18:05:36 UTC |
345a380 | Chris Frey | 25 June 2009, 21:21:35 UTC | git-remote: fix missing .uploadpack usage for show command For users pulling from machines with self compiled git installs, in non-PATH locations, they can set the config option remote.<name>.uploadpack to set the location of git-upload-pack. When using 'git remote show <name>', the remote HEAD check did not use the uploadpack configuration setting, and would not use the configured program. In builtin-remote.c, the config setting is already loaded with the call to remote_get(), so this patch passes that remote along to transport_get(). Signed-off-by: Chris Frey <cdfrey@foursquare.net> Signed-off-by: Junio C Hamano <gitster@pobox.com> | 25 June 2009, 21:47:49 UTC |
f705059 | Eric Wong | 25 June 2009, 09:28:15 UTC | git-svn: convert globs to regexps for branch destinations Marc Branchaud wrote: > I'm fairly happy with this, except for the way the branch > subcommand matches refspecs. The patch does a simple string > comparison, but it'd be better to do an actual glob. I just > couldn't track down the right function for that, so I left it as > a strcmp and hope that a gitizen can tell me how to glob here. Signed-off-by: Eric Wong <normalperson@yhbt.net> | 25 June 2009, 09:28:25 UTC |
6224406 | Marc Branchaud | 23 June 2009, 17:02:08 UTC | git svn: Support multiple branch and tag paths in the svn repository. This enables git-svn.perl to read multiple 'branches' and 'tags' entries in svn-remote config sections. The init and clone subcommands also support multiple --branches and --tags arguments. The branch (and tag) subcommand gets a new argument: --destination (or -d). This argument is required if there are multiple branches (or tags) entries configured for the remote Subversion repository. The argument's value specifies which branch (or tag) path to use to create the branch (or tag). The specified value must match the left side (without wildcards) of one of the branches (or tags) refspecs in the svn-remote's config. [ew: avoided explicit loop when combining globs with "push"] Signed-off-by: Marc Branchaud <marcnarc@xiplink.com> Acked-by: Eric Wong <normalperson@yhbt.net> | 25 June 2009, 08:58:09 UTC |
195643f | Ben Jackson | 04 June 2009, 03:45:52 UTC | Add 'git svn reset' to unwind 'git svn fetch' Add a command to unwind the effects of fetch by moving the rev_map and refs/remotes/git-svn back to an old SVN revision. This allows revisions to be re-fetched. Ideally SVN revs would be immutable, but permissions changes in the SVN repository or indiscriminate use of '--ignore-paths' can create situations where fetch cannot make progress. Signed-off-by: Ben Jackson <ben@ben.com> Acked-by: Eric Wong <normalperson@yhbt.net> | 25 June 2009, 07:38:17 UTC |
ca5e880 | Ben Jackson | 04 June 2009, 03:45:51 UTC | git-svn: speed up find_rev_before By limiting start revision of find_rev_before to max existing revision. This avoids a long wait if you do 'git svn reset -r 9999999'. The linear search within the contiguous revisions doesn't seem to be a problem. [ew: expanded commit message] Signed-off-by: Ben Jackson <ben@ben.com> Acked-by: Eric Wong <normalperson@yhbt.net> | 25 June 2009, 07:38:16 UTC |
9a8c92a | Ben Jackson | 31 May 2009, 01:17:06 UTC | Add 'git svn help [cmd]' which works outside a repo. Previously there was no explicit 'help' command, but 'git svn help' still printed the usage message (as an invalid command), provided you got past the initialization steps that required a valid repo. Signed-off-by: Ben Jackson <ben@ben.com> Acked-by: Eric Wong <normalperson@yhbt.net> | 25 June 2009, 07:38:16 UTC |
5eec27e | Thomas Rast | 29 May 2009, 15:09:42 UTC | git-svn: let 'dcommit $rev' work on $rev instead of HEAD 'git svn dcommit' takes an optional revision argument, but the meaning of it was rather scary. It completely ignored the current state of the HEAD, only looking at the revisions between SVN and $rev. If HEAD was attached to $branch, the branch lost all commits $rev..$branch in the process. Considering that 'git svn dcommit HEAD^' has the intuitive meaning "dcommit all changes on my branch except the last one", we change the meaning of the revision argument. git-svn temporarily checks out $rev for its work, meaning that * if a branch is specified, that branch (_not_ the HEAD) is rebased as part of the dcommit, * if some other revision is specified, as in the example, all work happens on a detached HEAD and no branch is affected. Signed-off-by: Thomas Rast <trast@student.ethz.ch> Acked-by: Eric Wong <normalperson@yhbt.net> | 25 June 2009, 07:38:16 UTC |
6651c3f | Roel Kluin | 22 June 2009, 16:42:33 UTC | fread does not return negative on error size_t res cannot be less than 0. fread returns 0 on error. Reported-by: Ingo Molnar <mingo@elte.hu> Signed-off-by: Roel Kluin <roel.kluin@gmail.com> Signed-off-by: Junio C Hamano <gitster@pobox.com> | 23 June 2009, 23:57:15 UTC |
3f721d1 | Bert Wesarg | 22 June 2009, 22:27:44 UTC | builtin-remote: (get_one_entry): use strbuf Signed-off-by: Bert Wesarg <bert.wesarg@googlemail.com> Signed-off-by: Junio C Hamano <gitster@pobox.com> | 23 June 2009, 23:43:16 UTC |
977e289 | Brandon Casey | 22 June 2009, 17:32:52 UTC | t/t9001-send-email.sh: ensure generated script is executed with $SHELL_PATH If the shell is not specified using the '#!' notation, then the OS will use '/bin/sh' to execute the script which may not produce the desired results. In particular, /bin/sh on Solaris interprets '^' specially which has an effect on the sed command that this patch touches. Signed-off-by: Brandon Casey <drafnel@gmail.com> Signed-off-by: Junio C Hamano <gitster@pobox.com> | 23 June 2009, 23:41:27 UTC |
916e137 | Junio C Hamano | 22 June 2009, 07:44:34 UTC | Merge branch 'maint' * maint: t3700-add: add a POSIXPERM prerequisite to a new test | 22 June 2009, 07:44:34 UTC |
1ab012c | Johannes Sixt | 22 June 2009, 07:30:38 UTC | t3700-add: add a POSIXPERM prerequisite to a new test The new test does a 'chmod 0', which does not have the intended effect on Windows. Signed-off-by: Johannes Sixt <j6t@kdbg.org> Signed-off-by: Junio C Hamano <gitster@pobox.com> | 22 June 2009, 07:44:14 UTC |
d1f6c18 | Junio C Hamano | 22 June 2009, 07:44:09 UTC | Merge branch 'sb/maint-1.6.0-add-config-fix' into maint * sb/maint-1.6.0-add-config-fix: add: allow configurations to be overriden by command line | 22 June 2009, 07:44:09 UTC |
e16a477 | Junio C Hamano | 22 June 2009, 06:50:17 UTC | Sync with 1.6.3.3 Signed-off-by: Junio C Hamano <gitster@pobox.com> | 22 June 2009, 06:50:17 UTC |
cff4231 | Junio C Hamano | 22 June 2009, 04:02:49 UTC | GIT 1.6.3.3 Signed-off-by: Junio C Hamano <gitster@pobox.com> | 22 June 2009, 04:15:50 UTC |
a69f8c9 | Junio C Hamano | 22 June 2009, 04:15:39 UTC | Merge branch 'ak/maint-for-each-ref-no-lookup' into maint * ak/maint-for-each-ref-no-lookup: for-each-ref: Do not lookup objects when they will not be used | 22 June 2009, 04:15:39 UTC |
be273c7 | Junio C Hamano | 22 June 2009, 04:15:31 UTC | Merge branch 'rc/maint-http-local-slot-fix' into maint * rc/maint-http-local-slot-fix: http*: cleanup slot->local after fclose | 22 June 2009, 04:15:31 UTC |
d836118 | Junio C Hamano | 22 June 2009, 04:15:27 UTC | Merge branch 'cb/maint-no-double-merge' into maint * cb/maint-no-double-merge: refuse to merge during a merge | 22 June 2009, 04:15:27 UTC |
6019b3c | Junio C Hamano | 22 June 2009, 04:14:25 UTC | Merge branch 'mn/maint-iconv-autoconf' into maint * mn/maint-iconv-autoconf: fix handling of iconv configuration options | 22 June 2009, 04:14:25 UTC |
44fb185 | Junio C Hamano | 22 June 2009, 04:14:09 UTC | Merge branch 'lt/maint-unsigned-left-shift' into maint * lt/maint-unsigned-left-shift: Fix big left-shifts of unsigned char | 22 June 2009, 04:14:09 UTC |
037e9d5 | Junio C Hamano | 22 June 2009, 04:08:05 UTC | Merge branch 'pb/maint-1.6.2-userdiff-fix' into maint * pb/maint-1.6.2-userdiff-fix: upload-archive: fix infinite loop on Cygwin avoid exponential regex match for java and objc function names | 22 June 2009, 04:08:05 UTC |
2ff4d1a | Johannes Sixt | 21 June 2009, 21:16:09 UTC | receive-pack: do not send error details to the client If the objects that a client pushes to the server cannot be processed for any reason, an error is reported back to the client via the git protocol. We used to send quite detailed information if a system call failed if unpack-objects is run. This can be regarded as an information leak. Now we do not send any error details like we already do in the case where index-pack failed. Errors in system calls as well as the exit code of unpack-objects and index-pack are now reported to stderr; in the case of a local push or via ssh these messages still go to the client, but that is OK since these forms of access to the server assume that the client can be trusted. If receive-pack is run from git-daemon, then the daemon should put the error messages into the syslog. With this reasoning a new status report is added for the post-update-hook; untrusted (i.e. daemon's) clients cannot observe its status anyway, others may want to know failure details. Signed-off-by: Johannes Sixt <j6t@kdbg.org> Signed-off-by: Junio C Hamano <gitster@pobox.com> | 22 June 2009, 03:19:21 UTC |
a437900 | Junio C Hamano | 21 June 2009, 09:35:18 UTC | attribute: whitespace set to true detects all errors known to git That is what the documentation says, but the code pretends as if all the known whitespace error tokens were given. Among the whitespace error tokens, there is one kind that loosens the rule when set: cr-at-eol. Which means that whitespace error token that is set to true ignores a newly introduced CR at the end, which is inconsistent with the documentation. Signed-off-by: Junio C Hamano <gitster@pobox.com> | 21 June 2009, 17:43:10 UTC |
e2f6331 | Nanako Shiraishi | 19 June 2009, 10:42:53 UTC | .gitattributes: CR at the end of the line is an error When a CR is accidentally added at the end of a C source file in the git project tree, "git diff --check" doesn't detect it as an error. $ echo abQ | tr Q '\015' >>fast-import.c $ git diff --check I think this is because the "whitespace" attribute is set to *.[ch] files without specifying what kind of errors are caught. It makes git "notice all types of errors" (as described in the documentation), but I think it is incorrectly setting cr-at-eol, too, and hides this error. Signed-off-by: Nanako Shiraishi <nanako3@lavabit.com> Signed-off-by: Junio C Hamano <gitster@pobox.com> | 21 June 2009, 17:42:37 UTC |