gitweb.git
Merge branch 'jk/format-patch-quote-special-in-from'Junio C Hamano Fri, 6 May 2011 17:50:18 +0000 (10:50 -0700)

Merge branch 'jk/format-patch-quote-special-in-from'

* jk/format-patch-quote-special-in-from:
pretty: quote rfc822 specials in email addresses

Conflicts:
pretty.c
t/t4014-format-patch.sh

Merge branch 'nd/struct-pathspec'Junio C Hamano Fri, 6 May 2011 17:50:06 +0000 (10:50 -0700)

Merge branch 'nd/struct-pathspec'

* nd/struct-pathspec:
pathspec: rename per-item field has_wildcard to use_wildcard
Improve tree_entry_interesting() handling code
Convert read_tree{,_recursive} to support struct pathspec
Reimplement read_tree_recursive() using tree_entry_interesting()

Merge branch 'aw/maint-rebase-i-p-no-ff'Junio C Hamano Fri, 6 May 2011 17:50:00 +0000 (10:50 -0700)

Merge branch 'aw/maint-rebase-i-p-no-ff'

* aw/maint-rebase-i-p-no-ff:
git-rebase--interactive.sh: preserve-merges fails on merges created with no-ff

Conflicts:
git-rebase--interactive.sh

Merge branch 'mg/alias-expose-prefix'Junio C Hamano Fri, 6 May 2011 17:49:57 +0000 (10:49 -0700)

Merge branch 'mg/alias-expose-prefix'

* mg/alias-expose-prefix:
handle_alias: provide GIT_PREFIX to !alias
t1020: test !alias in subdirectory

Merge branch 'mg/diff-uiconfig-doc'Junio C Hamano Fri, 6 May 2011 17:49:53 +0000 (10:49 -0700)

Merge branch 'mg/diff-uiconfig-doc'

* mg/diff-uiconfig-doc:
config.txt,diff-options.txt: porcelain vs. plumbing for color.diff

Merge branch 'maint'Junio C Hamano Fri, 6 May 2011 17:44:23 +0000 (10:44 -0700)

Merge branch 'maint'

* maint:
Remove duplicated "is a"

Remove duplicated "is a"João Britto Fri, 6 May 2011 04:16:17 +0000 (01:16 -0300)

Remove duplicated "is a"

Signed-off-by: João Britto <jabcalves@gmail.com>
Signed-off-by: Junio C Hamano <gitster@pobox.com>

Merge branch 'maint'Junio C Hamano Thu, 5 May 2011 21:43:45 +0000 (14:43 -0700)

Merge branch 'maint'

* maint:
t3701: fix here document
git-fast-import.txt: --relative-marks takes no parameter
shell: add missing initialization of argv0_path

t3701: fix here documentJunio C Hamano Thu, 5 May 2011 18:28:52 +0000 (11:28 -0700)

t3701: fix here document

A broken here-document was not caught because end of file is taken by
an implicit end of the here document (POSIX does not seem to say it is
an error to lack the delimiter), and everything in the test just turned
into a single "cat into a file".

Noticed-by: Kacper Kornet <draenog@pld-linux.org>
Signed-off-by: Junio C Hamano <gitster@pobox.com>

git-fast-import.txt: --relative-marks takes no parameterMichael J Gruber Thu, 5 May 2011 09:13:38 +0000 (11:13 +0200)

git-fast-import.txt: --relative-marks takes no parameter

Remove spurious "=" after --relative-marks.

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

shell: add missing initialization of argv0_pathDima Sharov Thu, 5 May 2011 06:40:17 +0000 (09:40 +0300)

shell: add missing initialization of argv0_path

According to c6dfb39 (remote-curl: add missing initialization of
argv0_path, 2009-10-13), stand-alone programs (non-builtins)
must call git_extract_argv0_path(argv[0]) in order to help builds
that derive the installation prefix at runtime. Without this call,
the program segfaults (or raises an assertion failure).

Signed-off-by: Dima Sharov <git.avalakvista@gmail.com>
Acked-by: Johannes Sixt <j6t@kdbg.org>
Signed-off-by: Junio C Hamano <gitster@pobox.com>

Update draft release notes to 1.7.6Junio C Hamano Wed, 4 May 2011 23:02:17 +0000 (16:02 -0700)

Update draft release notes to 1.7.6

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

Merge branch 'ml/test-readme'Junio C Hamano Wed, 4 May 2011 22:52:00 +0000 (15:52 -0700)

Merge branch 'ml/test-readme'

* ml/test-readme:
t/README: unify documentation of test function args

Merge branch 'ft/gitweb-tar-with-gzip-n'Junio C Hamano Wed, 4 May 2011 22:51:57 +0000 (15:51 -0700)

Merge branch 'ft/gitweb-tar-with-gzip-n'

* ft/gitweb-tar-with-gzip-n:
gitweb: supply '-n' to gzip for identical output

Merge branch 'mg/rev-list-count-cherry'Junio C Hamano Wed, 4 May 2011 22:51:53 +0000 (15:51 -0700)

Merge branch 'mg/rev-list-count-cherry'

* mg/rev-list-count-cherry:
rev-list --count: separate count for --cherry-mark

Merge branch 'ss/doc-svn'Junio C Hamano Wed, 4 May 2011 22:51:43 +0000 (15:51 -0700)

Merge branch 'ss/doc-svn'

* ss/doc-svn:
remove noise and inaccuracies from git-svn docs

Merge branch 'jn/format-patch-doc'Junio C Hamano Wed, 4 May 2011 22:51:41 +0000 (15:51 -0700)

Merge branch 'jn/format-patch-doc'

* jn/format-patch-doc:
Documentation/format-patch: suggest Toggle Word Wrap add-on for Thunderbird
Documentation: publicize hints for sending patches with GMail
Documentation: publicize KMail hints for sending patches inline
Documentation: hints for sending patches inline with Thunderbird
Documentation: explain how to check for patch corruption

Merge branch 'vr/merge-base-doc'Junio C Hamano Wed, 4 May 2011 22:51:37 +0000 (15:51 -0700)

Merge branch 'vr/merge-base-doc'

* vr/merge-base-doc:
Restructure documentation for git-merge-base.
Documentation: update to git-merge-base --octopus

Merge branch 'ss/cherry-pick-x-doc'Junio C Hamano Wed, 4 May 2011 22:51:35 +0000 (15:51 -0700)

Merge branch 'ss/cherry-pick-x-doc'

* ss/cherry-pick-x-doc:
doc: Clarify that "cherry-pick -x" does not use "git notes"

Merge branch 'jn/maint-format-patch-doc'Junio C Hamano Wed, 4 May 2011 22:51:31 +0000 (15:51 -0700)

Merge branch 'jn/maint-format-patch-doc'

* jn/maint-format-patch-doc:
Documentation: describe the format of messages with inline patches

Merge branch 'jk/format-patch-multiline-header'Junio C Hamano Wed, 4 May 2011 22:51:27 +0000 (15:51 -0700)

Merge branch 'jk/format-patch-multiline-header'

* jk/format-patch-multiline-header:
format-patch: wrap email addresses after long names

Merge branch 'jm/mergetool-submodules'Junio C Hamano Wed, 4 May 2011 22:51:23 +0000 (15:51 -0700)

Merge branch 'jm/mergetool-submodules'

* jm/mergetool-submodules:
mergetool: Teach about submodules

Sync with 1.7.5.1Junio C Hamano Wed, 4 May 2011 22:49:04 +0000 (15:49 -0700)

Sync with 1.7.5.1

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

Git 1.7.5.1 v1.7.5.1Junio C Hamano Wed, 4 May 2011 22:47:40 +0000 (15:47 -0700)

Git 1.7.5.1

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

Merge branch 'jh/dirstat' into maintJunio C Hamano Wed, 4 May 2011 21:59:07 +0000 (14:59 -0700)

Merge branch 'jh/dirstat' into maint

* jh/dirstat:
--dirstat: In case of renames, use target filename instead of source filename
Teach --dirstat not to completely ignore rearranged lines within a file
--dirstat-by-file: Make it faster and more correct
--dirstat: Describe non-obvious differences relative to --stat or regular diff

Merge branch 'sp/maint-clear-postfields' into maintJunio C Hamano Wed, 4 May 2011 21:58:56 +0000 (14:58 -0700)

Merge branch 'sp/maint-clear-postfields' into maint

* sp/maint-clear-postfields:
http: clear POSTFIELDS when initializing a slot

Merge branch 'jk/maint-stash-oob' into maintJunio C Hamano Wed, 4 May 2011 21:58:42 +0000 (14:58 -0700)

Merge branch 'jk/maint-stash-oob' into maint

* jk/maint-stash-oob:
stash: fix false positive in the invalid ref test.
stash: fix accidental apply of non-existent stashes

Conflicts:
t/t3903-stash.sh

Merge branch 'jk/maint-upload-pack-shallow' into maintJunio C Hamano Wed, 4 May 2011 21:58:13 +0000 (14:58 -0700)

Merge branch 'jk/maint-upload-pack-shallow' into maint

* jk/maint-upload-pack-shallow:
upload-pack: start pack-objects before async rev-list

Merge branch 'dm/stash-k-i-p' into maintJunio C Hamano Wed, 4 May 2011 21:57:49 +0000 (14:57 -0700)

Merge branch 'dm/stash-k-i-p' into maint

* dm/stash-k-i-p:
stash: ensure --no-keep-index and --patch can be used in any order
stash: add two more tests for --no-keep-index

Merge branch 'jc/pack-objects-bigfile' into maintJunio C Hamano Wed, 4 May 2011 21:57:38 +0000 (14:57 -0700)

Merge branch 'jc/pack-objects-bigfile' into maint

* jc/pack-objects-bigfile:
Teach core.bigfilethreashold to pack-objects

Merge branch 'mg/reflog-with-options' into maintJunio C Hamano Wed, 4 May 2011 21:57:33 +0000 (14:57 -0700)

Merge branch 'mg/reflog-with-options' into maint

* mg/reflog-with-options:
reflog: fix overriding of command line options
t/t1411: test reflog with formats
builtin/log.c: separate default and setup of cmd_log_init()

Merge branch 'jk/stash-loosen-safety' into maintJunio C Hamano Wed, 4 May 2011 21:57:15 +0000 (14:57 -0700)

Merge branch 'jk/stash-loosen-safety' into maint

* jk/stash-loosen-safety:
stash: drop dirty worktree check on apply

Merge branch 'ar/clean-rmdir-empty' into maintJunio C Hamano Wed, 4 May 2011 21:57:06 +0000 (14:57 -0700)

Merge branch 'ar/clean-rmdir-empty' into maint

* ar/clean-rmdir-empty:
clean: unreadable directory may still be rmdir-able if it is empty

Merge branch 'mg/sha1-path-advise' into maintJunio C Hamano Wed, 4 May 2011 21:56:51 +0000 (14:56 -0700)

Merge branch 'mg/sha1-path-advise' into maint

* mg/sha1-path-advise:
sha1_name: Suggest commit:./file for path in subdir
t1506: factor out test for "Did you mean..."

git-add.txt: document 'add.ignoreErrors'Valentin Haenel Wed, 4 May 2011 19:58:17 +0000 (21:58 +0200)

git-add.txt: document 'add.ignoreErrors'

Signed-off-by: Valentin Haenel <valentin.haenel@gmx.de>
Noticed-by: Junio C Hamano <gitster@pobox.com>
Signed-off-by: Junio C Hamano <gitster@pobox.com>

Update draft release notes to 1.7.6Junio C Hamano Mon, 2 May 2011 23:10:50 +0000 (16:10 -0700)

Update draft release notes to 1.7.6

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

Merge branch 'jk/notes-ui-updates'Junio C Hamano Mon, 2 May 2011 22:58:50 +0000 (15:58 -0700)

Merge branch 'jk/notes-ui-updates'

* jk/notes-ui-updates:
contrib/completion: --notes, --no-notes
log/pretty-options: Document --[no-]notes and deprecate old notes options
revision.c: make --no-notes reset --notes list
revision.c: support --notes command-line option
notes: refactor display notes default handling
notes: refactor display notes extra refs field
revision.c: refactor notes ref expansion
notes: make expand_notes_ref globally accessible

Merge branch 'ab/i18n-fixup'Junio C Hamano Mon, 2 May 2011 22:58:40 +0000 (15:58 -0700)

Merge branch 'ab/i18n-fixup'

* ab/i18n-fixup: (24 commits)
i18n: use test_i18n{cmp,grep} in t7600, t7607, t7611 and t7811
i18n: use test_i18n{grep,cmp} in t7508
i18n: use test_i18ngrep in t7506
i18n: use test_i18ngrep and test_i18ncmp in t7502
i18n: use test_i18ngrep in t7501
i18n: use test_i18ncmp in t7500
i18n: use test_i18ngrep in t7201
i18n: use test_i18ncmp and test_i18ngrep in t7102 and t7110
i18n: use test_i18ncmp and test_i18ngrep in t5541, t6040, t6120, t7004, t7012 and t7060
i18n: use test_i18ncmp and test_i18ngrep in t3700, t4001 and t4014
i18n: use test_i18ncmp and test_i18ngrep in t3203, t3501 and t3507
i18n: use test_i18ngrep in t2020, t2204, t3030, and t3200
i18n: use test_i18ngrep in lib-httpd and t2019
i18n: do not overuse C_LOCALE_OUTPUT (grep)
i18n: use test_i18ncmp in t1200 and t2200
i18n: .git file is not a human readable message (t5601)
i18n: do not overuse C_LOCALE_OUTPUT
i18n: mark init-db messages for translation
i18n: mark checkout plural warning for translation
i18n: mark checkout --detach messages for translation
...

Merge branch 'nm/submodule-update-force'Junio C Hamano Mon, 2 May 2011 22:58:36 +0000 (15:58 -0700)

Merge branch 'nm/submodule-update-force'

* nm/submodule-update-force:
submodule: Add --force option for git submodule update

Conflicts:
t/t7406-submodule-update.sh

Merge branch 'jh/notes-add-ui'Junio C Hamano Mon, 2 May 2011 22:58:32 +0000 (15:58 -0700)

Merge branch 'jh/notes-add-ui'

* jh/notes-add-ui:
Make "git notes add" more user-friendly when there are existing notes

Conflicts:
builtin/notes.c

Merge branch 'nd/maint-setup'Junio C Hamano Mon, 2 May 2011 22:58:30 +0000 (15:58 -0700)

Merge branch 'nd/maint-setup'

* nd/maint-setup:
Kill off get_relative_cwd()
setup: return correct prefix if worktree is '/'

Conflicts:
dir.c
setup.c

Merge branch 'mz/maint-rename-unmerged'Junio C Hamano Mon, 2 May 2011 22:58:27 +0000 (15:58 -0700)

Merge branch 'mz/maint-rename-unmerged'

* mz/maint-rename-unmerged:
diffcore-rename: don't consider unmerged path as source

Update draft release notes to 1.7.6Junio C Hamano Sun, 1 May 2011 23:29:43 +0000 (16:29 -0700)

Update draft release notes to 1.7.6

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

Merge branch 'rs/strbuf-setlen-assert'Junio C Hamano Sun, 1 May 2011 23:25:04 +0000 (16:25 -0700)

Merge branch 'rs/strbuf-setlen-assert'

* rs/strbuf-setlen-assert:
strbuf: clarify assertion in strbuf_setlen()

Merge branch 'vh/git-svn-doc'Junio C Hamano Sun, 1 May 2011 23:25:01 +0000 (16:25 -0700)

Merge branch 'vh/git-svn-doc'

* vh/git-svn-doc:
git-svn.txt: small typeface improvements
git-svn.txt: move option descriptions
git-svn.txt: fix usage of --add-author-from

Merge branch 'maint'Junio C Hamano Fri, 29 Apr 2011 18:48:13 +0000 (11:48 -0700)

Merge branch 'maint'

* maint:
Start 1.7.5.1 maintenance track
git-send-email: fix missing space in error message

Conflicts:
RelNotes

Start 1.7.5.1 maintenance trackJunio C Hamano Fri, 29 Apr 2011 18:47:10 +0000 (11:47 -0700)

Start 1.7.5.1 maintenance track

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

Merge branch 'mg/x-years-12-months' into maintJunio C Hamano Fri, 29 Apr 2011 18:43:18 +0000 (11:43 -0700)

Merge branch 'mg/x-years-12-months' into maint

* mg/x-years-12-months:
date: avoid "X years, 12 months" in relative dates

git-send-email: fix missing space in error messageSylvain Rabot Fri, 29 Apr 2011 18:23:24 +0000 (20:23 +0200)

git-send-email: fix missing space in error message

When the command cannot make a connection to the SMTP server the error
message to diagnose the broken configuration is issued. However, when an
optional smtp-server-port is given and needs to be reported, the message
lacked a space between "hello=<smtp-domain>" and "port=<smtp-server-port>".

Signed-off-by: Sylvain Rabot <sylvain@abstraction.fr>
Signed-off-by: Junio C Hamano <gitster@pobox.com>

t/test-lib.sh: minor readability improvementsMathias Lafeldt Fri, 29 Apr 2011 12:30:30 +0000 (14:30 +0200)

t/test-lib.sh: minor readability improvements

Apply parameter expansion. Also use here document to save
test results instead of appending each line with ">>".

Signed-off-by: Mathias Lafeldt <misfire@debugon.org>
Signed-off-by: Junio C Hamano <gitster@pobox.com>

diffcore-rename.c: avoid set-but-not-used warningJim Meyering Fri, 29 Apr 2011 09:42:41 +0000 (11:42 +0200)

diffcore-rename.c: avoid set-but-not-used warning

Since 9d8a5a5 (diffcore-rename: refactor "too many candidates" logic,
2011-01-06), diffcore_rename() initializes num_src but does not use it
anymore. "-Wunused-but-set-variable" in gcc-4.6 complains about this.

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

Merge branch 'jc/diff-irreversible-delete'Junio C Hamano Thu, 28 Apr 2011 21:11:47 +0000 (14:11 -0700)

Merge branch 'jc/diff-irreversible-delete'

* jc/diff-irreversible-delete:
git diff -D: omit the preimage of deletes

Merge branch 'jc/rename-degrade-cc-to-c'Junio C Hamano Thu, 28 Apr 2011 21:11:43 +0000 (14:11 -0700)

Merge branch 'jc/rename-degrade-cc-to-c'

* jc/rename-degrade-cc-to-c:
diffcore-rename: fall back to -C when -C -C busts the rename limit
diffcore-rename: record filepair for rename src
diffcore-rename: refactor "too many candidates" logic
builtin/diff.c: remove duplicated call to diff_result_code()

Merge branch 'mz/rebase'Junio C Hamano Thu, 28 Apr 2011 21:11:39 +0000 (14:11 -0700)

Merge branch 'mz/rebase'

* mz/rebase: (34 commits)
rebase: define options in OPTIONS_SPEC
Makefile: do not install sourced rebase scripts
rebase: use @{upstream} if no upstream specified
rebase -i: remove unnecessary state rebase-root
rebase -i: don't read unused variable preserve_merges
git-rebase--am: remove unnecessary --3way option
rebase -m: don't print exit code 2 when merge fails
rebase -m: remember allow_rerere_autoupdate option
rebase: remember strategy and strategy options
rebase: remember verbose option
rebase: extract code for writing basic state
rebase: factor out sub command handling
rebase: make -v a tiny bit more verbose
rebase -i: align variable names
rebase: show consistent conflict resolution hint
rebase: extract am code to new source file
rebase: extract merge code to new source file
rebase: remove $branch as synonym for $orig_head
rebase -i: support --stat
rebase: factor out call to pre-rebase hook
...

Merge branch 'en/merge-recursive'Junio C Hamano Thu, 28 Apr 2011 21:11:35 +0000 (14:11 -0700)

Merge branch 'en/merge-recursive'

* en/merge-recursive:
merge-recursive: tweak magic band-aid
merge-recursive: When we detect we can skip an update, actually skip it
t6022: New test checking for unnecessary updates of files in D/F conflicts
t6022: New test checking for unnecessary updates of renamed+modified files

Merge branch 'jh/dirstat'Junio C Hamano Thu, 28 Apr 2011 21:11:19 +0000 (14:11 -0700)

Merge branch 'jh/dirstat'

* jh/dirstat:
--dirstat: In case of renames, use target filename instead of source filename
Teach --dirstat not to completely ignore rearranged lines within a file
--dirstat-by-file: Make it faster and more correct
--dirstat: Describe non-obvious differences relative to --stat or regular diff

Merge branch 'sp/maint-clear-postfields'Junio C Hamano Thu, 28 Apr 2011 21:10:51 +0000 (14:10 -0700)

Merge branch 'sp/maint-clear-postfields'

* sp/maint-clear-postfields:
http: clear POSTFIELDS when initializing a slot

git-rebase--interactive.sh: preserve-merges fails on... Andrew Wong Thu, 28 Apr 2011 04:35:55 +0000 (00:35 -0400)

git-rebase--interactive.sh: preserve-merges fails on merges created with no-ff

'git rebase' uses 'git merge' to preserve merges (-p). This preserves
the original merge commit correctly, except when the original merge
commit was created by 'git merge --no-ff'. In this case, 'git rebase'
will fail to preserve the merge, because during 'git rebase', 'git
merge' will simply fast-forward and skip the commit. For example:

B
/ \
A---M
/
---o---O---P---Q

If we try to rebase M onto P, we lose the merge commit and this happens:

A---B
/
---o---O---P---Q

To correct this, we simply do a "no fast-forward" on all merge commits
when rebasing. Since by the time we decided to do a 'git merge' inside
'git rebase', it means there was a merge originally, so 'git merge'
should always create a merge commit regardless of what the merge
branches look like. This way, when rebase M onto P from the above
example, we get:

B
/ \
A---M
/
---o---O---P---Q

Signed-off-by: Andrew Wong <andrew.kw.w@gmail.com>
Signed-off-by: Junio C Hamano <gitster@pobox.com>

Start 1.7.6 cycleJunio C Hamano Wed, 27 Apr 2011 19:09:04 +0000 (12:09 -0700)

Start 1.7.6 cycle

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

Merge branch 'mg/x-years-12-months'Junio C Hamano Wed, 27 Apr 2011 18:36:43 +0000 (11:36 -0700)

Merge branch 'mg/x-years-12-months'

* mg/x-years-12-months:
date: avoid "X years, 12 months" in relative dates

Merge branch 'cn/format-patch-quiet'Junio C Hamano Wed, 27 Apr 2011 18:36:43 +0000 (11:36 -0700)

Merge branch 'cn/format-patch-quiet'

* cn/format-patch-quiet:
format-patch: document --quiet option
format-patch: don't pass on the --quiet flag

Merge branch 'ef/maint-strbuf-init'Junio C Hamano Wed, 27 Apr 2011 18:36:43 +0000 (11:36 -0700)

Merge branch 'ef/maint-strbuf-init'

* ef/maint-strbuf-init:
config: support values longer than 1023 bytes
strbuf: make sure buffer is zero-terminated

Merge branch 'rr/doc-content-type'Junio C Hamano Wed, 27 Apr 2011 18:36:43 +0000 (11:36 -0700)

Merge branch 'rr/doc-content-type'

* rr/doc-content-type:
Documentation: Allow custom diff tools to be specified in 'diff.tool'
Documentation: Add diff.<driver>.* to config
Documentation: Move diff.<driver>.* from config.txt to diff-config.txt
Documentation: Add filter.<driver>.* to config

Merge branch 'jc/merge-dash-previous'Junio C Hamano Wed, 27 Apr 2011 18:36:42 +0000 (11:36 -0700)

Merge branch 'jc/merge-dash-previous'

* jc/merge-dash-previous:
merge: allow "-" as a short-hand for "previous branch"

Merge branch 'dm/stash-k-i-p'Junio C Hamano Wed, 27 Apr 2011 18:36:42 +0000 (11:36 -0700)

Merge branch 'dm/stash-k-i-p'

* dm/stash-k-i-p:
stash: ensure --no-keep-index and --patch can be used in any order
stash: add two more tests for --no-keep-index

Merge branch 'rj/sparse'Junio C Hamano Wed, 27 Apr 2011 18:36:42 +0000 (11:36 -0700)

Merge branch 'rj/sparse'

* rj/sparse:
sparse: Fix some "symbol not declared" warnings
sparse: Fix errors due to missing target-specific variables
sparse: Fix an "symbol 'merge_file' not decared" warning
sparse: Fix an "symbol 'format_subject' not declared" warning
sparse: Fix some "Using plain integer as NULL pointer" warnings
sparse: Fix an "symbol 'cmd_index_pack' not declared" warning
Makefile: Use cgcc rather than sparse in the check target

Merge branch 'jk/maint-upload-pack-shallow'Junio C Hamano Wed, 27 Apr 2011 18:36:42 +0000 (11:36 -0700)

Merge branch 'jk/maint-upload-pack-shallow'

* jk/maint-upload-pack-shallow:
upload-pack: start pack-objects before async rev-list

Merge branch 'nk/blame-abbrev'Junio C Hamano Wed, 27 Apr 2011 18:36:42 +0000 (11:36 -0700)

Merge branch 'nk/blame-abbrev'

* nk/blame-abbrev:
blame: add --abbrev command line option and make it honor core.abbrev

Merge branch 'jk/maint-stash-oob'Junio C Hamano Wed, 27 Apr 2011 18:36:42 +0000 (11:36 -0700)

Merge branch 'jk/maint-stash-oob'

* jk/maint-stash-oob:
stash: fix false positive in the invalid ref test.
stash: fix accidental apply of non-existent stashes

Conflicts:
t/t3903-stash.sh

Merge branch 'dm/color-palette'Junio C Hamano Wed, 27 Apr 2011 18:36:41 +0000 (11:36 -0700)

Merge branch 'dm/color-palette'

* dm/color-palette:
Share color list between graph and show-branch

Merge branch 'jk/stash-loosen-safety'Junio C Hamano Wed, 27 Apr 2011 18:36:41 +0000 (11:36 -0700)

Merge branch 'jk/stash-loosen-safety'

* jk/stash-loosen-safety:
stash: drop dirty worktree check on apply

Merge branch 'jc/pack-objects-bigfile'Junio C Hamano Wed, 27 Apr 2011 18:36:41 +0000 (11:36 -0700)

Merge branch 'jc/pack-objects-bigfile'

* jc/pack-objects-bigfile:
Teach core.bigfilethreashold to pack-objects

Merge branch 'mh/git-svn-automkdirs'Junio C Hamano Wed, 27 Apr 2011 18:36:41 +0000 (11:36 -0700)

Merge branch 'mh/git-svn-automkdirs'

* mh/git-svn-automkdirs:
git-svn: add an option to skip the creation of empty directories

Merge branch 'mg/reflog-with-options'Junio C Hamano Wed, 27 Apr 2011 18:36:41 +0000 (11:36 -0700)

Merge branch 'mg/reflog-with-options'

* mg/reflog-with-options:
reflog: fix overriding of command line options
t/t1411: test reflog with formats
builtin/log.c: separate default and setup of cmd_log_init()

Merge branch 'ar/clean-rmdir-empty'Junio C Hamano Wed, 27 Apr 2011 18:36:41 +0000 (11:36 -0700)

Merge branch 'ar/clean-rmdir-empty'

* ar/clean-rmdir-empty:
clean: unreadable directory may still be rmdir-able if it is empty

Merge branch 'mg/sha1-path-advise'Junio C Hamano Wed, 27 Apr 2011 18:36:40 +0000 (11:36 -0700)

Merge branch 'mg/sha1-path-advise'

* mg/sha1-path-advise:
sha1_name: Suggest commit:./file for path in subdir
t1506: factor out test for "Did you mean..."

config.txt,diff-options.txt: porcelain vs. plumbing... Michael J Gruber Wed, 27 Apr 2011 07:38:27 +0000 (09:38 +0200)

config.txt,diff-options.txt: porcelain vs. plumbing for color.diff

Reading the diff-family and config man pages one may think that the
color.diff and color.ui settings apply to all diff commands. Make it
clearer that they do not apply to the plumbing variants
diff-{files,index,tree}.

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

strbuf: clarify assertion in strbuf_setlen()René Scharfe Wed, 27 Apr 2011 17:24:50 +0000 (19:24 +0200)

strbuf: clarify assertion in strbuf_setlen()

Commit a8f3e2219 introduced the strbuf_grow() call to strbuf_setlen() to
make ensure that there was at least one byte available to write the
mandatory trailing NUL, even for previously unallocated strbufs.

Then b315c5c0 added strbuf_slopbuf for the same reason, only globally for
all uses of strbufs.

Thus the strbuf_grow() call can be removed now. This avoids readers of
strbuf.h from mistakenly thinking that strbuf_setlen() can be used to
extend a strbuf.

The following assert() needs to be changed to cope with the fact that
sb->alloc can now be zero, which is OK as long as len is also zero. As
suggested by Junio, use the chance to convert it to a die() with a short
explanatory message. The pattern of 'die("BUG: ...")' is already used in
strbuf.c.

This was the only assert() in strbuf.[ch], so assert.h doesn't have to be
included anymore either.

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

handle_alias: provide GIT_PREFIX to !aliasMichael J Gruber Wed, 27 Apr 2011 08:36:27 +0000 (10:36 +0200)

handle_alias: provide GIT_PREFIX to !alias

Provide an environment variable GIT_PREFIX which contains the subdirectory
from which a !alias was called (i.e. 'git rev-parse --show-prefix') since
these cd to the to level directory before they are executed.

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

t1020: test !alias in subdirectoryMichael J Gruber Wed, 27 Apr 2011 08:36:26 +0000 (10:36 +0200)

t1020: test !alias in subdirectory

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

Automatically autoload bashcompinit for ZSH, when neededMarius Storm-Olsen Wed, 27 Apr 2011 03:23:35 +0000 (22:23 -0500)

Automatically autoload bashcompinit for ZSH, when needed

If bashcompinit has not already been autoloaded, do so
automatically, as it is required to properly parse the
git-completion file with ZSH.

Helped-by: Felipe Contreras
Signed-off-by: Marius Storm-Olsen <mstormo@gmail.com>
Signed-off-by: Junio C Hamano <gitster@pobox.com>

pretty: quote rfc822 specials in email addressesJeff King Fri, 8 Apr 2011 22:40:36 +0000 (18:40 -0400)

pretty: quote rfc822 specials in email addresses

If somebody has a name that includes an rfc822 special, we
will output it literally in the "From:" header. This is
usually OK, but certain characters (like ".") are supposed
to be enclosed in double-quotes in a mail header.

In practice, whether this matters may depend on your MUA.
Some MUAs will happily take in:

From: Foo B. Bar <author@example.com>

without quotes, and properly quote the "." when they send
the actual mail. Others may not, or may screw up harder
things like:

From: Foo "The Baz" Bar <author@example.com>

For example, mutt will strip the quotes, thinking they are
actual syntactic rfc822 quotes.

So let's quote properly, and then (if necessary) we still
apply rfc2047 encoding on top of that, which should make all
MUAs happy.

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

gitweb: supply '-n' to gzip for identical outputFraser Tweedale Tue, 26 Apr 2011 01:32:00 +0000 (11:32 +1000)

gitweb: supply '-n' to gzip for identical output

For projects that do not release official archives, gitweb's snapshot
feature would be an excellent alternative, and but without the '-n'
('--no-name') argument, gzip includes a timestamp in output which results
in different files. Because some systems hash/checksum downloaded files
to ensure integrity of the tarball (e.g FreeBSD), it is desirable to
produce tarballs in a reproducible way for that purpose.

Whilst '--no-name' is more descriptive, the long version of the flag is
not supported on all systems. In particular, OpenBSD does not appear to
support it.

Supply '-n' to gzip to exclude timestamp from output and produce idential
output every time.

Signed-off-by: Fraser Tweedale <frase@frase.id.au>
Acked-by: Jakub Narebski <jnareb@gmail.com>
Signed-off-by: Junio C Hamano <gitster@pobox.com>

rev-list --count: separate count for --cherry-markMichael J Gruber Tue, 26 Apr 2011 08:24:29 +0000 (10:24 +0200)

rev-list --count: separate count for --cherry-mark

When --count is used with --cherry-mark, omit the patch equivalent
commits from the count for left and right commits and print the count of
equivalent commits separately.

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

git-svn.txt: small typeface improvementsValentin Haenel Tue, 26 Apr 2011 11:34:19 +0000 (13:34 +0200)

git-svn.txt: small typeface improvements

Mark subcommand names as 'subcommand' to make them stand out.

Signed-off-by: Valentin Haenel <valentin.haenel@gmx.de>
Acked-by: Eric Wong <normalperson@yhbt.net>
Signed-off-by: Junio C Hamano <gitster@pobox.com>

git-svn.txt: move option descriptionsValentin Haenel Tue, 26 Apr 2011 11:34:18 +0000 (13:34 +0200)

git-svn.txt: move option descriptions

The options '---use-log-author' and '--add-author-from' are applicable to other
subcommands except 'fetch' -- therefore move them from the 'fetch' section to
the more general 'options' section.

Signed-off-by: Valentin Haenel <valentin.haenel@gmx.de>
Acked-by: Eric Wong <normalperson@yhbt.net>
Signed-off-by: Junio C Hamano <gitster@pobox.com>

git-svn.txt: fix usage of --add-author-fromValentin Haenel Mon, 25 Apr 2011 21:36:15 +0000 (23:36 +0200)

git-svn.txt: fix usage of --add-author-from

The option '--add-author-from' is used in 'commit-diff', 'set-tree', and
'dcommit' subcommands.

Signed-off-by: Valentin Haenel <valentin.haenel@gmx.de>
Acked-by: Eric Wong <normalperson@yhbt.net>
Signed-off-by: Junio C Hamano <gitster@pobox.com>

t/README: unify documentation of test function argsMathias Lafeldt Tue, 26 Apr 2011 10:33:26 +0000 (12:33 +0200)

t/README: unify documentation of test function args

Document all test function arguments in the same way.

While at it, tweak the description of test_path_is_* (thanks to Junio),
and correct some grammatical errors.

Signed-off-by: Mathias Lafeldt <misfire@debugon.org>
Signed-off-by: Junio C Hamano <gitster@pobox.com>

http: clear POSTFIELDS when initializing a slotJunio C Hamano Tue, 26 Apr 2011 15:04:49 +0000 (08:04 -0700)

http: clear POSTFIELDS when initializing a slot

After posting a short request using CURLOPT_POSTFIELDS, if the slot
is reused for posting a large payload, the slot ends up having both
POSTFIELDS (which now points at a random garbage) and READFUNCTION,
in which case the curl library tries to use the stale POSTFIELDS.

Clear it as part of the general slot initialization in get_active_slot().

Heavylifting-by: Shawn Pearce <spearce@spearce.org>
Signed-off-by: Junio C Hamano <gitster@pobox.com>
Acked-by: Shawn Pearce <spearce@spearce.org>

Git 1.7.5 v1.7.5Junio C Hamano Sun, 24 Apr 2011 06:36:32 +0000 (23:36 -0700)

Git 1.7.5

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

sparse: Fix some "symbol not declared" warningsRamsay Jones Thu, 7 Apr 2011 18:49:33 +0000 (19:49 +0100)

sparse: Fix some "symbol not declared" warnings

In particular, sparse issues the "symbol 'a_symbol' was not declared.
Should it be static?" warnings for the following symbols:

attr.c:468:12: 'git_etc_gitattributes'
attr.c:476:5: 'git_attr_system'
vcs-svn/svndump.c:282:6: 'svndump_read'
vcs-svn/svndump.c:417:5: 'svndump_init'
vcs-svn/svndump.c:432:6: 'svndump_deinit'
vcs-svn/svndump.c:445:6: 'svndump_reset'

The symbols in attr.c only require file scope, so we add the static
modifier to their declaration.

The symbols in vcs-svn/svndump.c are external symbols, and they
already have extern declarations in the "svndump.h" header file,
so we simply include the header in svndump.c.

Signed-off-by: Ramsay Jones <ramsay@ramsay1.demon.co.uk>
Signed-off-by: Junio C Hamano <gitster@pobox.com>

sparse: Fix errors due to missing target-specific variablesRamsay Jones Thu, 21 Apr 2011 19:14:42 +0000 (20:14 +0100)

sparse: Fix errors due to missing target-specific variables

In particular, sparse issues the following errors:

attr.c:472:43: error: undefined identifier 'ETC_GITATTRIBUTES'
config.c:821:43: error: undefined identifier 'ETC_GITCONFIG'
exec_cmd.c:14:37: error: undefined identifier 'PREFIX'
exec_cmd.c:83:28: error: undefined identifier 'GIT_EXEC_PATH'
builtin/help.c:328:46: error: undefined identifier 'GIT_MAN_PATH'
builtin/help.c:374:40: error: undefined identifier 'GIT_INFO_PATH'
builtin/help.c:382:45: error: undefined identifier 'GIT_HTML_PATH'
git.c:96:42: error: undefined identifier 'GIT_HTML_PATH'
git.c:241:35: error: invalid initializer
http.c:293:43: error: undefined identifier 'GIT_HTTP_USER_AGENT'

which is caused by not passing the target-specific additions to
the EXTRA_CPPFLAGS variable to cgcc.

In order to fix the problem, we define a new sparse target which
depends on a set of non-existent "sparse object" files (*.sp)
which correspond to the set of C source files. In addition to the
new target, we also provide a new pattern rule for "creating" the
sparse object files from the source files by running cgcc. This
allows us to add '*.sp' to the rules setting the target-specific
EXTRA_CPPFLAGS variable, which is then included in the new pattern
rule to run cgcc.

Also, we change the 'check' target to re-direct the user to the
new sparse target.

Signed-off-by: Ramsay Jones <ramsay@ramsay1.demon.co.uk>
Signed-off-by: Junio C Hamano <gitster@pobox.com>

date: avoid "X years, 12 months" in relative datesMichael J Gruber Wed, 20 Apr 2011 09:12:11 +0000 (11:12 +0200)

date: avoid "X years, 12 months" in relative dates

When relative dates are more than about a year ago, we start
writing them as "Y years, M months". At the point where we
calculate Y and M, we have the time delta specified as a
number of days. We calculate these integers as:

Y = days / 365
M = (days % 365 + 15) / 30

This rounds days in the latter half of a month up to the
nearest month, so that day 16 is "1 month" (or day 381 is "1
year, 1 month").

We don't round the year at all, though, meaning we can end
up with "1 year, 12 months", which is silly; it should just
be "2 years".

Implement this differently with months of size

onemonth = 365/12

so that

totalmonths = (long)( (days + onemonth/2)/onemonth )
years = totalmonths / 12
months = totalmonths % 12

In order to do this without floats, we write the first formula as

totalmonths = (days*12*2 + 365) / (365*2)

Tests and inspiration by Jeff King.

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

Git 1.7.5-rc3 v1.7.5-rc3Junio C Hamano Tue, 19 Apr 2011 18:51:00 +0000 (11:51 -0700)

Git 1.7.5-rc3

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

Sync with 1.7.4.5Junio C Hamano Tue, 19 Apr 2011 18:49:13 +0000 (11:49 -0700)

Sync with 1.7.4.5

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

Git 1.7.4.5 v1.7.4.5Junio C Hamano Tue, 19 Apr 2011 18:45:38 +0000 (11:45 -0700)

Git 1.7.4.5

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

remove noise and inaccuracies from git-svn docsStefan Sperling Tue, 19 Apr 2011 09:06:46 +0000 (11:06 +0200)

remove noise and inaccuracies from git-svn docs

Signed-off-by: Stefan Sperling <stsp@stsp.name>
Signed-off-by: Junio C Hamano <gitster@pobox.com>

Documentation/format-patch: suggest Toggle Word Wrap... Johannes Sixt Mon, 18 Apr 2011 06:31:16 +0000 (08:31 +0200)

Documentation/format-patch: suggest Toggle Word Wrap add-on for Thunderbird

Of the (now) three methods to send unmangled patches using Thunderbird,
this method is listed first because it provides a single-click on-demand
option rather than a permanent change of configuration like the other
two methods.

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

git-svn.txt: Document --mergeinfoMichael J Gruber Tue, 19 Apr 2011 12:24:27 +0000 (14:24 +0200)

git-svn.txt: Document --mergeinfo

6abd933 (git-svn: allow the mergeinfo property to be set, 2010-09-24)
introduced the --mergeinfo option. Document it.

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

Revert "run-command: prettify -D_FORTIFY_SOURCE workaround"Junio C Hamano Mon, 18 Apr 2011 21:14:53 +0000 (14:14 -0700)

Revert "run-command: prettify -D_FORTIFY_SOURCE workaround"

This reverts commit ebec842773932e6f853acac70c80f84209b5f83e, which
somehow mistakenly thought that any non-zero return from write(2) is
an error.