gitweb.git
Merge branch 'jk/add-p-skip-conflicts'Junio C Hamano Mon, 16 Apr 2012 19:43:36 +0000 (12:43 -0700)

Merge branch 'jk/add-p-skip-conflicts'

Excludes conflicted paths from "add -p" processing, as it is not prepared
to handle them.

By Jeff King
* jk/add-p-skip-conflicts:
add--interactive: ignore unmerged entries in patch mode

Merge branch 'jc/commit-unedited-template'Junio C Hamano Mon, 16 Apr 2012 19:43:07 +0000 (12:43 -0700)

Merge branch 'jc/commit-unedited-template'

When "git commit --template F" errors out because the user did not touch
the message, it claimed that it aborts due to "empty message", which was
utterly wrong.

By Junio C Hamano (4) and Adam Monsen (1)
* jc/commit-unedited-template:
Documentation/git-commit: rephrase the "initial-ness" of templates
git-commit.txt: clarify -t requires editing message
commit: rephrase the error when user did not touch templated log message
commit: do not trigger bogus "has templated message edited" check
t7501: test the right kind of breakage

Merge branch 'bw/spawn-via-shell-path'Junio C Hamano Mon, 16 Apr 2012 19:42:54 +0000 (12:42 -0700)

Merge branch 'bw/spawn-via-shell-path'

"sh" on the user's PATH may be utterly broken on some systems;
consistently use SHELL_PATH even from inside run-command API.

By Ben Walton
* bw/spawn-via-shell-path:
Use SHELL_PATH from build system in run_command.c:prepare_shell_cmd

Merge branch 'wk/gitweb-snapshot-use-if-modified-since'Junio C Hamano Mon, 16 Apr 2012 19:42:48 +0000 (12:42 -0700)

Merge branch 'wk/gitweb-snapshot-use-if-modified-since'

Makes 'snapshot' request to "gitweb" honor If-Modified-Since: header,
based on the commit date.

By W. Trevor King
* wk/gitweb-snapshot-use-if-modified-since:
gitweb: add If-Modified-Since handling to git_snapshot().
gitweb: refactor If-Modified-Since handling
gitweb: add `status` headers to git_feed() responses.

Merge branch 'jk/http-backend-keep-committer-ident... Junio C Hamano Mon, 16 Apr 2012 19:42:40 +0000 (12:42 -0700)

Merge branch 'jk/http-backend-keep-committer-ident-env'

The smart-http backend used to always override GIT_COMMITTER_* variables
with REMOTE_USER and REMOTE_ADDR.

By Jeff King
* jk/http-backend-keep-committer-ident-env:
http-backend: respect existing GIT_COMMITTER_* variables

Merge branch 'sl/autoconf'Junio C Hamano Mon, 16 Apr 2012 19:42:29 +0000 (12:42 -0700)

Merge branch 'sl/autoconf'

Updates our configure.ac to follow a better "autoconf" style.

By Stefano Lattarini
* sl/autoconf:
configure: be more idiomatic
configure: avoid some code repetitions thanks to m4_{push,pop}def
configure: move definitions of private m4 macros before AC_INIT invocation

Merge branch 'jk/branch-quiet'Junio C Hamano Mon, 16 Apr 2012 19:42:22 +0000 (12:42 -0700)

Merge branch 'jk/branch-quiet'

Even with "-q"uiet option, "checkout" used to report setting up tracking.
Also "branch" learns "-q"uiet option to squelch informational message.

By Jeff King
* jk/branch-quiet:
teach "git branch" a --quiet option
checkout: suppress tracking message with "-q"

Merge branch 'rs/combine-diff-zero-context-at-the-begin... Junio C Hamano Mon, 16 Apr 2012 19:41:59 +0000 (12:41 -0700)

Merge branch 'rs/combine-diff-zero-context-at-the-beginning'

Fixes an age old corner case bug in combine diff (only triggered with -U0
and the hunk at the beginning of the file needs to be shown).

By René Scharfe
* rs/combine-diff-zero-context-at-the-beginning:
combine-diff: fix loop index underflow

Merge branch 'jk/diff-no-rename-empty'Junio C Hamano Mon, 16 Apr 2012 19:41:49 +0000 (12:41 -0700)

Merge branch 'jk/diff-no-rename-empty'

Forbids rename detection logic from matching two empty files as renames
during merge-recursive to prevent mismerges.

By Jeff King
* jk/diff-no-rename-empty:
merge-recursive: don't detect renames of empty files
teach diffcore-rename to optionally ignore empty content
make is_empty_blob_sha1 available everywhere
drop casts from users EMPTY_TREE_SHA1_BIN

Merge branch 'jc/maint-clean-nested-worktree-in-subdir'Junio C Hamano Mon, 16 Apr 2012 19:40:22 +0000 (12:40 -0700)

Merge branch 'jc/maint-clean-nested-worktree-in-subdir'

"git clean -d -f" (not "-d -f -f") is supposed to protect nested working
trees of independent git repositories that exist in the current project
working tree from getting removed, but the protection applied only to such
working trees that are at the top-level of the current project by mistake.

* jc/maint-clean-nested-worktree-in-subdir:
clean: preserve nested git worktree in subdirectories

Merge branch 'rs/unpack-trees-leakfix'Junio C Hamano Mon, 16 Apr 2012 19:39:58 +0000 (12:39 -0700)

Merge branch 'rs/unpack-trees-leakfix'

By René Scharfe
* rs/unpack-trees-leakfix:
unpack-trees: plug minor memory leak
unpack-trees: don't perform any index operation if we're not merging

Merge branch 'nl/rebase-i-cheat-sheet'Junio C Hamano Mon, 16 Apr 2012 19:39:41 +0000 (12:39 -0700)

Merge branch 'nl/rebase-i-cheat-sheet'

* nl/rebase-i-cheat-sheet:
rebase -i: remind that the lines are top-to-bottom

RelNotes: the first batch of topics graduated to 'master'Junio C Hamano Mon, 16 Apr 2012 05:59:31 +0000 (22:59 -0700)

RelNotes: the first batch of topics graduated to 'master'

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

Merge branch 'da/difftool-test'Junio C Hamano Mon, 16 Apr 2012 05:52:04 +0000 (22:52 -0700)

Merge branch 'da/difftool-test'

Makes sure "difftool" options can be given in any order.

By David Aguilar
* da/difftool-test:
t7800: Test difftool passing arguments to diff

Merge branch 'zj/test-cred-helper-nicer-prove'Junio C Hamano Mon, 16 Apr 2012 05:51:56 +0000 (22:51 -0700)

Merge branch 'zj/test-cred-helper-nicer-prove'

Minor improvement to t0303.

By Zbigniew Jędrzejewski-Szmek
* zj/test-cred-helper-nicer-prove:
t0303: resurrect commit message as test documentation
t0303: immediately bail out w/o GIT_TEST_CREDENTIAL_HELPER

Merge branch 'jh/notes-merge-in-git-dir-worktree'Junio C Hamano Mon, 16 Apr 2012 05:51:44 +0000 (22:51 -0700)

Merge branch 'jh/notes-merge-in-git-dir-worktree'

Running "notes merge --commit" failed to perform correctly when run
from any directory inside $GIT_DIR/. When "notes merge" stops with
conflicts, $GIT_DIR/NOTES_MERGE_WORKTREE is the place a user edits
to resolve it.

By Johan Herland (3) and Junio C Hamano (1)
* jh/notes-merge-in-git-dir-worktree:
notes-merge: Don't remove .git/NOTES_MERGE_WORKTREE; it may be the user's cwd
notes-merge: use opendir/readdir instead of using read_directory()
t3310: illustrate failure to "notes merge --commit" inside $GIT_DIR/
remove_dir_recursively(): Add flag for skipping removal of toplevel dir

Merge branch 'tr/maint-word-diff-regex-sticky'Junio C Hamano Mon, 16 Apr 2012 05:51:34 +0000 (22:51 -0700)

Merge branch 'tr/maint-word-diff-regex-sticky'

The regexp configured with wordregex was incorrectly reused across files.

By Thomas Rast (2) and Johannes Sixt (1)
* tr/maint-word-diff-regex-sticky:
diff: tweak a _copy_ of diff_options with word-diff
diff: refactor the word-diff setup from builtin_diff_cmd
t4034: diff.*.wordregex should not be "sticky" in --word-diff

Merge branch 'jn/diffstat-tests'Junio C Hamano Mon, 16 Apr 2012 05:51:24 +0000 (22:51 -0700)

Merge branch 'jn/diffstat-tests'

Some tests checked the "diff --stat" output when they do not have to,
which unnecessarily made things harder to verify under GETTEXT_POISON.

By Jonathan Nieder
* jn/diffstat-tests:
diffstat summary line varies by locale: miscellany
test: use numstat instead of diffstat in binary-diff test
test: use --numstat instead of --stat in "git stash show" tests
test: test cherry-pick functionality and output separately
test: modernize funny-names test style
test: use numstat instead of diffstat in funny-names test
test: use test_i18ncmp when checking --stat output

Merge branch 'jc/diff-algo-cleanup'Junio C Hamano Mon, 16 Apr 2012 05:51:14 +0000 (22:51 -0700)

Merge branch 'jc/diff-algo-cleanup'

Resurrects the preparatory clean-up patches from another topic that was
discarded, as this would give a saner foundation to build on diff.algo
configuration option series.

* jc/diff-algo-cleanup:
xdiff: PATIENCE/HISTOGRAM are not independent option bits
xdiff: remove XDL_PATCH_* macros

Merge branch 'jc/commit-hook-authorship'Junio C Hamano Mon, 16 Apr 2012 05:51:01 +0000 (22:51 -0700)

Merge branch 'jc/commit-hook-authorship'

"git commit --author=$name" did not tell the name that was being recorded
in the resulting commit to hooks, even though it does do so when the end
user overrode the authorship via the "GIT_AUTHOR_NAME" environment
variable.

* jc/commit-hook-authorship:
commit: pass author/committer info to hooks
t7503: does pre-commit-hook learn authorship?
ident.c: add split_ident_line() to parse formatted ident line

Merge branch 'nd/stream-more'Junio C Hamano Mon, 16 Apr 2012 05:50:38 +0000 (22:50 -0700)

Merge branch 'nd/stream-more'

Use API to read blob data in smaller chunks in more places to reduce the
memory footprint.

By Nguyễn Thái Ngọc Duy (6) and Junio C Hamano (1)
* nd/stream-more:
update-server-info: respect core.bigfilethreshold
fsck: use streaming API for writing lost-found blobs
show: use streaming API for showing blobs
parse_object: avoid putting whole blob in core
cat-file: use streaming API to print blobs
Add more large blob test cases
streaming: make streaming-write-entry to be more reusable

merge overwrites unstaged changes in renamed fileClemens Buchacher Sat, 14 Apr 2012 23:15:17 +0000 (01:15 +0200)

merge overwrites unstaged changes in renamed file

Signed-off-by: Clemens Buchacher <drizzd@aon.at>
Signed-off-by: Junio C Hamano <gitster@pobox.com>

Kick off post 1.7.10 cycleJunio C Hamano Wed, 11 Apr 2012 19:17:17 +0000 (12:17 -0700)

Kick off post 1.7.10 cycle

I tentatively named the release notes "1.7.11" but this may have to
be renamed to "1.8" or some other name later. Let's see how well
we would do during this cycle.

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

gitweb: Fix unintended "--no-merges" for regular Atom... Sebastian Pipping Wed, 4 Apr 2012 12:25:44 +0000 (14:25 +0200)

gitweb: Fix unintended "--no-merges" for regular Atom feed

The print_feed_meta() subroutine generates links for feeds with and
without merges, in RSS and Atom formats. However because %href_params
was not properly reset, it generated links with "--no-merges" for all
except the very first link.

Before:
<link rel="alternate" title="[..] - Atom feed" href="/?p=.git;a=atom;opt=--no-merges" type="application/atom+xml" />
<link rel="alternate" title="[..] - Atom feed (no merges)" href="/?p=.git;a=atom;opt=--no-merges" type="application/atom+xml" />

After:
<link rel="alternate" title="[..] - Atom feed" href="/?p=.git;a=atom" type="application/atom+xml" />
<link rel="alternate" title="[..] - Atom feed (no merges)" href="/?p=.git;a=atom;opt=--no-merges" type="application/atom+xml" />

Signed-off-by: Sebastian Pipping <sebastian@pipping.org>
Signed-off-by: Jakub Narebski <jnareb@gmail.com>
Signed-off-by: Junio C Hamano <gitster@pobox.com>

unpack-trees: plug minor memory leakRené Scharfe Tue, 6 Mar 2012 19:37:23 +0000 (20:37 +0100)

unpack-trees: plug minor memory leak

The allocations made by unpack_nondirectories() using create_ce_entry()
are never freed.

In the non-merge case, we duplicate them using add_entry() and later
only look at the first allocated element (src[0]), perhaps even only
by mistake. Split out the actual addition from add_entry() into the
new helper do_add_entry() and call this non-duplicating function
instead of add_entry() to avoid the leak.

Valgrind reports this for the command "git archive v1.7.9" without
the patch:

==13372== LEAK SUMMARY:
==13372== definitely lost: 230,986 bytes in 2,325 blocks
==13372== indirectly lost: 0 bytes in 0 blocks
==13372== possibly lost: 98 bytes in 1 blocks
==13372== still reachable: 2,259,198 bytes in 3,243 blocks
==13372== suppressed: 0 bytes in 0 blocks

And with the patch applied:

==13375== LEAK SUMMARY:
==13375== definitely lost: 65 bytes in 1 blocks
==13375== indirectly lost: 0 bytes in 0 blocks
==13375== possibly lost: 0 bytes in 0 blocks
==13375== still reachable: 2,364,417 bytes in 3,245 blocks
==13375== suppressed: 0 bytes in 0 blocks

Signed-off-by: Rene Scharfe <rene.scharfe@lsrfire.ath.cx>
Signed-off-by: Junio C Hamano <gitster@pobox.com>

unpack-trees: don't perform any index operation if... René Scharfe Tue, 10 Apr 2012 18:55:58 +0000 (20:55 +0200)

unpack-trees: don't perform any index operation if we're not merging

src[0] points to the index entry in the merge case and to the first
tree to unpack in the non-merge case. We only want to mark the index
entry, so check first if we're merging.

Signed-off-by: Rene Scharfe <rene.scharfe@lsrfire.ath.cx>
Signed-off-by: Junio C Hamano <gitster@pobox.com>

Merge branch 'maint'Junio C Hamano Tue, 10 Apr 2012 19:45:35 +0000 (12:45 -0700)

Merge branch 'maint'

* maint:
test-subprocess: fix segfault without arguments
submodule: fix prototype of gitmodules_config

Merge branch 'maint-1.7.9' into maintJunio C Hamano Tue, 10 Apr 2012 19:44:58 +0000 (12:44 -0700)

Merge branch 'maint-1.7.9' into maint

* maint-1.7.9:

Merge branch 'maint-1.7.8' into maint-1.7.9Junio C Hamano Tue, 10 Apr 2012 19:44:45 +0000 (12:44 -0700)

Merge branch 'maint-1.7.8' into maint-1.7.9

* maint-1.7.8:
Documentation/gitweb: trivial English fixes
fetch/receive: remove over-pessimistic connectivity check

test-subprocess: fix segfault without argumentsRené Scharfe Tue, 10 Apr 2012 19:07:34 +0000 (21:07 +0200)

test-subprocess: fix segfault without arguments

Check if we even have a parameter before checking its value. Running
this command without any arguments may not make a lot of sense, but
reacting with a segmentation fault is unduly harsh.

While we're at it, avoid casting argv by declaring it const right away.

Signed-off-by: Rene Scharfe <rene.scharfe@lsrfire.ath.cx>
Signed-off-by: Junio C Hamano <gitster@pobox.com>

submodule: fix prototype of gitmodules_configRené Scharfe Tue, 10 Apr 2012 19:10:26 +0000 (21:10 +0200)

submodule: fix prototype of gitmodules_config

Add void to make it match its definition in submodule.c.

Signed-off-by: Rene Scharfe <rene.scharfe@lsrfire.ath.cx>
Signed-off-by: Junio C Hamano <gitster@pobox.com>

Fix git-subtree install instructionsDavid A. Greene Tue, 10 Apr 2012 03:19:01 +0000 (22:19 -0500)

Fix git-subtree install instructions

Update the install instructions to reflect the changes for an
integrated git-subtree.

Signed-off-by: David A. Greene <greened@obbligato.org>

Use git-subtree test MakefileDavid A. Greene Tue, 10 Apr 2012 03:07:02 +0000 (22:07 -0500)

Use git-subtree test Makefile

Use the Makefile in contrib/subtree/t to run git-subtree tests.

Signed-off-by: David A. Greene <greened@obbligato.org>

Add subtree test MakefileDavid A. Greene Sun, 5 Feb 2012 22:29:06 +0000 (16:29 -0600)

Add subtree test Makefile

Add a Makefile to run subtree tests. This is largely copied
from the standard test suite with irrelevant targets removed
and some paths altered to account for where subtree tests live.

Signed-off-by: David A. Greene <greened@obbligato.org>

Install git-subtree from contribDavid A. Greene Tue, 10 Apr 2012 02:13:03 +0000 (21:13 -0500)

Install git-subtree from contrib

Build git-subtree in its contrib directory and install from there.
The main Makefile no longer discovers subcommands build in the main
build area so we cannot count on it to install git-subtree. The user
should make && make install in contrib/subtree to install git-subtree.

Change the rule to install the git-subtree manpage. The main
Documentation area doesn't directly support installing documentation
from other directories so the user will have to do that from within
contrib/subtree for now.

Signed-off-by: David A. Greene <greened@obbligato.org>

Use configure settings for git-subtreeDavid A. Greene Tue, 10 Apr 2012 02:39:08 +0000 (21:39 -0500)

Use configure settings for git-subtree

Include config.make.autogen in the git-subtree contrib area to pick up
settings for prefix and other such things.

Signed-off-by: David A. Greene <greened@obbligato.org>

Use project config filesDavid A. Greene Sun, 29 Jan 2012 22:17:43 +0000 (16:17 -0600)

Use project config files

Use project-wide files to process documentation for git-subtree.

Signed-off-by: David A. Greene <greened@obbligato.org>

Remove unnecessary git-subtree filesDavid A. Greene Tue, 10 Apr 2012 03:11:25 +0000 (22:11 -0500)

Remove unnecessary git-subtree files

Remove various files that simply duplicate functionality already
provided by the main project files.

Signed-off-by: David A. Greene <greened@obbligato.org>

Set TEST_DIRECTORYDavid A. Greene Tue, 20 Mar 2012 23:11:49 +0000 (18:11 -0500)

Set TEST_DIRECTORY

Set TEST_DIRECTORY to the main git test area. This allows the
git-subtree out-of-tree tests to run correctly.

Signed-off-by: David A. Greene <greened@obbligato.org>

Add 'contrib/subtree/' from commit 'd3a04e06c77d57978bb... David A. Greene Tue, 10 Apr 2012 01:22:55 +0000 (20:22 -0500)

Add 'contrib/subtree/' from commit 'd3a04e06c77d57978bb5230361c64946232cc346'

git-subtree-dir: contrib/subtree
git-subtree-mainline: e8dde3e5f9ddb7cf95a6ff3cea6cf07c3a2db80d
git-subtree-split: d3a04e06c77d57978bb5230361c64946232cc346

Merge branch 'jc/maint-verify-objects-remove-pessimism... Junio C Hamano Mon, 9 Apr 2012 20:43:16 +0000 (13:43 -0700)

Merge branch 'jc/maint-verify-objects-remove-pessimism' into maint-1.7.8

* jc/maint-verify-objects-remove-pessimism:
fetch/receive: remove over-pessimistic connectivity check

Merge branch 'dw/gitweb-doc-grammo' into maint-1.7.8Junio C Hamano Mon, 9 Apr 2012 20:42:56 +0000 (13:42 -0700)

Merge branch 'dw/gitweb-doc-grammo' into maint-1.7.8

* dw/gitweb-doc-grammo:
Documentation/gitweb: trivial English fixes

Merge branch 'tr/cache-tree' into maint-1.7.8Junio C Hamano Mon, 9 Apr 2012 20:40:32 +0000 (13:40 -0700)

Merge branch 'tr/cache-tree' into maint-1.7.8

* tr/cache-tree:
t0090: be prepared that 'wc -l' writes leading blanks
reset: update cache-tree data when appropriate
commit: write cache-tree data when writing index anyway
Refactor cache_tree_update idiom from commit
Test the current state of the cache-tree optimization
Add test-scrap-cache-tree

Merge branch 'cb/maint-t5541-make-server-port-portable... Junio C Hamano Mon, 9 Apr 2012 20:38:41 +0000 (13:38 -0700)

Merge branch 'cb/maint-t5541-make-server-port-portable' into maint-1.7.8

* cb/maint-t5541-make-server-port-portable:
t5541: check error message against the real port number used
remote-curl: Fix push status report when all branches fail

Merge branch 'cn/maint-rev-list-doc' into maint-1.7.8Junio C Hamano Mon, 9 Apr 2012 20:36:44 +0000 (13:36 -0700)

Merge branch 'cn/maint-rev-list-doc' into maint-1.7.8

* cn/maint-rev-list-doc:
Documentation: use {asterisk} in rev-list-options.txt when needed

Merge branch 'tr/maint-bundle-boundary' into maint... Junio C Hamano Mon, 9 Apr 2012 20:36:26 +0000 (13:36 -0700)

Merge branch 'tr/maint-bundle-boundary' into maint-1.7.8

* tr/maint-bundle-boundary:
bundle: keep around names passed to add_pending_object()
t5510: ensure we stay in the toplevel test dir
t5510: refactor bundle->pack conversion

Merge branch 'tr/maint-bundle-long-subject' into maint... Junio C Hamano Mon, 9 Apr 2012 20:36:20 +0000 (13:36 -0700)

Merge branch 'tr/maint-bundle-long-subject' into maint-1.7.8

* tr/maint-bundle-long-subject:
t5704: match tests to modern style
strbuf: improve strbuf_get*line documentation
bundle: use a strbuf to scan the log for boundary commits
bundle: put strbuf_readline_fd in strbuf.c with adjustments

Merge branch 'ph/rerere-doc' into maint-1.7.8Junio C Hamano Mon, 9 Apr 2012 20:34:09 +0000 (13:34 -0700)

Merge branch 'ph/rerere-doc' into maint-1.7.8

* ph/rerere-doc:
rerere: Document 'rerere remaining'

Git 1.7.10 v1.7.10Junio C Hamano Fri, 6 Apr 2012 17:47:58 +0000 (10:47 -0700)

Git 1.7.10

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

spec: add missing build dependencyFelipe Contreras Fri, 6 Apr 2012 12:22:30 +0000 (15:22 +0300)

spec: add missing build dependency

Otherwise:

/usr/bin/perl Makefile.PL PREFIX='/opt/git' INSTALL_BASE=''
Can't locate ExtUtils/MakeMaker.pm in @INC (@INC contains: ...) at Makefile.PL line 1.
BEGIN failed--compilation aborted at Makefile.PL line 1.
make[1]: *** [perl.mak] Error 2
make: *** [perl/perl.mak] Error 2

Signed-off-by: Felipe Contreras <felipe.contreras@gmail.com>
Signed-off-by: Junio C Hamano <gitster@pobox.com>

add--interactive: ignore unmerged entries in patch... Jeff King Thu, 5 Apr 2012 12:30:08 +0000 (08:30 -0400)

add--interactive: ignore unmerged entries in patch mode

When "add -p" sees an unmerged entry, it shows the combined
diff and then immediately skips the hunk. This can be
confusing in a variety of ways, depending on whether there
are other changes to stage (in which case you get the
superfluous combined diff output in between other hunks) or
not (in which case you get the combined diff and the program
exits immediately, rather than seeing "No changes").

The current behavior was not planned, and is just what the
implementation happens to do. Instead, let's explicitly
remove unmerged entries from our list of modified files, and
print a warning that we are ignoring them.

We can cheaply find which entries are unmerged by adding
"--raw" output to the "diff-files --numstat" we already run.
There is one non-obvious thing we must change when parsing
this combined output. Before this patch, when we saw a
numstat line for a file that did not have index changes, we
would create a new record with 'unchanged' in the 'INDEX'
field. Because "--raw" comes before "--numstat", we must
move this special-case down to the raw-line case (and it is
sufficient to move it rather than handle it in both places,
since any file which has a --numstat will also have a --raw
entry).

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

Use SHELL_PATH from build system in run_command.c:prepa... Ben Walton Sat, 31 Mar 2012 01:33:21 +0000 (21:33 -0400)

Use SHELL_PATH from build system in run_command.c:prepare_shell_cmd

During the testing of the 1.7.10 rc series on Solaris for OpenCSW, it
was discovered that t7006-pager was failing due to finding a bad "sh"
in PATH after a call to execvp("sh", ...). This call was setup by
run_command.c:prepare_shell_cmd.

The PATH in use at the time saw /opt/csw/bin given precedence to
traditional Solaris paths such as /usr/bin and /usr/xpg4/bin. A
package named schilyutils (Joerg Schilling's utilities) was installed
on the build system and it delivered a modified version of the
traditional Solaris /usr/bin/sh as /opt/csw/bin/sh. This version of
sh suffers from many of the same problems as /usr/bin/sh.

The command-specific pager test failed due to the broken "sh" handling
^ as a pipe character. It tried to fork two processes when it
encountered "sed s/^/foo:/" as the pager command. This problem was
entirely dependent on the PATH of the user at runtime.

Possible fixes for this issue are:

1. Use the standard system() or popen() which both launch a POSIX
shell on Solaris as long as _POSIX_SOURCE is defined.

2. The git wrapper could prepend SANE_TOOL_PATH to PATH thus forcing
all unqualified commands run to use the known good tools on the
system.

3. The run_command.c:prepare_shell_command() could use the same
SHELL_PATH that is in the #! line of all all scripts and not rely
on PATH to find the sh to run.

Option 1 would preclude opening a bidirectional pipe to a filter
script and would also break git for Windows as cmd.exe is spawned from
system() (cf. v1.7.5-rc0~144^2, "alias: use run_command api to execute
aliases, 2011-01-07).

Option 2 is not friendly to users as it would negate their ability to
use tools of their choice in many cases. Alternately, injecting
SANE_TOOL_PATH such that it takes precedence over /bin and /usr/bin
(and anything with lower precedence than those paths) as
git-sh-setup.sh does would not solve the problem either as the user
environment could still allow a bad sh to be found. (Many OpenCSW
users will have /opt/csw/bin leading their PATH and some subset would
have schilyutils installed.)

Option 3 allows us to use a known good shell while still honouring the
users' PATH for the utilities being run. Thus, it solves the problem
while not negatively impacting either users or git's ability to run
external commands in convenient ways. Essentially, the shell is a
special case of tool that should not rely on SANE_TOOL_PATH and must
be called explicitly.

With this patch applied, any code path leading to
run_command.c:prepare_shell_cmd can count on using the same sane shell
that all shell scripts in the git suite use. Both the build system
and run_command.c will default this shell to /bin/sh unless
overridden.

Signed-off-by: Ben Walton <bwalton@artsci.utoronto.ca>
Reviewed-by: Jonathan Nieder <jrnieder@gmail.com>
Signed-off-by: Junio C Hamano <gitster@pobox.com>

Documentation/git-commit: rephrase the "initial-ness... Junio C Hamano Tue, 3 Apr 2012 23:41:21 +0000 (16:41 -0700)

Documentation/git-commit: rephrase the "initial-ness" of templates

The description of "commit -t <file>" said the file is used "as the
initial version" of the commit message, but in the context of an SCM,
"version" is a loaded word that can needlesslyl confuse readers.

Explain the purpose of the mechanism without using "version".

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

Git 1.7.10-rc4 v1.7.10-rc4Junio C Hamano Tue, 3 Apr 2012 16:25:49 +0000 (09:25 -0700)

Git 1.7.10-rc4

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

Merge branch 'pt/gitk'Junio C Hamano Mon, 2 Apr 2012 22:06:25 +0000 (15:06 -0700)

Merge branch 'pt/gitk'

* pt/gitk:
gitk: fix setting font display with new tabbed dialog layout.
gitk: fix tabbed preferences construction when using tcl 8.4

Sync with 1.7.9.6Junio C Hamano Mon, 2 Apr 2012 20:09:21 +0000 (13:09 -0700)

Sync with 1.7.9.6

Git 1.7.9.6 v1.7.9.6Junio C Hamano Mon, 2 Apr 2012 20:07:58 +0000 (13:07 -0700)

Git 1.7.9.6

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

Merge branch 'jc/maint-merge-autoedit' into maintJunio C Hamano Mon, 2 Apr 2012 19:56:35 +0000 (12:56 -0700)

Merge branch 'jc/maint-merge-autoedit' into maint

* jc/maint-merge-autoedit:
merge: backport GIT_MERGE_AUTOEDIT support

gitk: fix setting font display with new tabbed dialog... Pat Thoyts Sun, 1 Apr 2012 22:00:52 +0000 (23:00 +0100)

gitk: fix setting font display with new tabbed dialog layout.

The changes to the dialog window tree broke the preview of the selected
font on the button. This corrects that issue.

Signed-off-by: Pat Thoyts <patthoyts@users.sourceforge.net>
Signed-off-by: Junio C Hamano <gitster@pobox.com>

gitk: fix tabbed preferences construction when using... Pat Thoyts Sun, 1 Apr 2012 22:00:51 +0000 (23:00 +0100)

gitk: fix tabbed preferences construction when using tcl 8.4

In 8.5 the incr command creates the target variable if it does not exist
but in 8.4 using incr on a non-existing variable raises an error. Ensure
we have created our counter variable when creating the tabbed dialog for
non-themed preferences.

Reported-by: Ramsay Jones <ramsay@ramsay1.demon.co.uk>
Signed-off-by: Pat Thoyts <patthoyts@users.sourceforge.net>
Signed-off-by: Junio C Hamano <gitster@pobox.com>

Merge git://github.com/git-l10n/git-poJunio C Hamano Mon, 2 Apr 2012 16:19:47 +0000 (09:19 -0700)

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

Portuguese Portuguese translations from Marco Sousa via Jiang Xin

* 'master' of git://github.com/git-l10n/git-po:
l10n: Add the Dutch translation team and initialize nl.po
l10n: Inital Portuguese Portugal language (pt_PT)
l10n: Improve zh_CN translation for Git 1.7.10-rc3

l10n: Add the Dutch translation team and initialize... Vincent van Ravesteijn Mon, 2 Apr 2012 12:14:08 +0000 (14:14 +0200)

l10n: Add the Dutch translation team and initialize nl.po

Signed-off-by: Vincent van Ravesteijn <vfr@lyx.org>

l10n: Inital Portuguese Portugal language (pt_PT)Marco Sousa Sat, 31 Mar 2012 15:51:45 +0000 (17:51 +0200)

l10n: Inital Portuguese Portugal language (pt_PT)

Signed-off-by: Marco Sousa <marcomsousa@gmail.com>

git-commit.txt: clarify -t requires editing messageAdam Monsen Sat, 31 Mar 2012 19:28:15 +0000 (12:28 -0700)

git-commit.txt: clarify -t requires editing message

Make it clear that, when using commit --template, the message *must* be
changed or the commit will be aborted.

Helped-by: Junio C Hamano <gitster@pobox.com>
Helped-by: Ivan Heffner <iheffner@gmail.com>
Signed-off-by: Adam Monsen <haircut@gmail.com>
Signed-off-by: Junio C Hamano <gitster@pobox.com>

Merge branch 'maint'Junio C Hamano Sat, 31 Mar 2012 03:25:55 +0000 (20:25 -0700)

Merge branch 'maint'

* maint:
string-list: document that string_list_insert() inserts unique strings

commit: rephrase the error when user did not touch... Junio C Hamano Fri, 30 Mar 2012 19:14:33 +0000 (12:14 -0700)

commit: rephrase the error when user did not touch templated log message

When the user exited editor without editing the commit log template given
by "git commit -t <template>", the commit was aborted (correct) with an
error message that said "due to empty commit message" (incorrect).

This was because the original template support was done by piggybacking on
the check to detect an empty log message. Split the codepaths into two
independent checks to clarify the error.

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

commit: do not trigger bogus "has templated message... Junio C Hamano Fri, 30 Mar 2012 18:30:59 +0000 (11:30 -0700)

commit: do not trigger bogus "has templated message edited" check

When "-t template" and "-F msg" options are both given (or worse yet,
there is "commit.template" configuration but a message is given in some
other way), the documentation says that template is ignored. However,
the "has the user edited the message?" check still used the contents of
the template file as the basis of the emptyness check.

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

t7501: test the right kind of breakageJunio C Hamano Fri, 30 Mar 2012 18:04:08 +0000 (11:04 -0700)

t7501: test the right kind of breakage

These tests try to run "git commit" with various "forbidden" combinations
of options and expect the command to fail, but they do so without having
any change added to the index. We wouldn't be able to catch breakages
that would allow these combinations by mistake with them because the
command will fail with "nothing to commit" anyway.

Make sure we have something added to the index before running the command.

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

http-backend: respect existing GIT_COMMITTER_* variablesJeff King Fri, 30 Mar 2012 07:01:30 +0000 (03:01 -0400)

http-backend: respect existing GIT_COMMITTER_* variables

The http-backend program sets default GIT_COMMITTER_NAME and
GIT_COMMITTER_EMAIL variables based on the REMOTE_USER and
REMOTE_ADDR variables provided by the webserver. However, it
unconditionally overwrites any existing GIT_COMMITTER
variables, which may have been customized by site-specific
code in the webserver (or in a script wrapping http-backend).

Let's leave those variables intact if they already exist,
assuming that any such configuration was intentional. There
is a slight chance of a regression if somebody has set
GIT_COMMITTER_* for the entire webserver, not intending it
to leak through http-backend. We could protect against this
by passing the information in alternate variables. However,
it seems unlikely that anyone will care about that
regression, and there is value in the simplicity of using
the common variable names that are used elsewhere in git.

While we're tweaking the environment-handling in
http-backend, let's switch it to use argv_array to handle
the list of variables. That makes the memory management much
simpler.

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

gitweb: add If-Modified-Since handling to git_snapshot().W. Trevor King Thu, 29 Mar 2012 12:45:49 +0000 (08:45 -0400)

gitweb: add If-Modified-Since handling to git_snapshot().

Because snapshots can be large, you can save some bandwidth by
supporting caching via If-Modified-Since. This patch adds support for
the i-m-s request to git_snapshot() if the request is a commit.
Requests for snapshots of trees, which lack well defined timestamps,
are still handled as they were before.

Signed-off-by: W Trevor King <wking@drexel.edu>
Signed-off-by: Junio C Hamano <gitster@pobox.com>

gitweb: refactor If-Modified-Since handlingW. Trevor King Thu, 29 Mar 2012 12:45:48 +0000 (08:45 -0400)

gitweb: refactor If-Modified-Since handling

The current gitweb only generates Last-Modified and handles
If-Modified-Since headers for the git_feed action. This patch breaks
the Last-Modified and If-Modified-Since handling code out from
git_feed into a new function exit_if_unmodified_since. This makes the
code easy to reuse for other actions.

Only gitweb actions which can easily calculate a modification time
should use exit_if_unmodified_since, as the goal is to balance local
processing time vs. upload bandwidth.

Signed-off-by: W Trevor King <wking@drexel.edu>
Acked-by: Jakub Narebski <jnareb@gmail.com>
Signed-off-by: Junio C Hamano <gitster@pobox.com>

gitweb: add `status` headers to git_feed() responses.W. Trevor King Thu, 29 Mar 2012 12:45:47 +0000 (08:45 -0400)

gitweb: add `status` headers to git_feed() responses.

The git_feed() method was not setting a `Status` header unless it was
responding to an If-Modified-Since request with `304 Not Modified`.
Now, when it is serving successful responses, it sets status to `200
OK`.

Signed-off-by: W Trevor King <wking@drexel.edu>
Acked-by: Jakub Narebski <jnareb@gmail.com>
Signed-off-by: Junio C Hamano <gitster@pobox.com>

string-list: document that string_list_insert() inserts... Heiko Voigt Thu, 29 Mar 2012 07:21:22 +0000 (09:21 +0200)

string-list: document that string_list_insert() inserts unique strings

Signed-off-by: Heiko Voigt <hvoigt@hvoigt.net>
Signed-off-by: Junio C Hamano <gitster@pobox.com>

l10n: Improve zh_CN translation for Git 1.7.10-rc3Jiang Xin Fri, 30 Mar 2012 02:55:34 +0000 (10:55 +0800)

l10n: Improve zh_CN translation for Git 1.7.10-rc3

Improvements of zh_CN translations:

- Update translation for msg "Changes not staged for commit:".
- Remove unnecessary leading spaces for some messages.

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

config: remove useless assignmentRené Scharfe Wed, 28 Mar 2012 20:18:37 +0000 (22:18 +0200)

config: remove useless assignment

v1.7.9-8-g270a344 (config: stop using config_exclusive_filename) replaced
config_exclusive_filename with given_config_file. In one case this
resulted in a self-assignment, which is reported by clang as a warning.
Remove the useless code.

Signed-off-by: Rene Scharfe <rene.scharfe@lsrfire.ath.cx>
Acked-by: Jeff King <peff@peff.net>
Signed-off-by: Junio C Hamano <gitster@pobox.com>

Git 1.7.10-rc3 v1.7.10-rc3Junio C Hamano Wed, 28 Mar 2012 17:51:00 +0000 (10:51 -0700)

Git 1.7.10-rc3

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

correct a few doubled-word nits in comments and documen... Jim Meyering Wed, 28 Mar 2012 08:45:36 +0000 (10:45 +0200)

correct a few doubled-word nits in comments and documentation

Found by running this command:
$ git ls-files -z|xargs -0 perl -0777 -n \
-e 'while (/\b(then?|[iao]n|i[fst]|but|f?or|at|and|[dt]o)\s+\1\b/gims)' \
-e ' {' \
-e ' $n = ($` =~ tr/\n/\n/ + 1);' \
-e ' ($v = $&) =~ s/\n/\\n/g;' \
-e ' print "$ARGV:$n:$v\n";' \
-e ' }'

Why not just git grep -E ...?
That wouldn't work then the doubled words are separated by a newline.
This is derived from a Makefile syntax-check rule in gnulib's maint.mk:
http://git.sv.gnu.org/cgit/gnulib.git/tree/top/maint.mk

Signed-off-by: Jim Meyering <meyering@redhat.com>
Signed-off-by: Junio C Hamano <gitster@pobox.com>

correct spelling: an URL -> a URLJim Meyering Wed, 28 Mar 2012 08:41:54 +0000 (10:41 +0200)

correct spelling: an URL -> a URL

Signed-off-by: Jim Meyering <meyering@redhat.com>
Signed-off-by: Junio C Hamano <gitster@pobox.com>

l10n updates for Git 1.7.10-rc1Junio C Hamano Tue, 27 Mar 2012 15:39:18 +0000 (08:39 -0700)

l10n updates for Git 1.7.10-rc1

* 'master' of git://github.com/git-l10n/git-po:
Add url of Swedish l10n team in TEAMS file
l10n: Review zh_CN translation for Git 1.7.10-rc1
Update Swedish translation (724t0f0u).
l10n: Update zh_CN translation for Git 1.7.10-rc1
l10n: Update git.pot (1 new message)

tests: unset COLUMNS inherited from environmentZbigniew Jędrzejewski-Szmek Tue, 27 Mar 2012 06:22:02 +0000 (08:22 +0200)

tests: unset COLUMNS inherited from environment

$COLUMNS must be unset to not interfere with the tests. The tests
already ignore the terminal size because output is redirected to a
file, but COLUMNS overrides terminal size detection and changes the
test output away from the standard 80.

Reported-by: Jeff King <peff@peff.net>
Signed-off-by: Zbigniew Jędrzejewski-Szmek <zbyszek@in.waw.pl>
Signed-off-by: Junio C Hamano <gitster@pobox.com>

Add url of Swedish l10n team in TEAMS fileJiang Xin Tue, 27 Mar 2012 09:11:34 +0000 (17:11 +0800)

Add url of Swedish l10n team in TEAMS file

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

l10n: Review zh_CN translation for Git 1.7.10-rc1Jiang Xin Tue, 27 Mar 2012 06:46:11 +0000 (14:46 +0800)

l10n: Review zh_CN translation for Git 1.7.10-rc1

Overall review of the zh_CN translation:

- Distinguish the translations of index and stage, though they are the
same thing.

- Many other fixes, e.g., add the lost periods at the end of translated
sentences.

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

Update Swedish translation (724t0f0u).Peter Krefting Thu, 15 Mar 2012 09:47:06 +0000 (10:47 +0100)

Update Swedish translation (724t0f0u).

- Update for 1.7.10-rc1.
- Add a missing -e when generaring the "Untracked files" message.
- Fixed some wordings after playing with the localized version.

teach "git branch" a --quiet optionJeff King Mon, 26 Mar 2012 23:51:06 +0000 (19:51 -0400)

teach "git branch" a --quiet option

There's currently no way to suppress the informational
"deleted branch..." or "set up tracking..." messages. This
patch provides a "-q" option to do so.

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

checkout: suppress tracking message with "-q"Jeff King Mon, 26 Mar 2012 23:51:01 +0000 (19:51 -0400)

checkout: suppress tracking message with "-q"

Like the "switched to..." message (which is already
suppressed by "-q"), this message is purely informational.
Let's silence it if the user asked us to be quiet.

This patch is slightly more than a one-liner, because we
have to teach create_branch to propagate the flag all the
way down to install_branch_config.

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

Update draft release notes to 1.7.10Junio C Hamano Mon, 26 Mar 2012 19:38:34 +0000 (12:38 -0700)

Update draft release notes to 1.7.10

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

Sync with 1.7.9.5Junio C Hamano Mon, 26 Mar 2012 19:30:51 +0000 (12:30 -0700)

Sync with 1.7.9.5

Git 1.7.9.5 v1.7.9.5Junio C Hamano Mon, 26 Mar 2012 19:23:34 +0000 (12:23 -0700)

Git 1.7.9.5

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

Merge branch 'jn/maint-fast-import-empty-ls' into maintJunio C Hamano Mon, 26 Mar 2012 19:10:25 +0000 (12:10 -0700)

Merge branch 'jn/maint-fast-import-empty-ls' into maint

* jn/maint-fast-import-empty-ls:
fast-import: don't allow 'ls' of path with empty components
fast-import: leakfix for 'ls' of dirty trees

Merge branch 'ph/rerere-doc' into maintJunio C Hamano Mon, 26 Mar 2012 19:10:12 +0000 (12:10 -0700)

Merge branch 'ph/rerere-doc' into maint

* ph/rerere-doc:
rerere: Document 'rerere remaining'

Merge branch 'ms/maint-config-error-at-eol-linecount... Junio C Hamano Mon, 26 Mar 2012 19:10:05 +0000 (12:10 -0700)

Merge branch 'ms/maint-config-error-at-eol-linecount' into maint

* ms/maint-config-error-at-eol-linecount:
config: report errors at the EOL with correct line number

grep doc: add --break / --heading / -W to synopsisMark Lodato Mon, 26 Mar 2012 02:41:42 +0000 (22:41 -0400)

grep doc: add --break / --heading / -W to synopsis

All of the other options were included in the synopsis, so it makes
sense to include these as well.

Signed-off-by: Mark Lodato <lodatom@gmail.com>
Signed-off-by: Junio C Hamano <gitster@pobox.com>

configure: be more idiomaticStefano Lattarini Mon, 26 Mar 2012 16:42:26 +0000 (18:42 +0200)

configure: be more idiomatic

Lots of code in Git's configure.ac doesn't follow the typical formatting,
idioms and best practices for Autoconf input files. Improve the situation.

There are probably many more similar improvements to be done, but trying
to clump all of them in a single change would make it unreviewable, so we
content ourselves with a partial improvement.

This change is just cosmetic, and should cause no semantic change.

The most relevant of the changes introduced by this patch are:

- Do not add trailing '\' characters for line continuation where they
are not truly needed.

- In several (but not all) macro calls, properly quote the arguments.

- Few cosmetic changes in spacing and comments.

Signed-off-by: Stefano Lattarini <stefano.lattarini@gmail.com>
Signed-off-by: Junio C Hamano <gitster@pobox.com>

configure: avoid some code repetitions thanks to m4_... Stefano Lattarini Mon, 26 Mar 2012 16:42:25 +0000 (18:42 +0200)

configure: avoid some code repetitions thanks to m4_{push,pop}def

This change is just cosmetic, and should cause no semantic change, nor
any change in the generated configure script.

Signed-off-by: Stefano Lattarini <stefano.lattarini@gmail.com>
Signed-off-by: Junio C Hamano <gitster@pobox.com>

configure: move definitions of private m4 macros before... Stefano Lattarini Mon, 26 Mar 2012 16:42:24 +0000 (18:42 +0200)

configure: move definitions of private m4 macros before AC_INIT invocation

This way, no spurious comments nor whitespace will be propagated in the
generated configure script.

This change is a pure code movement (plus addition of a comment line).

Signed-off-by: Stefano Lattarini <stefano.lattarini@gmail.com>
Signed-off-by: Junio C Hamano <gitster@pobox.com>

Documentation: improve description of GIT_EDITOR and... Rodrigo Silva (MestreLion) Fri, 23 Mar 2012 12:38:42 +0000 (12:38 +0000)

Documentation: improve description of GIT_EDITOR and preference order

Previously GIT_EDITOR was not listed in git(1) "Environment Variables" section,
which could be very confusing to users. Include it in "other" subsection along
with a link to git-var(1), since that is the page that fully describes all
places where editor can be set and also their preference order.

Also, git-var(1) did not say that hardcoded fallback 'vi' may have been changed
at build time. A user could be puzzled if 'nano' pops up even when none of the
mentioned environment vars or config.editor are set. Clarify this.

Ideally, the build system should be changed to reflect the chosen fallback
editor when creating the man pages. Not sure if that is even possible though.

Signed-off-by: Rodrigo Silva (MestreLion) <linux@rodrigosilva.com>
Signed-off-by: Junio C Hamano <gitster@pobox.com>

documentation: fix alphabetic ordered list for git... Nelson Benitez Leon Fri, 23 Mar 2012 11:31:39 +0000 (12:31 +0100)

documentation: fix alphabetic ordered list for git-rebase man page

An alphabetic ordered list (a.) is converted to numerical in
the man page (1.) so context comments naming 'a' were confusing,
fix that by not using ordered list notation for 'a' anb 'b' items.

Signed-off-by: Nelson Benitez Leon <nelsonjesus.benitez@seap.minhap.es>
Signed-off-by: Junio C Hamano <gitster@pobox.com>

combine-diff: fix loop index underflowRené Scharfe Sat, 24 Mar 2012 15:18:46 +0000 (16:18 +0100)

combine-diff: fix loop index underflow

If both la and context are zero at the start of the loop, la wraps around
and we end up reading from memory far away. Skip the loop in that case
instead.

Reported-by: Julia Lawall <julia.lawall@lip6.fr>
Signed-off-by: Rene Scharfe <rene.scharfe@lsrfire.ath.cx>
Signed-off-by: Junio C Hamano <gitster@pobox.com>

Merge gitk changes from Paul Mackerras at git://ozlabs... Junio C Hamano Sat, 24 Mar 2012 08:30:30 +0000 (01:30 -0700)

Merge gitk changes from Paul Mackerras at git://ozlabs.org/~paulus/gitk

* git://ozlabs.org/~paulus/gitk:
gitk: Teach gitk to respect log.showroot
gitk: Add menu items for comparing a commit with the marked commit
gitk: Speed up resolution of short SHA1 ids
gitk: Use symbolic font names "sans" and "monospace" when available
gitk: Skip over AUTHOR/COMMIT_DATE when searching all fields
gitk: Make "git describe" output clickable, too
gitk: Fix the display of files when filtered by path
gitk: Use a tabbed dialog to edit preferences
gitk: Use "gitk: repo-top-level-dir" as window title

gitk: Teach gitk to respect log.showrootMarcus Karlsson Tue, 4 Oct 2011 20:08:13 +0000 (22:08 +0200)

gitk: Teach gitk to respect log.showroot

In early days, all projects managed by git (except for git itself) had the
product of a fairly mature development history in their first commit, and
it was deemed unnecessary clutter to show additions of these thousands of
paths as a patch.

"git log" learned to show the patch for the initial commit without requiring
--root command line option at 0f03ca9 (config option log.showroot to show
the diff of root commits, 2006-11-23).

Teach gitk to respect log.showroot.

[paulus@samba.org: Cleaned up the Tcl a bit, use --bool on the
git config call]

Signed-off-by: Marcus Karlsson <mk@acc.umu.se>
Signed-off-by: Paul Mackerras <paulus@samba.org>