gitweb.git
Update draft release notes to 1.7.1Junio C Hamano Mon, 8 Mar 2010 08:54:05 +0000 (00:54 -0800)

Update draft release notes to 1.7.1

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

Merge branch 'maint'Junio C Hamano Mon, 8 Mar 2010 08:52:01 +0000 (00:52 -0800)

Merge branch 'maint'

* maint:
Merge accumulated fixes to prepare for 1.7.0.3

Conflicts:
RelNotes

Merge accumulated fixes to prepare for 1.7.0.3Junio C Hamano Mon, 8 Mar 2010 08:50:24 +0000 (00:50 -0800)

Merge accumulated fixes to prepare for 1.7.0.3

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

Merge branch 'mw/maint-gcc-warns-unused-write' into... Junio C Hamano Mon, 8 Mar 2010 08:36:02 +0000 (00:36 -0800)

Merge branch 'mw/maint-gcc-warns-unused-write' into maint

* mw/maint-gcc-warns-unused-write:
run-command.c: fix build warnings on Ubuntu

Merge branch 'fn/maint-mkdtemp-compat' into maintJunio C Hamano Mon, 8 Mar 2010 08:36:02 +0000 (00:36 -0800)

Merge branch 'fn/maint-mkdtemp-compat' into maint

* fn/maint-mkdtemp-compat:
Fix gitmkdtemp: correct test for mktemp() return value

Merge branch 'gb/maint-submodule-env' into maintJunio C Hamano Mon, 8 Mar 2010 08:36:02 +0000 (00:36 -0800)

Merge branch 'gb/maint-submodule-env' into maint

* gb/maint-submodule-env:
is_submodule_modified(): clear environment properly
submodules: ensure clean environment when operating in a submodule
shell setup: clear_local_git_env() function
rev-parse: --local-env-vars option
Refactor list of of repo-local env vars

Merge branch 'as/maint-expire' into maintJunio C Hamano Mon, 8 Mar 2010 08:36:01 +0000 (00:36 -0800)

Merge branch 'as/maint-expire' into maint

* as/maint-expire:
reflog: honor gc.reflogexpire=never
prune: honor --expire=never

Merge branch 'ml/maint-grep-doc' into maintJunio C Hamano Mon, 8 Mar 2010 08:36:01 +0000 (00:36 -0800)

Merge branch 'ml/maint-grep-doc' into maint

* ml/maint-grep-doc:
grep docs: document --no-index option
grep docs: --cached and <tree>... are incompatible
grep docs: use AsciiDoc literals consistently
grep docs: pluralize "Example" section

Merge branch 'jk/maint-push-tracking-wo-remote' into... Junio C Hamano Mon, 8 Mar 2010 08:36:01 +0000 (00:36 -0800)

Merge branch 'jk/maint-push-tracking-wo-remote' into maint

* jk/maint-push-tracking-wo-remote:
push: fix segfault for odd config

Merge branch 'jc/fetch-param' into maintJunio C Hamano Mon, 8 Mar 2010 08:36:00 +0000 (00:36 -0800)

Merge branch 'jc/fetch-param' into maint

* jc/fetch-param:
fetch --all/--multiple: keep all the fetched branch information
builtin-fetch --all/--multi: propagate options correctly
t5521: fix and modernize

Merge branch 'ne/pack-local-doc' into maintJunio C Hamano Mon, 8 Mar 2010 08:36:00 +0000 (00:36 -0800)

Merge branch 'ne/pack-local-doc' into maint

* ne/pack-local-doc:
pack-objects documentation: Fix --honor-pack-keep as well.
pack-objects documentation: reword "objects that appear in the standard input"
Documentation: pack-objects: Clarify --local's semantics.

Merge branch 'jk/maint-add--interactive-delete' into... Junio C Hamano Mon, 8 Mar 2010 08:36:00 +0000 (00:36 -0800)

Merge branch 'jk/maint-add--interactive-delete' into maint

* jk/maint-add--interactive-delete:
add-interactive: fix bogus diff header line ordering

Merge branch 'mm/mkstemps-mode-for-packfiles' into... Junio C Hamano Mon, 8 Mar 2010 08:36:00 +0000 (00:36 -0800)

Merge branch 'mm/mkstemps-mode-for-packfiles' into maint

* mm/mkstemps-mode-for-packfiles:
Use git_mkstemp_mode instead of plain mkstemp to create object files
git_mkstemps_mode: don't set errno to EINVAL on exit.
Use git_mkstemp_mode and xmkstemp_mode in odb_mkstemp, not chmod later.
git_mkstemp_mode, xmkstemp_mode: variants of gitmkstemps with mode argument.
Move gitmkstemps to path.c
Add a testcase for ACL with restrictive umask.

Merge branch 'jc/maint-fix-mailinfo-strip' into maintJunio C Hamano Mon, 8 Mar 2010 08:35:59 +0000 (00:35 -0800)

Merge branch 'jc/maint-fix-mailinfo-strip' into maint

* jc/maint-fix-mailinfo-strip:
mailinfo: do not strip leading spaces even for a header line

Merge branch 'jc/grep-author-all-match-implicit' into... Junio C Hamano Mon, 8 Mar 2010 08:35:59 +0000 (00:35 -0800)

Merge branch 'jc/grep-author-all-match-implicit' into maint

* jc/grep-author-all-match-implicit:
"log --author=me --grep=it" should find intersection, not union

Merge branch 'jc/checkout-detached' into maintJunio C Hamano Mon, 8 Mar 2010 08:35:59 +0000 (00:35 -0800)

Merge branch 'jc/checkout-detached' into maint

* jc/checkout-detached:
Reword "detached HEAD" notification

Merge branch 'maint-1.6.6' into maintJunio C Hamano Mon, 8 Mar 2010 08:35:58 +0000 (00:35 -0800)

Merge branch 'maint-1.6.6' into maint

* maint-1.6.6:

Merge branch 'jc/maint-fix-test-perm' into maint-1.6.6Junio C Hamano Sun, 7 Mar 2010 22:54:05 +0000 (14:54 -0800)

Merge branch 'jc/maint-fix-test-perm' into maint-1.6.6

* jc/maint-fix-test-perm:
lib-patch-mode.sh: Fix permission
t6000lib: Fix permission

Merge branch 'sp/maint-push-sideband' into maint-1.6.6Junio C Hamano Sun, 7 Mar 2010 22:54:01 +0000 (14:54 -0800)

Merge branch 'sp/maint-push-sideband' into maint-1.6.6

* sp/maint-push-sideband:
receive-pack: Send internal errors over side-band #2
t5401: Use a bare repository for the remote peer
receive-pack: Send hook output over side band #2
receive-pack: Wrap status reports inside side-band-64k
receive-pack: Refactor how capabilities are shown to the client
send-pack: demultiplex a sideband stream with status data
run-command: support custom fd-set in async
run-command: Allow stderr to be a caller supplied pipe

Merge branch 'hm/maint-imap-send-crlf' into maint-1.6.6Junio C Hamano Sun, 7 Mar 2010 22:53:57 +0000 (14:53 -0800)

Merge branch 'hm/maint-imap-send-crlf' into maint-1.6.6

* hm/maint-imap-send-crlf:
git-imap-send: Convert LF to CRLF before storing patch to draft box

Merge branch 'gf/maint-sh-setup-nongit-ok' into maint... Junio C Hamano Sun, 7 Mar 2010 22:53:53 +0000 (14:53 -0800)

Merge branch 'gf/maint-sh-setup-nongit-ok' into maint-1.6.6

* gf/maint-sh-setup-nongit-ok:
require_work_tree broken with NONGIT_OK

Merge branch 'jk/maint-rmdir-fix' into maint-1.6.6Junio C Hamano Sun, 7 Mar 2010 22:53:50 +0000 (14:53 -0800)

Merge branch 'jk/maint-rmdir-fix' into maint-1.6.6

* jk/maint-rmdir-fix:
rm: fix bug in recursive subdirectory removal

Merge branch 'rs/optim-text-wrap' into maint-1.6.6Junio C Hamano Sun, 7 Mar 2010 22:53:45 +0000 (14:53 -0800)

Merge branch 'rs/optim-text-wrap' into maint-1.6.6

* rs/optim-text-wrap:
utf8.c: speculatively assume utf-8 in strbuf_add_wrapped_text()
utf8.c: remove strbuf_write()
utf8.c: remove print_spaces()
utf8.c: remove print_wrapped_text()

Merge branch 'tr/maint-cherry-pick-list' into maint... Junio C Hamano Sun, 7 Mar 2010 22:53:40 +0000 (14:53 -0800)

Merge branch 'tr/maint-cherry-pick-list' into maint-1.6.6

* tr/maint-cherry-pick-list:
cherry_pick_list: quit early if one side is empty

Merge branch 'cc/maint-bisect-paths' into maint-1.6.6Junio C Hamano Sun, 7 Mar 2010 22:53:35 +0000 (14:53 -0800)

Merge branch 'cc/maint-bisect-paths' into maint-1.6.6

* cc/maint-bisect-paths:
bisect: error out when passing bad path parameters

Merge branch 'mw/maint-gcc-warns-unused-write'Junio C Hamano Sun, 7 Mar 2010 20:47:18 +0000 (12:47 -0800)

Merge branch 'mw/maint-gcc-warns-unused-write'

* mw/maint-gcc-warns-unused-write:
run-command.c: fix build warnings on Ubuntu

Merge branch 'as/maint-expire'Junio C Hamano Sun, 7 Mar 2010 20:47:17 +0000 (12:47 -0800)

Merge branch 'as/maint-expire'

* as/maint-expire:
reflog: honor gc.reflogexpire=never
prune: honor --expire=never

Merge branch 'ml/maint-grep-doc'Junio C Hamano Sun, 7 Mar 2010 20:47:17 +0000 (12:47 -0800)

Merge branch 'ml/maint-grep-doc'

* ml/maint-grep-doc:
grep docs: document --no-index option
grep docs: --cached and <tree>... are incompatible
grep docs: use AsciiDoc literals consistently
grep docs: pluralize "Example" section

Merge branch 'fn/maint-mkdtemp-compat'Junio C Hamano Sun, 7 Mar 2010 20:47:17 +0000 (12:47 -0800)

Merge branch 'fn/maint-mkdtemp-compat'

* fn/maint-mkdtemp-compat:
Fix gitmkdtemp: correct test for mktemp() return value

Merge branch 'gb/maint-submodule-env'Junio C Hamano Sun, 7 Mar 2010 20:47:17 +0000 (12:47 -0800)

Merge branch 'gb/maint-submodule-env'

* gb/maint-submodule-env:
is_submodule_modified(): clear environment properly
submodules: ensure clean environment when operating in a submodule
shell setup: clear_local_git_env() function
rev-parse: --local-env-vars option
Refactor list of of repo-local env vars

Merge branch 'ne/pack-local-doc'Junio C Hamano Sun, 7 Mar 2010 20:47:16 +0000 (12:47 -0800)

Merge branch 'ne/pack-local-doc'

* ne/pack-local-doc:
pack-objects documentation: Fix --honor-pack-keep as well.
pack-objects documentation: reword "objects that appear in the standard input"
Documentation: pack-objects: Clarify --local's semantics.

Merge branch 'mb/shortlog-nongit-stdin'Junio C Hamano Sun, 7 Mar 2010 20:47:16 +0000 (12:47 -0800)

Merge branch 'mb/shortlog-nongit-stdin'

* mb/shortlog-nongit-stdin:
shortlog: warn the user when there is no input

Merge branch 'jk/maint-push-tracking-wo-remote'Junio C Hamano Sun, 7 Mar 2010 20:47:16 +0000 (12:47 -0800)

Merge branch 'jk/maint-push-tracking-wo-remote'

* jk/maint-push-tracking-wo-remote:
push: fix segfault for odd config

Merge branch 'jc/fetch-param'Junio C Hamano Sun, 7 Mar 2010 20:47:16 +0000 (12:47 -0800)

Merge branch 'jc/fetch-param'

* jc/fetch-param:
fetch --all/--multiple: keep all the fetched branch information
builtin-fetch --all/--multi: propagate options correctly
t5521: fix and modernize

Merge branch 'il/loosen-remote-helper-names'Junio C Hamano Sun, 7 Mar 2010 20:47:15 +0000 (12:47 -0800)

Merge branch 'il/loosen-remote-helper-names'

* il/loosen-remote-helper-names:
Allow '+', '-' and '.' in remote helper names

Merge branch 'nd/root-git'Junio C Hamano Sun, 7 Mar 2010 20:47:15 +0000 (12:47 -0800)

Merge branch 'nd/root-git'

* nd/root-git:
Add test for using Git at root of file system
Support working directory located at root
Move offset_1st_component() to path.c
init-db, rev-parse --git-dir: do not append redundant slash
make_absolute_path(): Do not append redundant slash

Conflicts:
setup.c
sha1_file.c

Merge branch 'js/runtime-prefix-trace-not-warn'Junio C Hamano Sun, 7 Mar 2010 20:47:15 +0000 (12:47 -0800)

Merge branch 'js/runtime-prefix-trace-not-warn'

* js/runtime-prefix-trace-not-warn:
Print RUNTIME_PREFIX warning only when GIT_TRACE is set

Merge branch 'mm/mkstemps-mode-for-packfiles'Junio C Hamano Sun, 7 Mar 2010 20:47:14 +0000 (12:47 -0800)

Merge branch 'mm/mkstemps-mode-for-packfiles'

* mm/mkstemps-mode-for-packfiles:
Use git_mkstemp_mode instead of plain mkstemp to create object files
git_mkstemps_mode: don't set errno to EINVAL on exit.
Use git_mkstemp_mode and xmkstemp_mode in odb_mkstemp, not chmod later.
git_mkstemp_mode, xmkstemp_mode: variants of gitmkstemps with mode argument.
Move gitmkstemps to path.c
Add a testcase for ACL with restrictive umask.

Merge branch 'jk/maint-add--interactive-delete'Junio C Hamano Sun, 7 Mar 2010 20:47:14 +0000 (12:47 -0800)

Merge branch 'jk/maint-add--interactive-delete'

* jk/maint-add--interactive-delete:
add-interactive: fix bogus diff header line ordering

Merge branch 'jc/maint-fix-mailinfo-strip'Junio C Hamano Sun, 7 Mar 2010 20:47:14 +0000 (12:47 -0800)

Merge branch 'jc/maint-fix-mailinfo-strip'

* jc/maint-fix-mailinfo-strip:
mailinfo: do not strip leading spaces even for a header line

Sync with 1.7.0.2Junio C Hamano Sun, 7 Mar 2010 19:09:47 +0000 (11:09 -0800)

Sync with 1.7.0.2

Git 1.7.0.2 v1.7.0.2Junio C Hamano Sun, 7 Mar 2010 19:07:51 +0000 (11:07 -0800)

Git 1.7.0.2

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

unset GREP_OPTIONS in test-lib.shBert Wesarg Wed, 18 Nov 2009 16:15:19 +0000 (17:15 +0100)

unset GREP_OPTIONS in test-lib.sh

I used to set GREP_OPTIONS to exclude *.orig and *.rej files. But with this
the test t4252-am-options.sh fails because it calls grep with a .rej file:

grep "@@ -1,3 +1,3 @@" file-2.rej

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

Merge branch 'maint'Junio C Hamano Sun, 7 Mar 2010 08:02:15 +0000 (00:02 -0800)

Merge branch 'maint'

* maint:
stash: suggest the correct command line for unknown options.
t7406: Fix submodule init config tests

stash: suggest the correct command line for unknown... Matthieu Moy Fri, 5 Mar 2010 18:43:23 +0000 (19:43 +0100)

stash: suggest the correct command line for unknown options.

Signed-off-by: Matthieu Moy <Matthieu.Moy@imag.fr>
Signed-off-by: Junio C Hamano <gitster@pobox.com>

t7406: Fix submodule init config testsStephen Boyd Fri, 5 Mar 2010 08:20:38 +0000 (00:20 -0800)

t7406: Fix submodule init config tests

These tests have been broken since they were introduced in commits
ca2cedb (git-submodule: add support for --rebase., 2009-04-24) and
42b4917 (git-submodule: add support for --merge., 2009-06-03).
'git submodule init' expects the submodules to exist in the index.
In this case, the submodules don't exist and therefore looking for
the submodules will always fail. To make matters worse, git submodule
fails visibly to the user by saying:

error: pathspec 'rebasing' did not match any file(s) known to git.
Did you forget to 'git add'?

but doesn't return an error code. This allows the test to fail silently.
Fix it by adding the submodules first.

Cc: Johan Herland <johan@herland.net>
Cc: Peter Hutterer <peter.hutterer@who-t.net>
Cc: Johannes Schindelin <johannes.schindelin@gmx.de>
Signed-off-by: Stephen Boyd <bebarino@gmail.com>
Signed-off-by: Junio C Hamano <gitster@pobox.com>

git-svn: make git svn --version work againMichael J Gruber Thu, 4 Mar 2010 10:23:53 +0000 (11:23 +0100)

git-svn: make git svn --version work again

by requesting SVN::Core which is needed for the svn version.

Signed-off-by: Michael J Gruber <git@drmicha.warpmail.net>
Acked-by: Eric Wong <normalperson@yhbt.net>

Revert "git-svn: always initialize with core.autocrlf... Erik Faye-Lund Wed, 3 Mar 2010 20:10:23 +0000 (21:10 +0100)

Revert "git-svn: always initialize with core.autocrlf=false"

git-svn rebase used to have issues with CRLF conversion. Since these issues
have been fixed, we can safely revert the work-around that disables CRLF
conversion.

This reverts commit d3c9634eacdcaa71cbd69a160e6f4e80ddb7ab63.

Signed-off-by: Erik Faye-Lund <kusmabite@gmail.com>
Acked-by: Eric Wong <normalperson@yhbt.net>

git-svn: support fetch with autocrlf onErik Faye-Lund Wed, 3 Mar 2010 20:10:22 +0000 (21:10 +0100)

git-svn: support fetch with autocrlf on

Before commit d3c9634e, performing a "git svn rebase" that fetched a
change containing CRLFs corrupted the git-svn meta-data. This was
worked around in d3c9634e by setting core.autocrlf to "false" in the
per-repo config when initing the clone. However, if the config
variable was later changed, the corruption would still occur.

This patch tries to fix it while allowing core.autocrlf to be
enabled, by disabling filters when when hashing.

git-svn is currently the only call-site for hash_and_insert_object
(apart from the test-suite), so changing it should be safe.

Signed-off-by: Erik Faye-Lund <kusmabite@gmail.com>
Acked-by: Eric Wong <normalperson@yhbt.net>

hash-object: support --stdin-paths with --no-filtersErik Faye-Lund Wed, 3 Mar 2010 20:10:21 +0000 (21:10 +0100)

hash-object: support --stdin-paths with --no-filters

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

Merge branch 'maint'Junio C Hamano Fri, 5 Mar 2010 06:39:54 +0000 (22:39 -0800)

Merge branch 'maint'

* maint:
Update draft release notes to 1.7.0.2
Remove extra '-' from git-am(1)

Update draft release notes to 1.7.0.2Junio C Hamano Fri, 5 Mar 2010 06:39:38 +0000 (22:39 -0800)

Update draft release notes to 1.7.0.2

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

Merge branch 'jn/gitweb-config-error-die' into maintJunio C Hamano Fri, 5 Mar 2010 06:27:12 +0000 (22:27 -0800)

Merge branch 'jn/gitweb-config-error-die' into maint

* jn/gitweb-config-error-die:
gitweb: Die if there are parsing errors in config file

Merge branch 'jn/maint-fix-pager' into maintJunio C Hamano Fri, 5 Mar 2010 06:27:04 +0000 (22:27 -0800)

Merge branch 'jn/maint-fix-pager' into maint

* jn/maint-fix-pager:
tests: Fix race condition in t7006-pager
t7006-pager: if stdout is not a terminal, make a new one
tests: Add tests for automatic use of pager
am: Fix launching of pager
git svn: Fix launching of pager
git.1: Clarify the behavior of the --paginate option
Make 'git var GIT_PAGER' always print the configured pager
Fix 'git var' usage synopsis

Merge branch 'tr/maint-cherry-pick-list' into maintJunio C Hamano Fri, 5 Mar 2010 06:26:44 +0000 (22:26 -0800)

Merge branch 'tr/maint-cherry-pick-list' into maint

* tr/maint-cherry-pick-list:
cherry_pick_list: quit early if one side is empty

Merge branch 'ld/maint-diff-quiet-w' into maintJunio C Hamano Fri, 5 Mar 2010 06:26:39 +0000 (22:26 -0800)

Merge branch 'ld/maint-diff-quiet-w' into maint

* ld/maint-diff-quiet-w:
git-diff: add a test for git diff --quiet -w
git diff --quiet -w: check and report the status

Merge branch 'rs/optim-text-wrap' into maintJunio C Hamano Fri, 5 Mar 2010 06:26:33 +0000 (22:26 -0800)

Merge branch 'rs/optim-text-wrap' into maint

* rs/optim-text-wrap:
utf8.c: speculatively assume utf-8 in strbuf_add_wrapped_text()
utf8.c: remove strbuf_write()
utf8.c: remove print_spaces()
utf8.c: remove print_wrapped_text()

Merge branch 'dp/read-not-mmap-small-loose-object'... Junio C Hamano Fri, 5 Mar 2010 06:26:17 +0000 (22:26 -0800)

Merge branch 'dp/read-not-mmap-small-loose-object' into maint

* dp/read-not-mmap-small-loose-object:
hash-object: don't use mmap() for small files

Merge branch 'np/compress-loose-object-memsave' into... Junio C Hamano Fri, 5 Mar 2010 06:26:05 +0000 (22:26 -0800)

Merge branch 'np/compress-loose-object-memsave' into maint

* np/compress-loose-object-memsave:
sha1_file: be paranoid when creating loose objects
sha1_file: don't malloc the whole compressed result when writing out objects

Merge branch 'jc/maint-status-preload' into maintJunio C Hamano Fri, 5 Mar 2010 06:25:45 +0000 (22:25 -0800)

Merge branch 'jc/maint-status-preload' into maint

* jc/maint-status-preload:
status: preload index to optimize lstat(2) calls

Merge branch 'gf/maint-sh-setup-nongit-ok' into maintJunio C Hamano Fri, 5 Mar 2010 06:25:37 +0000 (22:25 -0800)

Merge branch 'gf/maint-sh-setup-nongit-ok' into maint

* gf/maint-sh-setup-nongit-ok:
require_work_tree broken with NONGIT_OK

Merge branch 'cc/maint-bisect-paths' into maintJunio C Hamano Fri, 5 Mar 2010 06:25:23 +0000 (22:25 -0800)

Merge branch 'cc/maint-bisect-paths' into maint

* cc/maint-bisect-paths:
bisect: error out when passing bad path parameters

Merge branch 'maint-1.6.6' into maintJunio C Hamano Fri, 5 Mar 2010 06:24:25 +0000 (22:24 -0800)

Merge branch 'maint-1.6.6' into maint

* maint-1.6.6:
Remove extra '-' from git-am(1)

Merge branch 'maint-1.6.5' into maint-1.6.6Junio C Hamano Fri, 5 Mar 2010 06:24:19 +0000 (22:24 -0800)

Merge branch 'maint-1.6.5' into maint-1.6.6

* maint-1.6.5:
Remove extra '-' from git-am(1)

Remove extra '-' from git-am(1)Michal Sojka Thu, 4 Mar 2010 12:08:28 +0000 (13:08 +0100)

Remove extra '-' from git-am(1)

Signed-off-by: Michal Sojka <sojkam1@fel.cvut.cz>
Signed-off-by: Junio C Hamano <gitster@pobox.com>

t9119-git-svn-info.sh: test with svn 1.6.* as wellMichael J Gruber Wed, 3 Mar 2010 20:34:32 +0000 (21:34 +0100)

t9119-git-svn-info.sh: test with svn 1.6.* as well

All tests in t9119 were disabled for subversion versions other than
1.[45].*. Make the test script run with subversion 1.[456].*.

Signed-off-by: Michael J Gruber <git@drmicha.warpmail.net>
Acked-by: Eric Wong <normalperson@yhbt.net>

git-svn: req_svn when neededMichael J Gruber Wed, 3 Mar 2010 20:34:31 +0000 (21:34 +0100)

git-svn: req_svn when needed

The delayed loading of SVN missed a place where SVN::Core is used. Make
sure to load the package before trying to use it.

Signed-off-by: Michael J Gruber <git@drmicha.warpmail.net>
Acked-by: Eric Wong <normalperson@yhbt.net>

run-command.c: fix build warnings on UbuntuMichael Wookey Fri, 29 Jan 2010 22:38:19 +0000 (09:38 +1100)

run-command.c: fix build warnings on Ubuntu

Building git on Ubuntu 9.10 warns that the return value of write(2)
isn't checked. These warnings were introduced in commits:

2b541bf8 ("start_command: detect execvp failures early")
a5487ddf ("start_command: report child process setup errors to the
parent's stderr")

GCC details:

$ gcc --version
gcc (Ubuntu 4.4.1-4ubuntu9) 4.4.1

Silence the warnings by reading (but not making use of) the return value
of write(2).

Signed-off-by: Michael Wookey <michaelwookey@gmail.com>
Signed-off-by: Junio C Hamano <gitster@pobox.com>

Merge branch 'maint'Junio C Hamano Wed, 3 Mar 2010 22:56:13 +0000 (14:56 -0800)

Merge branch 'maint'

* maint:
Start preparing for 1.7.0.2

Conflicts:
RelNotes

Merge branch 'jh/maint-submodule-status-in-void' (early... Junio C Hamano Wed, 3 Mar 2010 22:50:22 +0000 (14:50 -0800)

Merge branch 'jh/maint-submodule-status-in-void' (early part)

* 'jh/maint-submodule-status-in-void' (early part):
submodule summary: do not shift a non-existent positional variable

submodule summary: do not shift a non-existent position... Jeff King Wed, 3 Mar 2010 22:19:09 +0000 (14:19 -0800)

submodule summary: do not shift a non-existent positional variable

When "git submodule summary" is run without any argument, we default to
compare the state of index with the HEAD, but tried to shift out $1 that
does not exist (and worse yet, we didn't use it).

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

Start preparing for 1.7.0.2Junio C Hamano Wed, 3 Mar 2010 07:11:36 +0000 (23:11 -0800)

Start preparing for 1.7.0.2

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

Merge branch 'tc/maint-transport-ls-remote-with-void... Junio C Hamano Wed, 3 Mar 2010 06:55:22 +0000 (22:55 -0800)

Merge branch 'tc/maint-transport-ls-remote-with-void' into maint

* tc/maint-transport-ls-remote-with-void:
transport: add got_remote_refs flag

Merge branch 'hm/maint-imap-send-crlf' into maintJunio C Hamano Wed, 3 Mar 2010 06:55:03 +0000 (22:55 -0800)

Merge branch 'hm/maint-imap-send-crlf' into maint

* hm/maint-imap-send-crlf:
git-imap-send: Convert LF to CRLF before storing patch to draft box

Merge branch 'sp/maint-push-sideband' into maintJunio C Hamano Wed, 3 Mar 2010 06:54:50 +0000 (22:54 -0800)

Merge branch 'sp/maint-push-sideband' into maint

* sp/maint-push-sideband:
receive-pack: Send internal errors over side-band #2
t5401: Use a bare repository for the remote peer
receive-pack: Send hook output over side band #2
receive-pack: Wrap status reports inside side-band-64k
receive-pack: Refactor how capabilities are shown to the client
send-pack: demultiplex a sideband stream with status data
run-command: support custom fd-set in async
run-command: Allow stderr to be a caller supplied pipe

Conflicts:
builtin-receive-pack.c
run-command.c
t/t5401-update-hooks.sh

Merge branch 'jc/maint-fix-test-perm' into maintJunio C Hamano Wed, 3 Mar 2010 06:38:02 +0000 (22:38 -0800)

Merge branch 'jc/maint-fix-test-perm' into maint

* jc/maint-fix-test-perm:
lib-patch-mode.sh: Fix permission
t6000lib: Fix permission

Merge branch 'np/fast-import-idx-v2' into maintJunio C Hamano Wed, 3 Mar 2010 06:28:49 +0000 (22:28 -0800)

Merge branch 'np/fast-import-idx-v2' into maint

* np/fast-import-idx-v2:
fast-import: use the diff_delta() max_delta_size argument
fast-import: honor pack.indexversion and pack.packsizelimit config vars
fast-import: make default pack size unlimited
fast-import: use write_idx_file() instead of custom code
fast-import: use sha1write() for pack data
fast-import: start using struct pack_idx_entry

Merge branch 'maint'Junio C Hamano Tue, 2 Mar 2010 20:44:16 +0000 (12:44 -0800)

Merge branch 'maint'

* maint:
gitweb: Fix project-specific feature override behavior
gitweb multiple project roots documentation

Merge branch 'jn/maint-fix-pager'Junio C Hamano Tue, 2 Mar 2010 20:44:11 +0000 (12:44 -0800)

Merge branch 'jn/maint-fix-pager'

* jn/maint-fix-pager:
tests: Fix race condition in t7006-pager
t7006-pager: if stdout is not a terminal, make a new one
tests: Add tests for automatic use of pager
am: Fix launching of pager
git svn: Fix launching of pager
git.1: Clarify the behavior of the --paginate option
Make 'git var GIT_PAGER' always print the configured pager
Fix 'git var' usage synopsis

Merge branch 'ml/encode-header-refactor'Junio C Hamano Tue, 2 Mar 2010 20:44:11 +0000 (12:44 -0800)

Merge branch 'ml/encode-header-refactor'

* ml/encode-header-refactor:
move encode_in_pack_object_header() to a better place
refactor duplicated encode_header in pack-objects and fast-import

Merge branch 'jn/gitweb-config-error-die'Junio C Hamano Tue, 2 Mar 2010 20:44:11 +0000 (12:44 -0800)

Merge branch 'jn/gitweb-config-error-die'

* jn/gitweb-config-error-die:
gitweb: Die if there are parsing errors in config file

Merge branch 'jc/for-each-ref'Junio C Hamano Tue, 2 Mar 2010 20:44:10 +0000 (12:44 -0800)

Merge branch 'jc/for-each-ref'

* jc/for-each-ref:
for-each-ref --format='%(flag)'
for-each-ref --format='%(symref) %(symref:short)'
builtin-for-each-ref.c: check if we need to peel onion while parsing the format
builtin-for-each-ref.c: comment fixes

Merge branch 'ld/maint-diff-quiet-w'Junio C Hamano Tue, 2 Mar 2010 20:44:10 +0000 (12:44 -0800)

Merge branch 'ld/maint-diff-quiet-w'

* ld/maint-diff-quiet-w:
git-diff: add a test for git diff --quiet -w
git diff --quiet -w: check and report the status

Merge branch 'tr/maint-cherry-pick-list'Junio C Hamano Tue, 2 Mar 2010 20:44:10 +0000 (12:44 -0800)

Merge branch 'tr/maint-cherry-pick-list'

* tr/maint-cherry-pick-list:
cherry_pick_list: quit early if one side is empty

Merge branch 'rs/optim-text-wrap'Junio C Hamano Tue, 2 Mar 2010 20:44:10 +0000 (12:44 -0800)

Merge branch 'rs/optim-text-wrap'

* rs/optim-text-wrap:
utf8.c: speculatively assume utf-8 in strbuf_add_wrapped_text()
utf8.c: remove strbuf_write()
utf8.c: remove print_spaces()
utf8.c: remove print_wrapped_text()

Merge branch 'ml/send-pack-transport-refactor'Junio C Hamano Tue, 2 Mar 2010 20:44:09 +0000 (12:44 -0800)

Merge branch 'ml/send-pack-transport-refactor'

* ml/send-pack-transport-refactor:
refactor duplicated code in builtin-send-pack.c and transport.c

Merge branch 'ml/fill-mm-refactor'Junio C Hamano Tue, 2 Mar 2010 20:44:09 +0000 (12:44 -0800)

Merge branch 'ml/fill-mm-refactor'

* ml/fill-mm-refactor:
refactor duplicated fill_mm() in checkout and merge-recursive

Merge branch 'ml/connect-refactor'Junio C Hamano Tue, 2 Mar 2010 20:44:09 +0000 (12:44 -0800)

Merge branch 'ml/connect-refactor'

* ml/connect-refactor:
connect.c: move duplicated code to a new function 'get_host_and_port'

Merge branch 'np/compress-loose-object-memsave'Junio C Hamano Tue, 2 Mar 2010 20:44:09 +0000 (12:44 -0800)

Merge branch 'np/compress-loose-object-memsave'

* np/compress-loose-object-memsave:
sha1_file: be paranoid when creating loose objects
sha1_file: don't malloc the whole compressed result when writing out objects

Merge branch 'dp/read-not-mmap-small-loose-object'Junio C Hamano Tue, 2 Mar 2010 20:44:08 +0000 (12:44 -0800)

Merge branch 'dp/read-not-mmap-small-loose-object'

* dp/read-not-mmap-small-loose-object:
hash-object: don't use mmap() for small files

Merge branch 'jn/makedepend'Junio C Hamano Tue, 2 Mar 2010 20:44:08 +0000 (12:44 -0800)

Merge branch 'jn/makedepend'

* jn/makedepend:
Makefile: clarify definition of TEST_OBJS
Makefile: always remove .depend directories on 'make clean'
Makefile: tuck away generated makefile fragments in .depend
Teach Makefile to check header dependencies
Makefile: list standalone program object files in PROGRAM_OBJS
Makefile: lazily compute header dependencies
Makefile: list generated object files in OBJECTS
Makefile: disable default implicit rules
Makefile: rearrange dependency rules
Makefile: transport.o depends on branch.h now
Makefile: drop dependency on $(wildcard */*.h)
Makefile: clean up http-walker.o dependency rules
Makefile: remove wt-status.h from LIB_H
Makefile: make sure test helpers are rebuilt when headers change
Makefile: add missing header file dependencies

Conflicts:
Makefile

Merge branch 'jc/maint-status-preload'Junio C Hamano Tue, 2 Mar 2010 20:44:07 +0000 (12:44 -0800)

Merge branch 'jc/maint-status-preload'

* jc/maint-status-preload:
status: preload index to optimize lstat(2) calls

Merge branch 'gf/maint-sh-setup-nongit-ok'Junio C Hamano Tue, 2 Mar 2010 20:44:07 +0000 (12:44 -0800)

Merge branch 'gf/maint-sh-setup-nongit-ok'

* gf/maint-sh-setup-nongit-ok:
require_work_tree broken with NONGIT_OK

Merge branch 'jh/maint-submodule-status-in-void'Junio C Hamano Tue, 2 Mar 2010 20:44:07 +0000 (12:44 -0800)

Merge branch 'jh/maint-submodule-status-in-void'

* jh/maint-submodule-status-in-void:
submodule summary: Don't barf when invoked in an empty repo

Merge branch 'hm/imap-send-cram-md5'Junio C Hamano Tue, 2 Mar 2010 20:44:06 +0000 (12:44 -0800)

Merge branch 'hm/imap-send-cram-md5'

* hm/imap-send-cram-md5:
imap-send: support CRAM-MD5 authentication

Merge branch 'ml/color-when'Junio C Hamano Tue, 2 Mar 2010 20:44:06 +0000 (12:44 -0800)

Merge branch 'ml/color-when'

* ml/color-when:
Add an optional argument for --color options

Merge branch 'ac/cvsimport-revision-mapping'Junio C Hamano Tue, 2 Mar 2010 20:44:06 +0000 (12:44 -0800)

Merge branch 'ac/cvsimport-revision-mapping'

* ac/cvsimport-revision-mapping:
cvsimport: new -R option: generate .git/cvs-revisions mapping

Merge branch 'jc/grep-author-all-match-implicit'Junio C Hamano Tue, 2 Mar 2010 20:44:06 +0000 (12:44 -0800)

Merge branch 'jc/grep-author-all-match-implicit'

* jc/grep-author-all-match-implicit:
"log --author=me --grep=it" should find intersection, not union

fallback SSH_ASKPASS when GIT_ASKPASS not setFrank Li Tue, 2 Mar 2010 11:52:11 +0000 (19:52 +0800)

fallback SSH_ASKPASS when GIT_ASKPASS not set

If GIT_ASKPASS is not set and SSH_ASKPASS set, GIT_ASKPASS will
use SSH_ASKPASS.

Signed-off-by: Frank Li <lznuaa@gmail.com>
Signed-off-by: Junio C Hamano <gitster@pobox.com>

gitweb: Fix project-specific feature override behaviorJakub Narebski Mon, 1 Mar 2010 21:51:34 +0000 (22:51 +0100)

gitweb: Fix project-specific feature override behavior

This commit fixes a bug in processing project-specific override in
a situation when there is no project, e.g. for the projects list page.

When 'snapshot' feature had project specific config override enabled
by putting
$feature{'snapshot'}{'override'} = 1;

(or equivalent) in $GITWEB_CONFIG, and when viewing toplevel gitweb
page, which means the projects list page (to be more exact this
happens for any project-less action), gitweb would put the following
Perl warnings in error log:

gitweb.cgi: Use of uninitialized value $git_dir in concatenation (.) or string at gitweb.cgi line 2065.
fatal: error processing config file(s)
gitweb.cgi: Use of uninitialized value $git_dir in concatenation (.) or string at gitweb.cgi line 2221.
gitweb.cgi: Use of uninitialized value $git_dir in concatenation (.) or string at gitweb.cgi line 2218.

The problem is in the following fragment of code:

# path to the current git repository
our $git_dir;
$git_dir = "$projectroot/$project" if $project;

# list of supported snapshot formats
our @snapshot_fmts = gitweb_get_feature('snapshot');
@snapshot_fmts = filter_snapshot_fmts(@snapshot_fmts);

For the toplevel gitweb page, which is the list of projects, $project is not
defined, therefore neither is $git_dir. gitweb_get_feature() subroutine
calls git_get_project_config() if project specific override is turned
on... but we don't have project here.

Those errors mentioned above occur in the following fragment of code in
git_get_project_config():

# get config
if (!defined $config_file ||
$config_file ne "$git_dir/config") {
%config = git_parse_project_config('gitweb');
$config_file = "$git_dir/config";
}

git_parse_project_config() calls git_cmd() which has '--git-dir='.$git_dir

There are (at least) three possible solutions:
1. Harden gitweb_get_feature() so that it doesn't call
git_get_project_config() if $project (and therefore $git_dir) is not
defined; there is no project for project specific config.
2. Harden git_get_project_config() like you did in your fix, returning early
if $git_dir is not defined.
3. Harden git_cmd() so that it doesn't add "--git-dir=$git_dir" if $git_dir
is not defined, and change git_get_project_config() so that it doesn't
even try to access $git_dir if it is not defined.

This commit implements both 1.) and 2.), i.e. gitweb_get_feature() doesn't
call project-specific override if $git_dir is not defined (if there is no
project), and git_get_project_config() returns early if $git_dir is not
defined.

Add a test for this bug to t/t9500-gitweb-standalone-no-errors.sh test.

Reported-by: Eli Barzilay <eli@barzilay.org>
Signed-off-by: Jakub Narebski <jnareb@gmail.com>
Signed-off-by: Junio C Hamano <gitster@pobox.com>