gitweb.git
Merge branch 'ic/maint-rebase-i-abort' into maintJunio C Hamano Tue, 22 Jun 2010 16:31:48 +0000 (09:31 -0700)

Merge branch 'ic/maint-rebase-i-abort' into maint

* ic/maint-rebase-i-abort:
rebase -i: Abort cleanly if new base cannot be checked out

Merge branch 'cc/maint-commit-reflog-msg' into maintJunio C Hamano Tue, 22 Jun 2010 16:31:48 +0000 (09:31 -0700)

Merge branch 'cc/maint-commit-reflog-msg' into maint

* cc/maint-commit-reflog-msg:
commit: use value of GIT_REFLOG_ACTION env variable as reflog message

Merge branch 'jk/maint-advice-empty-amend' into maintJunio C Hamano Tue, 22 Jun 2010 16:31:48 +0000 (09:31 -0700)

Merge branch 'jk/maint-advice-empty-amend' into maint

* jk/maint-advice-empty-amend:
commit: give advice on empty amend

Merge branch 'tc/commit-abbrev-fix' into maintJunio C Hamano Tue, 22 Jun 2010 16:31:47 +0000 (09:31 -0700)

Merge branch 'tc/commit-abbrev-fix' into maint

* tc/commit-abbrev-fix:
commit::print_summary(): don't use format_commit_message()
t7502-commit: add summary output tests for empty and merge commits
t7502-commit: add tests for summary output

Merge branch 'jn/document-rebase-i-p-limitation' into... Junio C Hamano Tue, 22 Jun 2010 16:31:47 +0000 (09:31 -0700)

Merge branch 'jn/document-rebase-i-p-limitation' into maint

* jn/document-rebase-i-p-limitation:
rebase -i -p: document shortcomings

Merge branch 'jn/checkout-doc' into maintJunio C Hamano Tue, 22 Jun 2010 16:31:47 +0000 (09:31 -0700)

Merge branch 'jn/checkout-doc' into maint

* jn/checkout-doc:
Documentation/checkout: clarify description
Documentation/checkout: clarify description

Merge branch 'cc/maint-diff-CC-binary' into maintJunio C Hamano Tue, 22 Jun 2010 16:04:14 +0000 (09:04 -0700)

Merge branch 'cc/maint-diff-CC-binary' into maint

* cc/maint-diff-CC-binary:
diff: fix "git show -C -C" output when renaming a binary file

Conflicts:
diff.c

Merge branch 'jc/t9129-any-utf8' into maintJunio C Hamano Tue, 22 Jun 2010 15:31:53 +0000 (08:31 -0700)

Merge branch 'jc/t9129-any-utf8' into maint

* jc/t9129-any-utf8:
t9129: fix UTF-8 locale detection

Merge branch 'cb/ls-files-cdup' into maintJunio C Hamano Tue, 22 Jun 2010 15:31:46 +0000 (08:31 -0700)

Merge branch 'cb/ls-files-cdup' into maint

* cb/ls-files-cdup:
ls-files: allow relative pathspec
quote.c: separate quoting and relative path generation

Merge branch 'tc/merge-m-log' into maintJunio C Hamano Tue, 22 Jun 2010 15:31:25 +0000 (08:31 -0700)

Merge branch 'tc/merge-m-log' into maint

* tc/merge-m-log:
merge: --log appends shortlog to message if specified
fmt-merge-msg: add function to append shortlog only
fmt-merge-msg: refactor merge title formatting
fmt-merge-msg: minor refactor of fmt_merge_msg()
merge: rename variable
merge: update comment
t7604-merge-custom-message: show that --log doesn't append to -m
t7604-merge-custom-message: shift expected output creation

Merge branch 'ph/clone-message-reword' into maintJunio C Hamano Tue, 22 Jun 2010 15:31:20 +0000 (08:31 -0700)

Merge branch 'ph/clone-message-reword' into maint

* ph/clone-message-reword:
clone: reword messages to match the end-user perception

Merge branch 'jn/maint-amend-missing-name' into maintJunio C Hamano Tue, 22 Jun 2010 15:30:44 +0000 (08:30 -0700)

Merge branch 'jn/maint-amend-missing-name' into maint

* jn/maint-amend-missing-name:
commit --amend: cope with missing display name

Merge branch 'pc/remove-warn' into maintJunio C Hamano Tue, 22 Jun 2010 15:30:38 +0000 (08:30 -0700)

Merge branch 'pc/remove-warn' into maint

* pc/remove-warn:
Remove a redundant errno test in a usage of remove_path
Introduce remove_or_warn function
Implement the rmdir_or_warn function
Generalise the unlink_or_warn function

tests: remove unnecessary '^' from 'expr' regular expre... Junio C Hamano Mon, 21 Jun 2010 18:18:54 +0000 (11:18 -0700)

tests: remove unnecessary '^' from 'expr' regular expression

As Brandon noticed, a regular expression match given to 'expr' is already
anchored at the beginning. Some versions of expr even complain about this.

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

Update draft release notes to 1.7.1.1Junio C Hamano Mon, 21 Jun 2010 12:48:18 +0000 (05:48 -0700)

Update draft release notes to 1.7.1.1

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

Merge branch 'mc/maint-zoneparse' into maintJunio C Hamano Mon, 21 Jun 2010 12:41:03 +0000 (05:41 -0700)

Merge branch 'mc/maint-zoneparse' into maint

* mc/maint-zoneparse:
Add "Z" as an alias for the timezone "UTC"

Merge branch 'jk/diff-m-doc' into maintJunio C Hamano Mon, 21 Jun 2010 12:40:57 +0000 (05:40 -0700)

Merge branch 'jk/diff-m-doc' into maint

* jk/diff-m-doc:
docs: clarify meaning of -M for git-log

Merge branch 'jn/maint-doc-ignore' into maintJunio C Hamano Mon, 21 Jun 2010 12:40:53 +0000 (05:40 -0700)

Merge branch 'jn/maint-doc-ignore' into maint

* jn/maint-doc-ignore:
gitignore.5: Clarify matching rules

Merge branch 'bs/userdiff-php' into maintJunio C Hamano Mon, 21 Jun 2010 12:40:48 +0000 (05:40 -0700)

Merge branch 'bs/userdiff-php' into maint

* bs/userdiff-php:
diff: Support visibility modifiers in the PHP hunk header regexp

Merge branch 'jk/maint-sha1-file-name-fix' into maintJunio C Hamano Mon, 21 Jun 2010 12:40:41 +0000 (05:40 -0700)

Merge branch 'jk/maint-sha1-file-name-fix' into maint

* jk/maint-sha1-file-name-fix:
remove over-eager caching in sha1_file_name

Merge branch 'jk/maint-pull-dry-run-noop' into maintJunio C Hamano Mon, 21 Jun 2010 12:40:33 +0000 (05:40 -0700)

Merge branch 'jk/maint-pull-dry-run-noop' into maint

* jk/maint-pull-dry-run-noop:
pull: do nothing on --dry-run

Merge branch 'bw/diff-metainfo-color' into maintJunio C Hamano Mon, 21 Jun 2010 12:40:10 +0000 (05:40 -0700)

Merge branch 'bw/diff-metainfo-color' into maint

* bw/diff-metainfo-color:
diff: fix coloring of extended diff headers

Merge branch 'cb/assume-unchanged-fix' into maintJunio C Hamano Mon, 21 Jun 2010 12:39:23 +0000 (05:39 -0700)

Merge branch 'cb/assume-unchanged-fix' into maint

* cb/assume-unchanged-fix:
Documentation: git-add does not update files marked "assume unchanged"
do not overwrite files marked "assume unchanged"

Merge branch 'jn/notes-doc' into maintJunio C Hamano Mon, 21 Jun 2010 12:39:16 +0000 (05:39 -0700)

Merge branch 'jn/notes-doc' into maint

* jn/notes-doc:
Documentation/notes: nitpicks
Documentation/notes: clean up description of rewriting configuration
Documentation/notes: simplify treatment of default display refs
Documentation/log: add a CONFIGURATION section
Documentation/notes: simplify treatment of default notes ref
Documentation/notes: add configuration section
Documentation/notes: describe content of notes blobs
Documentation/notes: document format of notes trees

Merge branch 'ab/test-cleanup' into maintJunio C Hamano Mon, 21 Jun 2010 12:39:02 +0000 (05:39 -0700)

Merge branch 'ab/test-cleanup' into maint

* ab/test-cleanup:
Turn setup code in t2007-checkout-symlink.sh into a test
Move t6000lib.sh to lib-*

Merge branch 'rs/diff-no-minimal' into maintJunio C Hamano Mon, 21 Jun 2010 12:38:50 +0000 (05:38 -0700)

Merge branch 'rs/diff-no-minimal' into maint

* rs/diff-no-minimal:
git diff too slow for a file

Merge branch 'bg/apply-blank-trailing-context' into... Junio C Hamano Mon, 21 Jun 2010 12:38:36 +0000 (05:38 -0700)

Merge branch 'bg/apply-blank-trailing-context' into maint

* bg/apply-blank-trailing-context:
apply: Allow blank *trailing* context lines to match beyond EOF

gitweb/Makefile: fix typo in gitweb.min.css ruleJay Soffian Fri, 18 Jun 2010 21:01:25 +0000 (17:01 -0400)

gitweb/Makefile: fix typo in gitweb.min.css rule

This typo has been in place since the rule was originally added by
0e6ce21 (Gitweb: add support for minifying gitweb.css).

Signed-off-by: Jay Soffian <jaysoffian@gmail.com>
Signed-off-by: Junio C Hamano <gitster@pobox.com>

Prepare draft release notes to 1.7.1.1Junio C Hamano Wed, 16 Jun 2010 23:56:53 +0000 (16:56 -0700)

Prepare draft release notes to 1.7.1.1

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

Merge branch 'cw/maint-exec-defpath' into maintJunio C Hamano Wed, 16 Jun 2010 23:33:47 +0000 (16:33 -0700)

Merge branch 'cw/maint-exec-defpath' into maint

* cw/maint-exec-defpath:
autoconf: Check if <paths.h> exists and set HAVE_PATHS_H
exec_cmd.c: replace hard-coded path list with one from <paths.h>

Merge branch 'sc/http-late-auth' into maintJunio C Hamano Wed, 16 Jun 2010 23:32:15 +0000 (16:32 -0700)

Merge branch 'sc/http-late-auth' into maint

* sc/http-late-auth:
Prompt for a username when an HTTP request 401s

Merge branch 'by/blame-doc-m-c' into maintJunio C Hamano Wed, 16 Jun 2010 23:23:51 +0000 (16:23 -0700)

Merge branch 'by/blame-doc-m-c' into maint

* by/blame-doc-m-c:
blame-options.txt: Add default value for `-M/-C` options.

Merge branch 'cb/maint-stash-orphaned-file' into maintJunio C Hamano Wed, 16 Jun 2010 23:23:48 +0000 (16:23 -0700)

Merge branch 'cb/maint-stash-orphaned-file' into maint

* cb/maint-stash-orphaned-file:
stash tests: stash can lose data in a file removed from the index
stash: Don't overwrite files that have gone from the index

Merge branch 'mg/advice-statushints' into maintJunio C Hamano Wed, 16 Jun 2010 23:23:42 +0000 (16:23 -0700)

Merge branch 'mg/advice-statushints' into maint

* mg/advice-statushints:
wt-status: take advice.statusHints seriously
t7508: test advice.statusHints

Merge branch 'jn/maint-bundle' into maintJunio C Hamano Wed, 16 Jun 2010 23:23:22 +0000 (16:23 -0700)

Merge branch 'jn/maint-bundle' into maint

* jn/maint-bundle:
fix "bundle --stdin" segfault
t5704 (bundle): add tests for bundle --stdin

Merge branch 'rr/doc-submitting' into maintJunio C Hamano Wed, 16 Jun 2010 23:23:14 +0000 (16:23 -0700)

Merge branch 'rr/doc-submitting' into maint

* rr/doc-submitting:
SubmittingPatches: Add new section about what to base work on

Merge branch 'jn/t7006-fixup' into maintJunio C Hamano Wed, 16 Jun 2010 23:22:57 +0000 (16:22 -0700)

Merge branch 'jn/t7006-fixup' into maint

* jn/t7006-fixup:
t7006: guard cleanup with test_expect_success

Merge branch 'jn/shortlog' into maintJunio C Hamano Wed, 16 Jun 2010 23:22:51 +0000 (16:22 -0700)

Merge branch 'jn/shortlog' into maint

* jn/shortlog:
pretty: Respect --abbrev option
shortlog: Document and test --format option
t4201 (shortlog): Test output format with multiple authors
t4201 (shortlog): guard setup with test_expect_success
Documentation/shortlog: scripted users should not rely on implicit HEAD

Merge branch 'np/index-pack-memsave' into maintJunio C Hamano Wed, 16 Jun 2010 23:22:23 +0000 (16:22 -0700)

Merge branch 'np/index-pack-memsave' into maint

* np/index-pack-memsave:
index-pack: smarter memory usage when appending objects
index-pack: rationalize unpack_entry_data()
index-pack: smarter memory usage when resolving deltas

Merge branch 'sp/maint-dumb-http-pack-reidx' into maintJunio C Hamano Wed, 16 Jun 2010 23:21:30 +0000 (16:21 -0700)

Merge branch 'sp/maint-dumb-http-pack-reidx' into maint

* sp/maint-dumb-http-pack-reidx:
http.c::new_http_pack_request: do away with the temp variable filename
http-fetch: Use temporary files for pack-*.idx until verified
http-fetch: Use index-pack rather than verify-pack to check packs
Allow parse_pack_index on temporary files
Extract verify_pack_index for reuse from verify_pack
Introduce close_pack_index to permit replacement
http.c: Remove unnecessary strdup of sha1_to_hex result
http.c: Don't store destination name in request structures
http.c: Drop useless != NULL test in finish_http_pack_request
http.c: Tiny refactoring of finish_http_pack_request
t5550-http-fetch: Use subshell for repository operations
http.c: Remove bad free of static block

Merge branch 'jc/am-3-show-corrupted-patch' into maintJunio C Hamano Wed, 16 Jun 2010 23:21:23 +0000 (16:21 -0700)

Merge branch 'jc/am-3-show-corrupted-patch' into maint

* jc/am-3-show-corrupted-patch:
am -3: recover the diagnostic messages for corrupt patches

Merge branch 'sp/maint-describe-tiebreak-with-tagger... Junio C Hamano Wed, 16 Jun 2010 23:21:15 +0000 (16:21 -0700)

Merge branch 'sp/maint-describe-tiebreak-with-tagger-date' into maint

* sp/maint-describe-tiebreak-with-tagger-date:
describe: Break annotated tag ties by tagger date
tag.c: Parse tagger date (if present)
tag.c: Refactor parse_tag_buffer to be saner to program
tag.h: Remove unused signature field
tag.c: Correct indentation

Merge branch 'np/malloc-threading' into maintJunio C Hamano Wed, 16 Jun 2010 23:21:06 +0000 (16:21 -0700)

Merge branch 'np/malloc-threading' into maint

* np/malloc-threading:
Thread-safe xmalloc and xrealloc needs a recursive mutex
Make xmalloc and xrealloc thread-safe

Merge branch 'bg/send-email-smtpdomain' into maintJunio C Hamano Wed, 16 Jun 2010 23:20:06 +0000 (16:20 -0700)

Merge branch 'bg/send-email-smtpdomain' into maint

* bg/send-email-smtpdomain:
send-email: Cleanup smtp-domain and add config
Document send-email --smtp-domain
send-email: Don't use FQDNs without a '.'
send-email: Cleanup { style

Merge branch 'rc/maint-curl-helper' into maintJunio C Hamano Wed, 16 Jun 2010 23:19:43 +0000 (16:19 -0700)

Merge branch 'rc/maint-curl-helper' into maint

* rc/maint-curl-helper:
remote-curl: ensure that URLs have a trailing slash
http: make end_url_with_slash() public
t5541-http-push: add test for URLs with trailing slash

Conflicts:
remote-curl.c

Merge branch 'hg/maint-attr-fix' into maintJunio C Hamano Wed, 16 Jun 2010 23:17:54 +0000 (16:17 -0700)

Merge branch 'hg/maint-attr-fix' into maint

* hg/maint-attr-fix:
attr: Expand macros immediately when encountered.
attr: Allow multiple changes to an attribute on the same line.
attr: Fixed debug output for macro expansion.

Merge branch 'mh/status-optionally-refresh' into maintJunio C Hamano Wed, 16 Jun 2010 23:16:40 +0000 (16:16 -0700)

Merge branch 'mh/status-optionally-refresh' into maint

* mh/status-optionally-refresh:
t7508: add a test for "git status" in a read-only repository
git status: refresh the index if possible
t7508: add test for "git status" refreshing the index

notes: Initialize variable to appease Sun StudioÆvar Arnfjörð Bjarmason Mon, 14 Jun 2010 23:40:05 +0000 (23:40 +0000)

notes: Initialize variable to appease Sun Studio

Sun Studio 12 Update 1 thinks that *t could be uninitialized,
ostensibly because it doesn't take rewrite_cmd into account in its
static analysis.

builtin/notes.c: In function `notes_copy_from_stdin':
builtin/notes.c:419: warning: 't' might be used uninitialized in this function

Signed-off-by: Ævar Arnfjörð Bjarmason <avarab@gmail.com>
Signed-off-by: Junio C Hamano <gitster@pobox.com>

git-mailinfo documentation: clarify -u/--encodingZhang Le Sun, 13 Jun 2010 18:49:47 +0000 (02:49 +0800)

git-mailinfo documentation: clarify -u/--encoding

Instead of talking about hardcoded UTF-8, describe i18n.commitencoding
and the --encoding option, and state that they default to UTF-8.

Signed-off-by: Zhang Le <r0bertz@gentoo.org>
Signed-off-by: Junio C Hamano <gitster@pobox.com>

add-interactive: Clarify “remaining hunks in the file”Jonathan Nieder Sun, 13 Jun 2010 03:32:51 +0000 (22:32 -0500)

add-interactive: Clarify “remaining hunks in the file”

The "a" and "d" commands to ‘add --patch’ (accept/reject rest of file)
interact with "j", "g", and "/" (skip some hunks) in a perhaps
confusing way: after accepting or rejecting all _later_ hunks in the
file, they return to the earlier, skipped hunks and prompt the user
about them again.

This behavior can be very useful in practice. One can still accept or
reject _all_ undecided hunks in a file by using the "g" command to
move to hunk #1 first.

Reported-by: Frédéric Brière <fbriere@fbriere.net>
Signed-off-by: Jonathan Nieder <jrnieder@gmail.com>
Signed-off-by: Junio C Hamano <gitster@pobox.com>

commit: use value of GIT_REFLOG_ACTION env variable... Christian Couder Sat, 12 Jun 2010 16:05:12 +0000 (18:05 +0200)

commit: use value of GIT_REFLOG_ACTION env variable as reflog message

The environment variable GIT_REFLOG_ACTION was used by git-commit.sh,
but when it was converted to a builtin
(f5bbc3225c4b073a7ff3218164a0c820299bc9c6, Port git commit to C,
Nov 8 2007) this was lost.

Let's use it again as it is more user friendly when reverting or
cherry-picking to see "revert" or "cherry-pick" in the reflog rather
than to just see "commit".

Signed-off-by: Christian Couder <chriscool@tuxfamily.org>
Acked-by: Jonathan Nieder <jrnieder@gmail.com>
Signed-off-by: Junio C Hamano <gitster@pobox.com>

commit::print_summary(): don't use format_commit_message()Tay Ray Chuan Sat, 12 Jun 2010 14:15:39 +0000 (22:15 +0800)

commit::print_summary(): don't use format_commit_message()

This attempts to fix a regression in git-commit, where non-abbreviated
SHA-1s were printed in the summary.

One possible fix would be to set ctx.abbrev to DEFAULT_ABBREV in the
`if` block, where format_commit_message() is used.

Instead, we do away with the format_commit_message() codeblock
altogether, replacing it with a re-run of log_tree_commit().

We re-run log_tree_commit() with rev.always_show_header set, to force
the invocation of show_log(). The effect of this flag can be seen from
this excerpt from log-tree.c:560, the only area that
rev.always_show_header is checked:

shown = log_tree_diff(opt, commit, &log);
if (!shown && opt->loginfo && opt->always_show_header) {
log.parent = NULL;
show_log(opt);
shown = 1;
}

We also set rev.use_terminator, so that a newline is appended at the end
of the log message. Note that callers in builtin/log.c that also set
rev.always_show_header don't have to set rev.use_terminator, but still
get a newline, because they are wrapped in a pager.

Signed-off-by: Tay Ray Chuan <rctay89@gmail.com>
Signed-off-by: Junio C Hamano <gitster@pobox.com>

t/README: document --root optionThomas Rast Thu, 10 Jun 2010 18:24:46 +0000 (20:24 +0200)

t/README: document --root option

We've had this option since f423ef5 (tests: allow user to specify
trash directory location, 2009-08-09). Make it easier to look up :-)

Signed-off-by: Thomas Rast <trast@student.ethz.ch>
Acked-by: Jeff King <peff@peff.net>
Signed-off-by: Junio C Hamano <gitster@pobox.com>

Makefile: default pager on AIX to "more"Jeff King Thu, 10 Jun 2010 08:59:52 +0000 (04:59 -0400)

Makefile: default pager on AIX to "more"

AIX doesn't ship with "less" by default, and their "more" is
more featureful than average, so the latter is a more
sensible choice. People who really want less can set the
compile-time option themselves, or users can set $PAGER.

Signed-off-by: Jeff King <peff@peff.net>
Tested-by: Tor Arntsen <tor@spacetec.no>
Signed-off-by: Junio C Hamano <gitster@pobox.com>

rebase -i: Abort cleanly if new base cannot be checked outIan Ward Comfort Tue, 8 Jun 2010 08:16:11 +0000 (01:16 -0700)

rebase -i: Abort cleanly if new base cannot be checked out

Untracked content in the working tree may prevent rebase -i from checking out
the new base onto which it wants to replay commits, if the new base commit
includes files at those (now untracked) paths. Currently, rebase -i dies
uncleanly in this situation, updating ORIG_HEAD and leaving a useless
.git/rebase-merge directory, with which the user can do nothing useful except
rebase --abort. Make rebase -i abort the procedure itself instead, as
non-interactive rebase already does, and add a test for this behavior.

Signed-off-by: Ian Ward Comfort <icomfort@stanford.edu>
Signed-off-by: Junio C Hamano <gitster@pobox.com>

commit: give advice on empty amendJeff King Mon, 7 Jun 2010 00:41:46 +0000 (20:41 -0400)

commit: give advice on empty amend

We generally disallow empty commits with "git commit". The
output produced by the wt_status functions is generally
sufficient to explain what happened.

With --amend commits, however, things are a little more
confusing. We would create an empty commit not if you
actually have staged changes _now_, but if your staged
changes match HEAD^. In this case, it is not immediately
obvious why "git commit" claims no changes, but "git status"
does not. Furthermore, we should point the user in the
direction of git reset, which would eliminate the empty
commit entirely.

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

Documentation/checkout: clarify descriptionJonathan Nieder Tue, 1 Jun 2010 07:25:23 +0000 (02:25 -0500)

Documentation/checkout: clarify description

git checkout can be used to switch branches and to retrieve files from
the index or an arbitrary tree. Split the description into
subsections corresponding to each mode to make each use easier to
understand.

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

rebase -i -p: document shortcomingsJonathan Nieder Tue, 1 Jun 2010 01:43:35 +0000 (20:43 -0500)

rebase -i -p: document shortcomings

The rebase --preserve-merges facility presents a list of commits
in its instruction sheet and uses a separate table to keep
track of their parents. Unfortunately, in practice this means
that with -p after most attempts to rearrange patches, some
commits have the "wrong" parent and the resulting history is
rarely what the caller expected.

Yes, it would be nice to fix that. But first, add a warning to the
manual to help the uninitiated understand what is going on.

Reported-by: Jiří Paleček <jpalecek@web.de>
Signed-off-by: Jonathan Nieder <jrnieder@gmail.com>
Signed-off-by: Junio C Hamano <gitster@pobox.com>

Change C99 comments to old-style C commentsTor Arntsen Fri, 4 Jun 2010 09:32:11 +0000 (11:32 +0200)

Change C99 comments to old-style C comments

Signed-off-by: Tor Arntsen <tor@spacetec.no>
Signed-off-by: Junio C Hamano <gitster@pobox.com>

commit.txt: clarify how --author argument is usedJay Soffian Sun, 6 Jun 2010 23:31:34 +0000 (19:31 -0400)

commit.txt: clarify how --author argument is used

commit --author was added by 146ea06 (git commit --author=$name: look $name up
in existing commits), but its documentation was sorely lacking compared to its
excellent commit message. This commit tries to improve the documentation.

Signed-off-by: Jay Soffian <jaysoffian@gmail.com>
Signed-off-by: Junio C Hamano <gitster@pobox.com>

diff: fix "git show -C -C" output when renaming a binar... Christian Couder Wed, 26 May 2010 02:50:12 +0000 (04:50 +0200)

diff: fix "git show -C -C" output when renaming a binary file

A bug was introduced in 3e97c7c6af2901cec63bf35fcd43ae3472e24af8
(No diff -b/-w output for all-whitespace changes, Nov 19 2009)
that made the lines:

diff --git a/bar b/sub/bar
similarity index 100%
rename from bar
rename to sub/bar

disappear from "git show -C -C" output when file bar is a binary
file.

Signed-off-by: Christian Couder <chriscool@tuxfamily.org>
Signed-off-by: Junio C Hamano <gitster@pobox.com>

ls-files: allow relative pathspecClemens Buchacher Thu, 3 Jun 2010 13:39:18 +0000 (15:39 +0200)

ls-files: allow relative pathspec

git ls-files used to error out if given paths which point outside the current
working directory, such as '../'. We now allow such paths and the output is
analogous to git grep -l.

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

quote.c: separate quoting and relative path generationClemens Buchacher Thu, 3 Jun 2010 13:36:31 +0000 (15:36 +0200)

quote.c: separate quoting and relative path generation

This is in preparation of relative path support for ls-files, which
quotes a path only if the line terminator is not the NUL character.

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

setup: document prefixClemens Buchacher Sat, 5 Jun 2010 08:04:20 +0000 (10:04 +0200)

setup: document prefix

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

t9129: fix UTF-8 locale detectionJunio C Hamano Wed, 2 Jun 2010 19:15:48 +0000 (12:15 -0700)

t9129: fix UTF-8 locale detection

The UTF-8 prerequisite test checked explicitly for en_US.utf8 in the
output from "locale -a", but the tests that are actually protected by the
prerequisite were asking LC_ALL=en_US.UTF-8 from the system.

This inconsistency leads the tests to fail on platforms that do not know
both en_US.UTF-8 and en_US.utf8 (thanks you, Yann Droneaud, for bringing
this up with an initial patch).

Instead, pick a locale with ".UTF-8" (with or without hyphen, spelled in
either upper or lowercase) in its name from "locale -a" output, and use it
for running the test.

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

git-compat-util.h: use apparently more common __sgi... Gary V. Vaughan Wed, 2 Jun 2010 01:55:36 +0000 (20:55 -0500)

git-compat-util.h: use apparently more common __sgi macro to detect SGI IRIX

IRIX 6.5.26m does not define the 'sgi' macro, but it does define an '__sgi'
macro. Since later IRIX versions (6.5.29m) define both macros, and since
an underscore prefixed macro is preferred anyway, use '__sgi' to detect
compilation on SGI IRIX.

Signed-off-by: Brandon Casey <casey@nrlssc.navy.mil>
Signed-off-by: Gary V. Vaughan <gary@thewrittenword.com>
Signed-off-by: Junio C Hamano <gitster@pobox.com>

Documentation: A...B shortcut for checkout and rebaseMichael J Gruber Tue, 1 Jun 2010 15:16:42 +0000 (17:16 +0200)

Documentation: A...B shortcut for checkout and rebase

Describe the A...B shortcuts for checkout and rebase [-i] which were
introduced in these commits:

619a64e ("checkout A...B" switches to the merge base between A and B, 2009-10-18)
61dfa1b ("rebase --onto A...B" replays history on the merge base between A and B, 2009-11-20)
230a456 (rebase -i: teach --onto A...B syntax, 2010-01-07)

Signed-off-by: Michael J Gruber <git@drmicha.warpmail.net>
Signed-off-by: Junio C Hamano <gitster@pobox.com>

Documentation/pretty-{formats,options}: better referenc... Nazri Ramliy Tue, 1 Jun 2010 17:54:46 +0000 (01:54 +0800)

Documentation/pretty-{formats,options}: better reference for "format:<string>"

In "git help log" (and friends) it's not easy to find the possible
placeholder for <string> for the "--pretty=format:<string>" option
to git log.

This patch makes the placeholder easier to find by adding a reference
to the "PRETTY FORMATS" section and repeating the "format:<string>"
phrase.

Signed-off-by: Nazri Ramliy <ayiehere@gmail.com>
Signed-off-by: Junio C Hamano <gitster@pobox.com>

Merge branch 'maint-1.7.0' into maintJunio C Hamano Tue, 1 Jun 2010 01:14:17 +0000 (18:14 -0700)

Merge branch 'maint-1.7.0' into maint

* maint-1.7.0:
Documentation/config: describe status.submodulesummary

gitignore.5: Clarify matching rulesJonathan Nieder Fri, 5 Mar 2010 15:56:39 +0000 (09:56 -0600)

gitignore.5: Clarify matching rules

Patterns containing a / are implicitly anchored to the directory
containing the relevant .gitignore file.

Patterns not containing a / are textual matches against the path
name relative to the directory containing .gitignore.

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

Documentation/SubmittingPatches: Fix typo in GMail... Tim Henigan Wed, 26 May 2010 12:36:10 +0000 (08:36 -0400)

Documentation/SubmittingPatches: Fix typo in GMail section

Commit e498257d introduced a typo while improving the GMail section
of SubmittingPatches.

Signed-off-by: Tim Henigan <tim.henigan@gmail.com>
Acked-by: Michael J Gruber <git@drmicha.warpmail.net>
Signed-off-by: Junio C Hamano <gitster@pobox.com>

Documentation/checkout: clarify descriptionJonathan Nieder Sun, 30 May 2010 08:41:53 +0000 (03:41 -0500)

Documentation/checkout: clarify description

To the first-time reader, it may not be obvious that ‘git checkout’
has two modes, nor that if no branch is specified it will read
from the index.

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

Documentation/config: describe status.submodulesummaryMichael J Gruber Thu, 20 May 2010 15:55:42 +0000 (17:55 +0200)

Documentation/config: describe status.submodulesummary

ac8d5af (builtin-status: submodule summary support, 2008-04-12)
intoduced this variable and described it in git-status[1].

Include this description in git-config[1], as well.

Signed-off-by: Michael J Gruber <git@drmicha.warpmail.net>
Signed-off-by: Junio C Hamano <gitster@pobox.com>

Merge branch 'maint-1.7.0' into maintJunio C Hamano Fri, 28 May 2010 23:59:36 +0000 (16:59 -0700)

Merge branch 'maint-1.7.0' into maint

* maint-1.7.0:
Makefile: reenable install with NO_CURL

Makefile: reenable install with NO_CURLMichael J Gruber Wed, 26 May 2010 14:24:34 +0000 (16:24 +0200)

Makefile: reenable install with NO_CURL

Setting NO_CURL leaves some variables like REMOTE_CURL_ALIASES
empty, which creates no fun when for-looping over
$(REMOTE_CURL_ALIASES) unconditionally. Make it conditional.

Reported-by: Paul Walker <PWalker752@aol.com>
Signed-off-by: Michael J Gruber <git@drmicha.warpmail.net>
Signed-off-by: Junio C Hamano <gitster@pobox.com>

t7502-commit: add summary output tests for empty and... Tay Ray Chuan Thu, 27 May 2010 15:34:51 +0000 (23:34 +0800)

t7502-commit: add summary output tests for empty and merge commits

After c197702 (pretty: Respect --abbrev option), non-abbreviated hashes
began to appear, leading to failures for these tests.

Signed-off-by: Tay Ray Chuan <rctay89@gmail.com>
Signed-off-by: Junio C Hamano <gitster@pobox.com>

t7502-commit: add tests for summary outputTay Ray Chuan Thu, 27 May 2010 15:34:50 +0000 (23:34 +0800)

t7502-commit: add tests for summary output

Signed-off-by: Tay Ray Chuan <rctay89@gmail.com>
Signed-off-by: Junio C Hamano <gitster@pobox.com>

completion: --set-upstream option for git-branchMichael J Gruber Wed, 26 May 2010 08:46:41 +0000 (10:46 +0200)

completion: --set-upstream option for git-branch

Signed-off-by: Michael J Gruber <git@drmicha.warpmail.net>
Signed-off-by: Junio C Hamano <gitster@pobox.com>

get_cwd_relative(): do not misinterpret suffix as subdi... Clemens Buchacher Sat, 22 May 2010 11:13:05 +0000 (13:13 +0200)

get_cwd_relative(): do not misinterpret suffix as subdirectory

If the current working directory is the same as the work tree path
plus a suffix, e.g. 'work' and 'work-xyz', then the suffix '-xyz'
would be interpreted as a subdirectory of 'work'.

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

diff: Support visibility modifiers in the PHP hunk... Björn Steinbrink Sun, 23 May 2010 18:05:40 +0000 (20:05 +0200)

diff: Support visibility modifiers in the PHP hunk header regexp

Starting with PHP5, class methods can have a visibility modifier, which
caused the methods not to be matched by the existing regexp, so extend
the regexp to match those modifiers. And while we're at it, allow the
"static" modifier as well.

Since the "static" modifier can appear either before or after the
visibility modifier, let's just allow any number of modifiers to appear
in any order, as that simplifies the regexp and shouldn't cause any
false positives.

Signed-off-by: Björn Steinbrink <B.Steinbrink@gmx.de>
Signed-off-by: Junio C Hamano <gitster@pobox.com>

Documentation/SubmittingPatches: clarify GMail section... Michael J Gruber Tue, 25 May 2010 08:30:13 +0000 (10:30 +0200)

Documentation/SubmittingPatches: clarify GMail section and SMTP

We keep getting mangled submissions from GMail's web interface. Try to
be more proactive in SubmittingPatches by

- pointing to MUA specific instructions early on,
- structuring the GMail section more clearly,
- putting send-email/SMTP before imap-send/IMAP.

Signed-off-by: Michael J Gruber <git@drmicha.warpmail.net>
Signed-off-by: Junio C Hamano <gitster@pobox.com>

pull: do nothing on --dry-runJeff King Tue, 25 May 2010 06:07:25 +0000 (02:07 -0400)

pull: do nothing on --dry-run

Pull was never meant to take --dry-run at all. However, it
passes unknown arguments to git-fetch, which does do a
dry-run. Unfortunately, pull then attempts to merge whatever
cruft was in FETCH_HEAD (which the dry-run fetch will not
have written to).

Even though we never advertise --dry-run as something that
should work, it is still worth being defensive because:

1. Other commands (including fetch) take --dry-run, so a
user might try it.

2. Rather than simply producing an error, it actually
changes the repository in totally unexpected ways.

This patch makes "pull --dry-run" equivalent to "fetch
--dry-run".

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

show-branch: use DEFAULT_ABBREV instead of 7Tay Ray Chuan Mon, 24 May 2010 08:50:44 +0000 (16:50 +0800)

show-branch: use DEFAULT_ABBREV instead of 7

Signed-off-by: Tay Ray Chuan <rctay89@gmail.com>
Signed-off-by: Junio C Hamano <gitster@pobox.com>

t7502-commit: fix spellingTay Ray Chuan Mon, 24 May 2010 08:51:17 +0000 (16:51 +0800)

t7502-commit: fix spelling

s/subdirecotry/subdirectory/

Signed-off-by: Tay Ray Chuan <rctay89@gmail.com>
Signed-off-by: Junio C Hamano <gitster@pobox.com>

test get_git_work_tree() return value for NULLClemens Buchacher Sat, 22 May 2010 12:21:27 +0000 (14:21 +0200)

test get_git_work_tree() return value for NULL

If we are in a git directory, get_git_work_tree() can return NULL.
While trying to determine whether or not the given paths are outside
the work tree, the following command would read from it anyways and
trigger a segmentation fault.

git diff / /

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

remove over-eager caching in sha1_file_nameJeff King Sat, 22 May 2010 06:59:42 +0000 (02:59 -0400)

remove over-eager caching in sha1_file_name

This function takes a sha1 and produces a loose object
filename. It caches the location of the object directory so
that it can fill the sha1 information directly without
allocating a new buffer (and in its original incarnation,
without calling getenv(), though these days we cache that
with the code in environment.c).

This cached base directory can become stale, however, if in
a single process git changes the location of the object
directory (e.g., by running setup_work_tree, which will
chdir to the new worktree).

In most cases this isn't a problem, because we tend to set
up the git repository location and do any chdir()s before
actually looking up any objects, so the first lookup will
cache the correct location. In the case of reset --hard,
however, we do something like:

1. look up the commit object

2. notice we are doing --hard, run setup_work_tree

3. look up the tree object to reset

Step (3) fails because our cache object directory value is
bogus.

This patch simply removes the caching. We use a static
buffer instead of allocating one each time (the original
version treated the malloc'd buffer as a static, so there is
no change in calling semantics).

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

Fix checkout of large files to network shares on Windows XPRené Scharfe Thu, 20 May 2010 18:57:53 +0000 (20:57 +0200)

Fix checkout of large files to network shares on Windows XP

Bigger writes to network drives on Windows XP fail. Cap them at 31MB to
allow them to succeed. Callers need to be prepared for write() calls
that do less work than requested anyway.

On local drives, write() calls are translated to WriteFile() calls with
a cap of 64KB on Windows XP and 256KB on Vista. Thus a cap of 31MB won't
affect the number of WriteFile() calls which do the actual work. There's
still room for some other version of Windows to use a chunk size of 1MB
without increasing the number of system calls.

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

start_command: close cmd->err descriptor when fork... bert Dvornik Thu, 20 May 2010 18:57:52 +0000 (20:57 +0200)

start_command: close cmd->err descriptor when fork/spawn fails

Fix the problem where the cmd->err passed into start_command wasn't
being properly closed when certain types of errors occurr. (Compare
the affected code with the clean shutdown code later in the function.)

On Windows, this problem would be triggered if mingw_spawnvpe()
failed, which would happen if the command to be executed was malformed
(e.g. a text file that didn't start with a #! line). If cmd->err was
a pipe, the failure to close it could result in a hang while the other
side was waiting (forever) for either input or pipe close, e.g. while
trying to shove the output into the side band. On msysGit, this
problem was causing a hang in t5516-fetch-push.

[J6t: With a slight adjustment of the test case, the hang is also
observed on Linux.]

Signed-off-by: bert Dvornik <dvornik+git@gmail.com>
Signed-off-by: Johannes Sixt <j6t@kdbg.org>
Signed-off-by: Junio C Hamano <gitster@pobox.com>

Fix "Out of memory? mmap failed" for files larger than... Ian McLean Thu, 20 May 2010 18:57:51 +0000 (20:57 +0200)

Fix "Out of memory? mmap failed" for files larger than 4GB on Windows

The git_mmap implementation was broken for file sizes that wouldn't fit
into a size_t (32 bits). This was caused by intermediate variables that
were only 32 bits wide when they should be 64 bits.

Signed-off-by: Johannes Sixt <j6t@kdbg.org>
Signed-off-by: Junio C Hamano <gitster@pobox.com>

diff: fix coloring of extended diff headersBert Wesarg Mon, 3 May 2010 22:38:07 +0000 (00:38 +0200)

diff: fix coloring of extended diff headers

Coloring the extended headers where done as a whole not per line. less with
option -R (which is the default from git) does not support this coloring
mode because of performance reasons. The -r option would be an alternative
but has problems with lines that are longer than the screen. Therefore
stick to the idiom to color each line separately. The problem is, that the
result of ill_metainfo() will also be used as an parameter to an external
diff driver, so we need to disable coloring in this case.

Because coloring is now done inside fill_metainfo() we can simply add this
string to the diff header and therefore keep the last newline in the
extended header. This results also into the fact that the external diff
driver now gets this last newline too. Which is a change in behavior
but a good one.

Signed-off-by: Bert Wesarg <bert.wesarg@googlemail.com>
Signed-off-by: Junio C Hamano <gitster@pobox.com>

post-receive-email: document command-line modeJonathan Nieder Wed, 19 May 2010 19:01:47 +0000 (14:01 -0500)

post-receive-email: document command-line mode

According to the default hooks/post-receive file, the hook is called
with three arguments on stdin:

<oldrev> <newrev> <refname>

In command-line mode, the arguments come in a different order, because
the email hook instead calls:

generate_email $2 $3 $1

Add a comment to explain why, based on comments from the mailing list
and the commit message to v1.5.1~9. Thanks to Andy for the
explanation.

Requested-by: martin f. krafft <madduck@debian.org>
Cc: Andy Parkins <andyparkins@gmail.com>
Signed-off-by: Jonathan Nieder <jrnieder@gmail.com>
Signed-off-by: Junio C Hamano <gitster@pobox.com>

Add "Z" as an alias for the timezone "UTC"Marcus Comstedt Mon, 17 May 2010 19:07:10 +0000 (21:07 +0200)

Add "Z" as an alias for the timezone "UTC"

The name "Z" for the UTC timezone is required to properly parse ISO 8601
timestamps. Add it to the list of recognized timezones.

Because timezone names can be shorter than 3 letters, loosen the
restriction in match_alpha() that used to require at least 3 letters to
match to allow a short timezone name as long as it matches exactly. Prior
to the introduction of the "Z" zone, this already affected the timezone
"NT" (Nome).

Signed-off-by: Marcus Comstedt <marcus@mc.pp.se>
Reviewed-by: Jay Soffian <jaysoffian@gmail.com>
Signed-off-by: Junio C Hamano <gitster@pobox.com>

Documentation/gitdiffcore: fix order in pickaxe descriptionMichael J Gruber Tue, 18 May 2010 10:49:33 +0000 (12:49 +0200)

Documentation/gitdiffcore: fix order in pickaxe description

Reverse the order of "origin" and "result" so that the sentence
really describes an addition rather than a removal.

Signed-off-by: Michael J Gruber <git@drmicha.warpmail.net>
Signed-off-by: Junio C Hamano <gitster@pobox.com>

Documentation: fix minor inconsistencyMichael J Gruber Thu, 13 May 2010 12:51:38 +0000 (14:51 +0200)

Documentation: fix minor inconsistency

While we don't always write out commands in full (`git command`) we
should do it consistently in adjacent paragraphs.

Signed-off-by: Michael J Gruber <git@drmicha.warpmail.net>
Signed-off-by: Junio C Hamano <gitster@pobox.com>

Documentation: rebase -i ignores options passed to... Markus Heidelberg Thu, 13 May 2010 12:47:53 +0000 (14:47 +0200)

Documentation: rebase -i ignores options passed to "git am"

Signed-off-by: Markus Heidelberg <markus.heidelberg@web.de>
Signed-off-by: Junio C Hamano <gitster@pobox.com>

hash_object: correction for zero length fileDmitry Potapov Mon, 10 May 2010 21:38:17 +0000 (01:38 +0400)

hash_object: correction for zero length file

The check whether size is zero was done after if size <= SMALL_FILE_SIZE,
as result, zero size case was never triggered. Instead zero length file
was treated as any other small file. This did not caused any problem, but
if we have a special case for size equal to zero, it is better to make it
work and avoid redundant malloc().

Signed-off-by: Dmitry Potapov <dpotapov@gmail.com>
Signed-off-by: Junio C Hamano <gitster@pobox.com>

docs: clarify meaning of -M for git-logJeff King Sat, 8 May 2010 04:44:34 +0000 (00:44 -0400)

docs: clarify meaning of -M for git-log

As an option to the "diff" family, it is fairly obvious what
"detect renames" means. However, for revision traversal, the
"-M" option is just included in the long list of options,
with no indication that it is about showing renames in diffs
versus following renames. Let's make it more explicit.

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

GIT-VERSION-GEN: restrict tags usedTay Ray Chuan Wed, 12 May 2010 03:29:20 +0000 (11:29 +0800)

GIT-VERSION-GEN: restrict tags used

Restrict the tags used to generate the version string to those that
begin with "v", since git's tags for git-core (ie. excluding git-gui)
are all of the form "vX.Y...".

This is to avoid using private tags by the user in a clone of the git
code repository, which may break certain machinery (eg. Makefile, gitk).

Signed-off-by: Tay Ray Chuan <rctay89@gmail.com>
Signed-off-by: Junio C Hamano <gitster@pobox.com>

merge: --log appends shortlog to message if specifiedTay Ray Chuan Mon, 10 May 2010 17:17:52 +0000 (01:17 +0800)

merge: --log appends shortlog to message if specified

When the user specifies a message, use fmt_merge_msg_shortlog() to
append the shortlog.

Previously, when a message was specified, we ignored the merge title
("Merge <foo> into <bar>") and shortlog from fmt_merge_msg().

Update the documentation for -m to reflect this too.

Signed-off-by: Tay Ray Chuan <rctay89@gmail.com>
Signed-off-by: Junio C Hamano <gitster@pobox.com>

fmt-merge-msg: add function to append shortlog onlyTay Ray Chuan Mon, 10 May 2010 17:17:51 +0000 (01:17 +0800)

fmt-merge-msg: add function to append shortlog only

Signed-off-by: Tay Ray Chuan <rctay89@gmail.com>
Signed-off-by: Junio C Hamano <gitster@pobox.com>