gitweb.git
Merge branch 'kb/blame-author-email'Junio C Hamano Tue, 30 Nov 2010 01:52:32 +0000 (17:52 -0800)

Merge branch 'kb/blame-author-email'

* kb/blame-author-email:
blame: Add option to show author email instead of name

Conflicts:
t/annotate-tests.sh

Merge branch 'cm/diff-check-at-eol'Junio C Hamano Tue, 30 Nov 2010 01:52:31 +0000 (17:52 -0800)

Merge branch 'cm/diff-check-at-eol'

* cm/diff-check-at-eol:
diff --check: correct line numbers of new blank lines at EOF

Merge branch 'ak/apply-non-git-epoch'Junio C Hamano Tue, 30 Nov 2010 01:52:31 +0000 (17:52 -0800)

Merge branch 'ak/apply-non-git-epoch'

* ak/apply-non-git-epoch:
apply: handle patches with funny filename and colon in timezone
apply: Recognize epoch timestamps with : in the timezone

Merge branch 'tc/smart-http-post-redirect'Junio C Hamano Tue, 30 Nov 2010 01:52:30 +0000 (17:52 -0800)

Merge branch 'tc/smart-http-post-redirect'

* tc/smart-http-post-redirect:
smart-http: Don't change POST to GET when following redirect

Merge branch 'en/and-cascade-tests'Junio C Hamano Fri, 26 Nov 2010 22:45:37 +0000 (14:45 -0800)

Merge branch 'en/and-cascade-tests'

* en/and-cascade-tests:
t7300: add a missing SYMLINKS prerequisite

t7300: add a missing SYMLINKS prerequisiteJohannes Sixt Thu, 25 Nov 2010 08:03:39 +0000 (09:03 +0100)

t7300: add a missing SYMLINKS prerequisite

The test fails on Windows since 2dec68c (tests: add missing &&, batch 2).

Even though this test allocates and leaves behind files, subsequent tests
do not depend on this, so it is safe to just skip it.

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

Merge branch 'cb/maint-orphan-merge-noclobber'Junio C Hamano Wed, 24 Nov 2010 23:55:36 +0000 (15:55 -0800)

Merge branch 'cb/maint-orphan-merge-noclobber'

* cb/maint-orphan-merge-noclobber:
do not overwrite untracked during merge from unborn branch

Merge branch 'ao/send-email-irt'Junio C Hamano Wed, 24 Nov 2010 23:55:32 +0000 (15:55 -0800)

Merge branch 'ao/send-email-irt'

* ao/send-email-irt:
git-send-email.perl: make initial In-Reply-To apply only to first email
t9001: send-email interation with --in-reply-to and --chain-reply-to

Merge branch 'jk/add-e-doc'Junio C Hamano Wed, 24 Nov 2010 23:55:29 +0000 (15:55 -0800)

Merge branch 'jk/add-e-doc'

* jk/add-e-doc:
docs: give more hints about how "add -e" works
docs: give more hints about how "add -e" works

Merge branch 'rs/opt-help-text'Junio C Hamano Wed, 24 Nov 2010 23:55:19 +0000 (15:55 -0800)

Merge branch 'rs/opt-help-text'

* rs/opt-help-text:
verify-tag: document --verbose
branch: improve --verbose description
archive: improve --verbose description
Describe various forms of "be quiet" using OPT__QUIET
add OPT__FORCE
add description parameter to OPT__QUIET
add description parameter to OPT__DRY_RUN
add description parameter to OPT__VERBOSE

Merge branch 'kb/maint-rebase-autosquash'Junio C Hamano Wed, 24 Nov 2010 23:55:15 +0000 (15:55 -0800)

Merge branch 'kb/maint-rebase-autosquash'

* kb/maint-rebase-autosquash:
rebase: teach --autosquash to match on sha1 in addition to message
rebase: better rearranging of fixup!/squash! lines with --autosquash

Merge branch 'mm/phrase-remote-tracking'Junio C Hamano Wed, 24 Nov 2010 23:55:05 +0000 (15:55 -0800)

Merge branch 'mm/phrase-remote-tracking'

* mm/phrase-remote-tracking:
git-branch.txt: mention --set-upstream as a way to change upstream configuration
user-manual: remote-tracking can be checked out, with detached HEAD
user-manual.txt: explain better the remote(-tracking) branch terms
Change incorrect "remote branch" to "remote tracking branch" in C code
Change incorrect uses of "remote branch" meaning "remote-tracking"
Change "tracking branch" to "remote-tracking branch"
everyday.txt: change "tracking branch" to "remote-tracking branch"
Change remote tracking to remote-tracking in non-trivial places
Replace "remote tracking" with "remote-tracking"
Better "Changed but not updated" message in git-status

Merge branch 'en/and-cascade-tests'Junio C Hamano Wed, 24 Nov 2010 23:51:49 +0000 (15:51 -0800)

Merge branch 'en/and-cascade-tests'

* en/and-cascade-tests: (25 commits)
t4124 (apply --whitespace): use test_might_fail
t3404: do not use 'describe' to implement test_cmp_rev
t3404 (rebase -i): introduce helper to check position of HEAD
t3404 (rebase -i): move comment to description
t3404 (rebase -i): unroll test_commit loops
t3301 (notes): use test_expect_code for clarity
t1400 (update-ref): use test_must_fail
t1502 (rev-parse --parseopt): test exit code from "-h"
t6022 (renaming merge): chain test commands with &&
test-lib: introduce test_line_count to measure files
tests: add missing &&, batch 2
tests: add missing &&
Introduce sane_unset and use it to ensure proper && chaining
t7800 (difftool): add missing &&
t7601 (merge-pull-config): add missing &&
t7001 (mv): add missing &&
t6016 (rev-list-graph-simplify-history): add missing &&
t5602 (clone-remote-exec): add missing &&
t4026 (color): remove unneeded and unchained command
t4019 (diff-wserror): add lots of missing &&
...

Conflicts:
t/t7006-pager.sh

Merge branch 'maint'Junio C Hamano Wed, 24 Nov 2010 21:24:49 +0000 (13:24 -0800)

Merge branch 'maint'

* maint:
imap-send: link against libcrypto for HMAC and others
git-send-email.perl: Deduplicate "to:" and "cc:" entries with names
mingw: do not set errno to 0 on success

Merge branch 'jl/maint-pull-tags-doc' into maintJunio C Hamano Wed, 24 Nov 2010 20:47:42 +0000 (12:47 -0800)

Merge branch 'jl/maint-pull-tags-doc' into maint

* jl/maint-pull-tags-doc:
pull: Remove --tags option from manpage

Merge branch 'kb/maint-diff-ws-check' into maintJunio C Hamano Wed, 24 Nov 2010 20:47:27 +0000 (12:47 -0800)

Merge branch 'kb/maint-diff-ws-check' into maint

* kb/maint-diff-ws-check:
diff: handle lines containing only whitespace and tabs better
test-lib: extend test_decode_color to handle more color codes

Merge branch 'jm/mailmap' into maintJunio C Hamano Wed, 24 Nov 2010 20:47:18 +0000 (12:47 -0800)

Merge branch 'jm/mailmap' into maint

* jm/mailmap:
t4203: do not let "git shortlog" DWIM based on tty
t4203 (mailmap): stop hardcoding commit ids and dates
mailmap: fix use of freed memory

Merge branch 'tr/maint-git-repack-tmpfile' into maintJunio C Hamano Wed, 24 Nov 2010 20:47:10 +0000 (12:47 -0800)

Merge branch 'tr/maint-git-repack-tmpfile' into maint

* tr/maint-git-repack-tmpfile:
repack: place temporary packs under .git/objects/pack/

Merge branch 'jk/maint-apply-no-binary' into maintJunio C Hamano Wed, 24 Nov 2010 20:47:04 +0000 (12:47 -0800)

Merge branch 'jk/maint-apply-no-binary' into maint

* jk/maint-apply-no-binary:
apply: don't segfault on binary files with missing data

Merge branch 'jn/send-pack-error' into maintJunio C Hamano Wed, 24 Nov 2010 20:46:46 +0000 (12:46 -0800)

Merge branch 'jn/send-pack-error' into maint

* jn/send-pack-error:
send-pack: avoid redundant "pack-objects died with strange error"

Merge branch 'ak/submodule-sync' into maintJunio C Hamano Wed, 24 Nov 2010 20:46:40 +0000 (12:46 -0800)

Merge branch 'ak/submodule-sync' into maint

* ak/submodule-sync:
submodule sync: Update "submodule.<name>.url" for empty directories

Merge branch 'jk/maint-rev-list-nul' into maintJunio C Hamano Wed, 24 Nov 2010 20:46:32 +0000 (12:46 -0800)

Merge branch 'jk/maint-rev-list-nul' into maint

* jk/maint-rev-list-nul:
rev-list: handle %x00 NUL in user format

Merge branch 'cb/diff-fname-optim' into maintJunio C Hamano Wed, 24 Nov 2010 20:46:26 +0000 (12:46 -0800)

Merge branch 'cb/diff-fname-optim' into maint

* cb/diff-fname-optim:
diff: avoid repeated scanning while looking for funcname
do not search functions for patch ID
add rebase patch id tests

Merge branch 'jk/no-textconv-symlink' into maintJunio C Hamano Wed, 24 Nov 2010 20:46:20 +0000 (12:46 -0800)

Merge branch 'jk/no-textconv-symlink' into maint

* jk/no-textconv-symlink:
diff: don't use pathname-based diff drivers for symlinks

Merge branch 'dk/maint-blame-el' into maintJunio C Hamano Wed, 24 Nov 2010 20:46:17 +0000 (12:46 -0800)

Merge branch 'dk/maint-blame-el' into maint

* dk/maint-blame-el:
git-blame.el: Add (require 'format-spec)

Merge branch 'aw/git-p4-deletion' into maintJunio C Hamano Wed, 24 Nov 2010 20:46:14 +0000 (12:46 -0800)

Merge branch 'aw/git-p4-deletion' into maint

* aw/git-p4-deletion:
Fix handling of git-p4 on deleted files

Merge branch 'kf/post-receive-sample-hook' into maintJunio C Hamano Wed, 24 Nov 2010 20:45:39 +0000 (12:45 -0800)

Merge branch 'kf/post-receive-sample-hook' into maint

* kf/post-receive-sample-hook:
post-receive-email: ensure sent messages are not empty

Merge branch 'jk/repack-reuse-object' into maintJunio C Hamano Wed, 24 Nov 2010 20:45:07 +0000 (12:45 -0800)

Merge branch 'jk/repack-reuse-object' into maint

* jk/repack-reuse-object:
Documentation: pack.compression: explain how to recompress
repack: add -F flag to let user choose between --no-reuse-delta/object

Conflicts:
Documentation/git-repack.txt

Merge branch 'bc/fix-cherry-pick-root' into maintJunio C Hamano Wed, 24 Nov 2010 20:44:46 +0000 (12:44 -0800)

Merge branch 'bc/fix-cherry-pick-root' into maint

* bc/fix-cherry-pick-root:
builtin/revert.c: don't dereference a NULL pointer

Merge branch 'uk/fix-author-ident-sed-script' into... Junio C Hamano Wed, 24 Nov 2010 20:44:41 +0000 (12:44 -0800)

Merge branch 'uk/fix-author-ident-sed-script' into maint

* uk/fix-author-ident-sed-script:
get_author_ident_from_commit(): remove useless quoting

Merge branch 'ab/makefile-track-cc' into maintJunio C Hamano Wed, 24 Nov 2010 20:44:35 +0000 (12:44 -0800)

Merge branch 'ab/makefile-track-cc' into maint

* ab/makefile-track-cc:
Makefile: add CC to TRACK_CFLAGS

Merge branch 'mg/reset-doc' into maintJunio C Hamano Wed, 24 Nov 2010 20:44:26 +0000 (12:44 -0800)

Merge branch 'mg/reset-doc' into maint

* mg/reset-doc:
git-reset.txt: make modes description more consistent
git-reset.txt: point to git-checkout
git-reset.txt: use "working tree" consistently
git-reset.txt: reset --soft is not a no-op
git-reset.txt: reset does not change files in target
git-reset.txt: clarify branch vs. branch head

Merge branch 'tr/send-email-refuse-sending-unedited... Junio C Hamano Wed, 24 Nov 2010 20:44:12 +0000 (12:44 -0800)

Merge branch 'tr/send-email-refuse-sending-unedited-cover-letter' into maint

* tr/send-email-refuse-sending-unedited-cover-letter:
send-email: Refuse to send cover-letter template subject

imap-send: link against libcrypto for HMAC and othersDiego Elio Pettenò Wed, 24 Nov 2010 20:03:53 +0000 (21:03 +0100)

imap-send: link against libcrypto for HMAC and others

When using stricter linkers, such as GNU gold or Darwin ld, transitive
dependencies are not counted towards symbol resolution. If we don't link
imap-send to libcrypto, we'll have undefined references to the HMAC_*,
EVP_* and ERR_* functions families.

Signed-off-by: Diego Elio Pettenò <flameeyes@gmail.com>
Signed-off-by: Junio C Hamano <gitster@pobox.com>

git-send-email.perl: Deduplicate "to:" and "cc:" entrie... Joe Perches Sat, 20 Nov 2010 23:06:05 +0000 (15:06 -0800)

git-send-email.perl: Deduplicate "to:" and "cc:" entries with names

If an email address in the "to:" list is in the style
"First Last <email@domain.tld>", ie: not just a bare
address like "email@domain.tld", and the same named
entry style exists in the "cc:" list, the current
logic will not remove the entry from the "cc:" list.

Add logic to better deduplicate the "cc:" list by also
matching the email address with angle brackets.

Signed-off-by: Joe Perches <joe@perches.com>
Signed-off-by: Junio C Hamano <gitster@pobox.com>

mingw: do not set errno to 0 on successErik Faye-Lund Tue, 23 Nov 2010 19:53:08 +0000 (20:53 +0100)

mingw: do not set errno to 0 on success

Currently do_lstat always sets errno to 0 on success. This incorrectly
overwrites previous errors.

Fetch the error-code into a temporary variable instead, and assign that
to errno on failure.

Signed-off-by: Erik Faye-Lund <kusmabite@gmail.com>
Signed-off-by: Junio C Hamano <gitster@pobox.com>

Merge branch 'ef/mingw-daemon'Junio C Hamano Wed, 24 Nov 2010 00:05:46 +0000 (16:05 -0800)

Merge branch 'ef/mingw-daemon'

* ef/mingw-daemon:
daemon: opt-out on features that require posix
daemon: make --inetd and --detach incompatible
daemon: use socklen_t
mingw: use poll-emulation from gnulib
mingw: import poll-emulation from gnulib
daemon: get remote host address from root-process
Improve the mingw getaddrinfo stub to handle more use cases
daemon: use full buffered mode for stderr
daemon: use run-command api for async serving
mingw: add kill emulation
mingw: support waitpid with pid > 0 and WNOHANG
mingw: use real pid
inet_ntop: fix a couple of old-style decls
compat: add inet_pton and inet_ntop prototypes
mingw: implement syslog
mingw: add network-wrappers for daemon

Update draft release notes to 1.7.4Junio C Hamano Thu, 18 Nov 2010 00:43:05 +0000 (16:43 -0800)

Update draft release notes to 1.7.4

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

Merge branch 'jl/maint-pull-tags-doc'Junio C Hamano Wed, 17 Nov 2010 23:02:35 +0000 (15:02 -0800)

Merge branch 'jl/maint-pull-tags-doc'

* jl/maint-pull-tags-doc:
pull: Remove --tags option from manpage

Merge branch 'kb/maint-submodule-savearg'Junio C Hamano Wed, 17 Nov 2010 23:02:12 +0000 (15:02 -0800)

Merge branch 'kb/maint-submodule-savearg'

* kb/maint-submodule-savearg:
submodule: only preserve flags across recursive status/update invocations
submodule: preserve all arguments exactly when recursing

Merge branch 'jk/missing-config'Junio C Hamano Wed, 17 Nov 2010 23:02:08 +0000 (15:02 -0800)

Merge branch 'jk/missing-config'

* jk/missing-config:
config: treat non-existent config files as empty

Merge branch 'kb/maint-diff-ws-check'Junio C Hamano Wed, 17 Nov 2010 23:01:47 +0000 (15:01 -0800)

Merge branch 'kb/maint-diff-ws-check'

* kb/maint-diff-ws-check:
diff: handle lines containing only whitespace and tabs better
test-lib: extend test_decode_color to handle more color codes

Merge branch 'bg/maint-gitweb-test-lib'Junio C Hamano Wed, 17 Nov 2010 23:01:37 +0000 (15:01 -0800)

Merge branch 'bg/maint-gitweb-test-lib'

* bg/maint-gitweb-test-lib:
t/gitweb-lib: Don't pass constant to decode_utf8

Conflicts:
t/gitweb-lib.sh

Merge branch 'jm/mailmap'Junio C Hamano Wed, 17 Nov 2010 23:01:26 +0000 (15:01 -0800)

Merge branch 'jm/mailmap'

* jm/mailmap:
t4203: do not let "git shortlog" DWIM based on tty
t4203 (mailmap): stop hardcoding commit ids and dates
mailmap: fix use of freed memory

Merge branch 'tr/maint-git-repack-tmpfile'Junio C Hamano Wed, 17 Nov 2010 23:01:23 +0000 (15:01 -0800)

Merge branch 'tr/maint-git-repack-tmpfile'

* tr/maint-git-repack-tmpfile:
repack: place temporary packs under .git/objects/pack/

Merge branch 'jk/maint-apply-no-binary'Junio C Hamano Wed, 17 Nov 2010 23:01:18 +0000 (15:01 -0800)

Merge branch 'jk/maint-apply-no-binary'

* jk/maint-apply-no-binary:
apply: don't segfault on binary files with missing data

Merge branch 'jk/push-progress'Junio C Hamano Wed, 17 Nov 2010 23:01:00 +0000 (15:01 -0800)

Merge branch 'jk/push-progress'

* jk/push-progress:
push: pass --progress down to git-pack-objects
t5523-push-upstream: test progress messages
t5523-push-upstream: add function to ensure fresh upstream repo
test_terminal: ensure redirections work reliably
test_terminal: catch use without TTY prerequisite
test-lib: allow test code to check the list of declared prerequisites
tests: test terminal output to both stdout and stderr
tests: factor out terminal handling from t7006

Merge branch 'tr/maint-merge-file-subdir'Junio C Hamano Wed, 17 Nov 2010 23:00:56 +0000 (15:00 -0800)

Merge branch 'tr/maint-merge-file-subdir'

* tr/maint-merge-file-subdir:
merge-file: correctly find files when called in subdir
prefix_filename(): safely handle the case where pfx_len=0

Merge branch 'jn/send-pack-error'Junio C Hamano Wed, 17 Nov 2010 23:00:51 +0000 (15:00 -0800)

Merge branch 'jn/send-pack-error'

* jn/send-pack-error:
send-pack: avoid redundant "pack-objects died with strange error"

Merge branch 'mg/make-prove'Junio C Hamano Wed, 17 Nov 2010 23:00:46 +0000 (15:00 -0800)

Merge branch 'mg/make-prove'

* mg/make-prove:
test: allow running the tests under "prove"

Merge branch 'kb/completion-checkout'Junio C Hamano Wed, 17 Nov 2010 23:00:42 +0000 (15:00 -0800)

Merge branch 'kb/completion-checkout'

* kb/completion-checkout:
completion: Support the DWIM mode for git checkout

Merge branch 'sg/completion'Junio C Hamano Wed, 17 Nov 2010 23:00:11 +0000 (15:00 -0800)

Merge branch 'sg/completion'

* sg/completion:
bash: support pretty format aliases
bash: support more 'git notes' subcommands and their options
bash: not all 'git bisect' subcommands make sense when not bisecting
bash: offer refs for 'git bisect start'

Merge branch 'sg/bisect'Junio C Hamano Wed, 17 Nov 2010 23:00:03 +0000 (15:00 -0800)

Merge branch 'sg/bisect'

* sg/bisect:
bisect: check for mandatory argument of 'bisect replay'
bisect: improve error msg of 'bisect reset' when original HEAD is deleted
bisect: improve error message of 'bisect log' while not bisecting

Merge branch 'ak/submodule-sync'Junio C Hamano Wed, 17 Nov 2010 22:59:54 +0000 (14:59 -0800)

Merge branch 'ak/submodule-sync'

* ak/submodule-sync:
submodule sync: Update "submodule.<name>.url" for empty directories

Merge branch 'jk/maint-rev-list-nul'Junio C Hamano Wed, 17 Nov 2010 22:59:33 +0000 (14:59 -0800)

Merge branch 'jk/maint-rev-list-nul'

* jk/maint-rev-list-nul:
rev-list: handle %x00 NUL in user format

Merge branch 'ks/no-textconv-symlink'Junio C Hamano Wed, 17 Nov 2010 22:59:27 +0000 (14:59 -0800)

Merge branch 'ks/no-textconv-symlink'

* ks/no-textconv-symlink:
blame,cat-file --textconv: Don't assume mode is ``S_IFREF | 0664''
blame,cat-file: Demonstrate --textconv is wrongly running converter on symlinks
blame,cat-file: Prepare --textconv tests for correctly-failing conversion program

Merge branch 'jn/gitweb-test'Junio C Hamano Wed, 17 Nov 2010 22:59:22 +0000 (14:59 -0800)

Merge branch 'jn/gitweb-test'

* jn/gitweb-test:
gitweb/Makefile: Include gitweb/config.mak
gitweb/Makefile: Add 'test' and 'test-installed' targets
t/gitweb-lib.sh: Add support for GITWEB_TEST_INSTALLED
gitweb: Move call to evaluate_git_version after evaluate_gitweb_config

Merge branch 'cb/diff-fname-optim'Junio C Hamano Wed, 17 Nov 2010 22:59:16 +0000 (14:59 -0800)

Merge branch 'cb/diff-fname-optim'

* cb/diff-fname-optim:
diff: avoid repeated scanning while looking for funcname
do not search functions for patch ID
add rebase patch id tests

Merge branch 'jk/no-textconv-symlink'Junio C Hamano Wed, 17 Nov 2010 22:59:10 +0000 (14:59 -0800)

Merge branch 'jk/no-textconv-symlink'

* jk/no-textconv-symlink:
diff: don't use pathname-based diff drivers for symlinks

Merge branch 'dk/maint-blame-el'Junio C Hamano Wed, 17 Nov 2010 22:59:04 +0000 (14:59 -0800)

Merge branch 'dk/maint-blame-el'

* dk/maint-blame-el:
git-blame.el: Add (require 'format-spec)

Merge branch 'maint'Junio C Hamano Wed, 17 Nov 2010 21:57:58 +0000 (13:57 -0800)

Merge branch 'maint'

* maint:
clean: remove redundant variable baselen
Documentation/git-pull: clarify configuration
Document that rev-list --graph triggers parent rewriting.
clean: avoid quoting twice
document sigchain api
Keep together options controlling the behaviour of diffcore-rename.
t3402: test "rebase -s<strategy> -X<opt>"

clean: remove redundant variable baselenNguyễn Thái Ngọc Duy Mon, 15 Nov 2010 06:42:44 +0000 (13:42 +0700)

clean: remove redundant variable baselen

baselen used to be the result of common_prefix() when it was made
builtin. Since 1d8842d (Add 'fill_directory()' helper function for
directory traversal - 2009-05-14), its value will always be
zero. Remove it because it's no longer variable.

Signed-off-by: Nguyễn Thái Ngọc Duy <pclouds@gmail.com>
Signed-off-by: Junio C Hamano <gitster@pobox.com>

Merge branch 'mz/maint-rebase-X-fix' into maintJunio C Hamano Wed, 17 Nov 2010 21:18:19 +0000 (13:18 -0800)

Merge branch 'mz/maint-rebase-X-fix' into maint

* mz/maint-rebase-X-fix:
t3402: test "rebase -s<strategy> -X<opt>"

Documentation/git-pull: clarify configurationMartin von Zweigbergk Fri, 12 Nov 2010 18:55:58 +0000 (19:55 +0100)

Documentation/git-pull: clarify configuration

The sentence about 'branch.<name>.rebase' refers to the first sentence
in the paragraph and not to the sentence about avoiding rebasing
non-local changes. Clarify this.

Signed-off-by: Martin von Zweigbergk <martin.von.zweigbergk@gmail.com>
Signed-off-by: Junio C Hamano <gitster@pobox.com>

Document that rev-list --graph triggers parent rewriting.Yann Dirson Fri, 12 Nov 2010 08:48:58 +0000 (09:48 +0100)

Document that rev-list --graph triggers parent rewriting.

This may help to understand why --graph causes more comments to
be selected.

Signed-off-by: Yann Dirson <ydirson@altern.org>
Signed-off-by: Junio C Hamano <gitster@pobox.com>

clean: avoid quoting twiceNguyễn Thái Ngọc Duy Mon, 15 Nov 2010 10:12:44 +0000 (17:12 +0700)

clean: avoid quoting twice

qname is the result of quote_path_relative(), which does
quote_c_style_counted() internally. Remove the hard-coded quotes.

Signed-off-by: Nguyễn Thái Ngọc Duy <pclouds@gmail.com>
Signed-off-by: Junio C Hamano <gitster@pobox.com>

document sigchain apiJeff King Fri, 12 Nov 2010 04:24:56 +0000 (23:24 -0500)

document sigchain api

It's pretty straightforward, but a stripped-down example
never hurts. And we should make clear that it is explicitly
OK to use SIG_DFL and SIG_IGN.

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

Keep together options controlling the behaviour of... Yann Dirson Wed, 10 Nov 2010 20:27:13 +0000 (21:27 +0100)

Keep together options controlling the behaviour of diffcore-rename.

It makes little sense to have --diff-filter in the middle of them, and
even spares an ifndef::git-format-patch.

Signed-off-by: Yann Dirson <ydirson@altern.org>
Signed-off-by: Junio C Hamano <gitster@pobox.com>

Merge branch 'maint'Junio C Hamano Mon, 15 Nov 2010 19:00:24 +0000 (11:00 -0800)

Merge branch 'maint'

* maint:
rebase -X: do not clobber strategy

verify-tag: document --verboseRené Scharfe Mon, 8 Nov 2010 18:04:51 +0000 (19:04 +0100)

verify-tag: document --verbose

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

branch: improve --verbose descriptionRené Scharfe Mon, 8 Nov 2010 18:03:58 +0000 (19:03 +0100)

branch: improve --verbose description

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

archive: improve --verbose descriptionRené Scharfe Mon, 8 Nov 2010 18:02:57 +0000 (19:02 +0100)

archive: improve --verbose description

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

Describe various forms of "be quiet" using OPT__QUIETJonathan Nieder Mon, 8 Nov 2010 19:54:48 +0000 (13:54 -0600)

Describe various forms of "be quiet" using OPT__QUIET

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

add OPT__FORCERené Scharfe Mon, 8 Nov 2010 18:01:54 +0000 (19:01 +0100)

add OPT__FORCE

Add OPT__FORCE as a helper macro in the same spirit as OPT__VERBOSE
et.al. to simplify defining -f/--force options.

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

add description parameter to OPT__QUIETRené Scharfe Mon, 8 Nov 2010 18:06:54 +0000 (19:06 +0100)

add description parameter to OPT__QUIET

Allows better help text to be defined than "be quiet". Also make use
of the macro in a place that already had a different description. No
object code changes intended.

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

add description parameter to OPT__DRY_RUNRené Scharfe Mon, 8 Nov 2010 17:58:51 +0000 (18:58 +0100)

add description parameter to OPT__DRY_RUN

Allows better help text to be defined than "dry run". Also make use
of the macro in places that already had a different description. No
object code changes intended.

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

add description parameter to OPT__VERBOSERené Scharfe Mon, 8 Nov 2010 17:56:39 +0000 (18:56 +0100)

add description parameter to OPT__VERBOSE

Allows better help text to be defined than "be verbose". Also make use
of the macro in places that already had a different description. No
object code changes intended.

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

do not overwrite untracked during merge from unborn... Clemens Buchacher Sun, 14 Nov 2010 22:07:49 +0000 (23:07 +0100)

do not overwrite untracked during merge from unborn branch

In case HEAD does not point to a valid commit yet, merge is
implemented as a hard reset. This will cause untracked files to be
overwritten.

Instead, assume the empty tree for HEAD and do a regular merge. An
untracked file will cause the merge to abort and do nothing. If no
conflicting files are present, the merge will have the same effect
as a hard reset.

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

tests: use test_cmp instead of piping to diff(1)Ævar Arnfjörð Bjarmason Sun, 14 Nov 2010 14:44:16 +0000 (14:44 +0000)

tests: use test_cmp instead of piping to diff(1)

Change submodule tests that piped to diff(1) to use test_cmp. The
resulting unified diff is easier to read.

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

t7004-tag.sh: re-arrange git tag comment for clarityÆvar Arnfjörð Bjarmason Sun, 14 Nov 2010 14:44:15 +0000 (14:44 +0000)

t7004-tag.sh: re-arrange git tag comment for clarity

Split the "message in editor has initial comment" test into three
tests. The motivation is to be able to only skip the middle part under
NO_GETTEXT_POISON.

In addition the return value of 'git tag' was being returned. We now
check that it's non-zero. I used ! instead of test_must_fail so that
the GIT_EDITOR variable was only used in this command invocation, and
because the surrounding tests use this style.

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

git-send-email.perl: make initial In-Reply-To apply... Antonio Ospite Fri, 12 Nov 2010 14:55:08 +0000 (15:55 +0100)

git-send-email.perl: make initial In-Reply-To apply only to first email

When an initial --in-reply-to is supplied, make it apply only to the
first message; --[no-]chain-reply-to setting are honored by second and
subsequent messages; this is also how the git-format-patch option with
the same name behaves.

Moreover, when $initial_reply_to is asked to the user interactively it
is asked as the "Message-ID to be used as In-Reply-To for the _first_
email", this makes the user think that the second and subsequent
patches are not using it but are considered as replies to the first
message or chained according to the --[no-]chain-reply setting.

Look at the v2 series in the illustration to see what the new behavior
ensures:

(before the patch) | (after the patch)
[PATCH 0/2] Here is what I did... | [PATCH 0/2] Here is what I did...
[PATCH 1/2] Clean up and tests | [PATCH 1/2] Clean up and tests
[PATCH 2/2] Implementation | [PATCH 2/2] Implementation
[PATCH v2 0/3] Here is a reroll | [PATCH v2 0/3] Here is a reroll
[PATCH v2 1/3] Clean up | [PATCH v2 1/3] Clean up
[PATCH v2 2/3] New tests | [PATCH v2 2/3] New tests
[PATCH v2 3/3] Implementation | [PATCH v2 3/3] Implementation

This is the typical behaviour we want when we send a series with cover
letter in reply to some discussion, the new patch series should appear
as a separate subtree in the discussion.

Also update the documentation on --in-reply-to to describe the new
behavior.

Signed-off-by: Antonio Ospite <ospite@studenti.unina.it>
Signed-off-by: Junio C Hamano <gitster@pobox.com>

t3402: test "rebase -s<strategy> -X<opt>"Junio C Hamano Thu, 11 Nov 2010 21:28:57 +0000 (13:28 -0800)

t3402: test "rebase -s<strategy> -X<opt>"

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

rebase -X: do not clobber strategyMartin von Zweigbergk Wed, 10 Nov 2010 07:14:26 +0000 (08:14 +0100)

rebase -X: do not clobber strategy

If any strategy options are passed to -X, the strategy will always be
set to 'recursive'. According to the documentation, it should default to
'recursive' if it is not set, but it should be possible to set it to
other values.

This fixes a regression introduced in v1.7.3-rc0~67^2 (2010-07-29).

Signed-off-by: Martin von Zweigbergk <martin.von.zweigbergk@gmail.com>
Signed-off-by: Junio C Hamano <gitster@pobox.com>

apply: handle patches with funny filename and colon... Jonathan Nieder Wed, 29 Sep 2010 21:41:08 +0000 (16:41 -0500)

apply: handle patches with funny filename and colon in timezone

Some patches have a timezone formatted like '-08:00' instead of
'-0800' in their ---/+++ lines (e.g. http://lwn.net/Articles/131729/).
Take this into account when searching for the start of the timezone
(which is the end of the filename).

This does not actually affect the outcome of patching unless (1) a
file being patched has a non-' ' whitespace character (e.g., tab) in
its filename, or (2) the patch is whitespace-damaged, so the tab
between filename and timestamp has been replaced with spaces.

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

docs: give more hints about how "add -e" worksJeff King Tue, 9 Nov 2010 04:58:20 +0000 (23:58 -0500)

docs: give more hints about how "add -e" works

The previous text was not exactly accurate; it is OK to
change space and minus lines, but only in certain ways.

This patch takes a whole new approach, which is to describe
the sorts of conceptual operations you might want to
perform. It also includes a healthy dose of warnings about
how things can go wrong.

Since the size of the text is getting quite long, it also
splits this out into an "editing patches" section. This
makes more sense with the current structure, anyway, which
already splits out the interactive mode description.

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

t4124 (apply --whitespace): use test_might_failJonathan Nieder Sun, 31 Oct 2010 07:41:08 +0000 (02:41 -0500)

t4124 (apply --whitespace): use test_might_fail

Use test_might_fail instead of ignoring the exit status from git
config --unset, and let the exit status propagate past rm -f (which
does not fail on ENOENT). Otherwise bugs that lead git config to
crash would not be detected when this test runs.

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

t3404: do not use 'describe' to implement test_cmp_revJunio C Hamano Tue, 9 Nov 2010 23:20:20 +0000 (15:20 -0800)

t3404: do not use 'describe' to implement test_cmp_rev

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

t3404 (rebase -i): introduce helper to check position... Jonathan Nieder Sun, 31 Oct 2010 07:40:30 +0000 (02:40 -0500)

t3404 (rebase -i): introduce helper to check position of HEAD

The same code to check the position of HEAD is used by several
tests in this script. Factor it out as a function and simplify it.

Noticed using an &&-chaining tester, because the current code
does not propagate the precise exit status from errors.

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

t3404 (rebase -i): move comment to descriptionJonathan Nieder Sun, 31 Oct 2010 07:39:51 +0000 (02:39 -0500)

t3404 (rebase -i): move comment to description

Add a comment describing the setup in t3404 to its --help output.

This should make it easier to decide where to put new functions
without disrupting the flow of the file or obstructing the description
of the test setup.

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

t3404 (rebase -i): unroll test_commit loopsJonathan Nieder Sun, 31 Oct 2010 07:38:25 +0000 (02:38 -0500)

t3404 (rebase -i): unroll test_commit loops

Allow test_commit failures in loop iterations before the last one to
cause the test assertion to fail.

More importantly, avoiding these loops makes the test a little
simpler to read and decreases the vertical screen footprint of
the setup test assertion by one line.

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

t3301 (notes): use test_expect_code for clarityJonathan Nieder Sun, 31 Oct 2010 07:36:57 +0000 (02:36 -0500)

t3301 (notes): use test_expect_code for clarity

Use the test_expect_code helper instead of open-coding it.

The main behavior change is to print the command and actual exit
status when the test fails. More importantly, this would make it
easier to add commands before "git notes show" as part of the
same test assertion if needed.

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

t1400 (update-ref): use test_must_failJonathan Nieder Sun, 31 Oct 2010 07:36:19 +0000 (02:36 -0500)

t1400 (update-ref): use test_must_fail

As t/README explains:

When a gitcommand dies due to a segfault, test_must_fail
diagnoses it as an error; "! git <command>" treats it as
just another expected failure, which would let such a bug
go unnoticed.

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

t1502 (rev-parse --parseopt): test exit code from "-h"Jonathan Nieder Sun, 31 Oct 2010 07:35:49 +0000 (02:35 -0500)

t1502 (rev-parse --parseopt): test exit code from "-h"

rev-parse --parseopt exits with code 129 (usage error) when asked
to dump usage with -h on behalf of another command. Scripts can
take advantage of this to avoid trying to parse usage information
as though it were the regular output from some git command.

Noticed with an &&-chaining tester.

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

t6022 (renaming merge): chain test commands with &&Jonathan Nieder Sun, 31 Oct 2010 07:34:44 +0000 (02:34 -0500)

t6022 (renaming merge): chain test commands with &&

Using 'return' in an attempt to end a test assertion can have
unpredictable results (probably escaping from test_run_ and breaking
its bookkeeping). Redo the control flow using helpers like
test_expect_code and git diff --exit-code, so each test assertion can
follow the usual form

command that should succeed &&
command that should succeed &&
command that should succeed &&
...

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

test-lib: introduce test_line_count to measure filesJonathan Nieder Sun, 31 Oct 2010 07:33:50 +0000 (02:33 -0500)

test-lib: introduce test_line_count to measure files

Some tests check their output with code like the following:

test "$(git ls-files -u B | wc -l)" -eq 3 || {
echo "BAD: should have left stages for B"
return 1
}

The verbose failure condition is used because test, unlike
diff, does not print any useful information about the
nature of the failure when it fails.

Introduce a test_line_count function to help. If used like

git ls-files -u B >output &&
test_line_count -eq 3 output

it will produce output like

test_line_count: line count for output !-eq 3
100644 b023018cabc396e7692c70bbf5784a93d3f738ab 2 hi.c
100644 45b983be36b73c0788dc9cbcb76cbb80fc7bb057 3 hi.c

on failure.

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

tests: add missing &&, batch 2Jonathan Nieder Sun, 31 Oct 2010 07:30:58 +0000 (02:30 -0500)

tests: add missing &&, batch 2

Same rules as before: this patch only adds " &&" to the end of
some lines in the test suite.

Intended to be applied on top of or squashed with the last
batch if they look okay.

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

tests: add missing &&Jonathan Nieder Sun, 31 Oct 2010 01:46:54 +0000 (20:46 -0500)

tests: add missing &&

Breaks in a test assertion's && chain can potentially hide
failures from earlier commands in the chain.

Commands intended to fail should be marked with !, test_must_fail, or
test_might_fail. The examples in this patch do not require that.

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

Merge branch 'maint'Junio C Hamano Tue, 9 Nov 2010 17:45:16 +0000 (09:45 -0800)

Merge branch 'maint'

* maint:
Documentation: document show -s
dir.c: fix EXC_FLAG_MUSTBEDIR match in sparse checkout

rebase: teach --autosquash to match on sha1 in addition... Kevin Ballard Thu, 4 Nov 2010 22:36:32 +0000 (15:36 -0700)

rebase: teach --autosquash to match on sha1 in addition to message

Support lines of the form "fixup! 7a235b" that specify an exact commit
in addition to the normal "squash! Old commit message" form.

Signed-off-by: Kevin Ballard <kevin@sb.org>
Signed-off-by: Junio C Hamano <gitster@pobox.com>

rebase: better rearranging of fixup!/squash! lines... Kevin Ballard Thu, 4 Nov 2010 22:36:31 +0000 (15:36 -0700)

rebase: better rearranging of fixup!/squash! lines with --autosquash

The current behvaior of --autosquash can duplicate fixup!/squash! lines
if they match multiple commits, and it can also apply them to commits
that come after them in the todo list. Even more oddly, a commit that
looks like "fixup! fixup!" will match itself and be duplicated in the
todo list.

Change the todo list rearranging to mark all commits as used as soon
as they are emitted, and to avoid emitting a fixup/squash commit if the
commit has already been marked as used.

Signed-off-by: Kevin Ballard <kevin@sb.org>
Signed-off-by: Junio C Hamano <gitster@pobox.com>