Code

git.git
14 years agoMerge branch 'jl/maint-submodule-gitfile-awareness'
Junio C Hamano [Sat, 10 Apr 2010 19:13:46 +0000 (12:13 -0700)]
Merge branch 'jl/maint-submodule-gitfile-awareness'

* jl/maint-submodule-gitfile-awareness:
  Teach diff --submodule and status to handle .git files in submodules

14 years agoTeach diff --submodule and status to handle .git files in submodules
Jens Lehmann [Sat, 10 Apr 2010 17:01:12 +0000 (19:01 +0200)]
Teach diff --submodule and status to handle .git files in submodules

The simple test for an existing .git directory gives an incorrect result
if .git is a file that records "gitdir: overthere". So for submodules that
use a .git file, "git status" and the diff family - when the "--submodule"
option is given - did assume the submodule was not populated at all when
a .git file was used, thus generating wrong output or no output at all.

This is fixed by using read_gitfile_gently() to get the correct location
of the .git directory. While at it, is_submodule_modified() was cleaned up
to use the "dir" member of "struct child_process" instead of setting the
GIT_WORK_TREE and GIT_DIR environment variables.

Signed-off-by: Jens Lehmann <Jens.Lehmann@web.de>
Signed-off-by: Junio C Hamano <gitster@pobox.com>
14 years agoMerge branch 'maint'
Junio C Hamano [Sat, 10 Apr 2010 05:43:18 +0000 (22:43 -0700)]
Merge branch 'maint'

* maint:
  Let check_preimage() use memset() to initialize "struct checkout"
  fetch/push: fix usage strings

14 years agoLet check_preimage() use memset() to initialize "struct checkout"
Jens Lehmann [Fri, 9 Apr 2010 20:08:35 +0000 (22:08 +0200)]
Let check_preimage() use memset() to initialize "struct checkout"

Every code site except check_preimage() uses either memset() or declares
a static instance of "struct checkout" to achieve proper initialization.
Lets use memset() instead of explicit initialization of all members here
too to be on the safe side in case this structure is expanded someday.

Signed-off-by: Jens Lehmann <Jens.Lehmann@web.de>
Signed-off-by: Junio C Hamano <gitster@pobox.com>
14 years agoMerge branch 'ef/maint-empty-commit-log' into maint
Junio C Hamano [Sat, 10 Apr 2010 05:38:53 +0000 (22:38 -0700)]
Merge branch 'ef/maint-empty-commit-log' into maint

* ef/maint-empty-commit-log:
  rev-list: fix --pretty=oneline with empty message

14 years agoMerge branch 'jc/conflict-marker-size' into maint
Junio C Hamano [Sat, 10 Apr 2010 05:38:34 +0000 (22:38 -0700)]
Merge branch 'jc/conflict-marker-size' into maint

* jc/conflict-marker-size:
  diff --check: honor conflict-marker-size attribute

14 years agoMerge branch 'sp/maint-http-backend-die-triggers-die-recursively' into maint
Junio C Hamano [Sat, 10 Apr 2010 05:38:16 +0000 (22:38 -0700)]
Merge branch 'sp/maint-http-backend-die-triggers-die-recursively' into maint

* sp/maint-http-backend-die-triggers-die-recursively:
  http-backend: Don't infinite loop during die()

14 years agoMerge branch 'mg/maint-send-email-lazy-editor' into maint
Junio C Hamano [Sat, 10 Apr 2010 05:23:04 +0000 (22:23 -0700)]
Merge branch 'mg/maint-send-email-lazy-editor' into maint

* mg/maint-send-email-lazy-editor:
  send-email: lazily assign editor variable

14 years agoMerge branch 'rr/imap-send-unconfuse-from-line' into maint
Junio C Hamano [Sat, 10 Apr 2010 05:22:44 +0000 (22:22 -0700)]
Merge branch 'rr/imap-send-unconfuse-from-line' into maint

* rr/imap-send-unconfuse-from-line:
  imap-send: Remove limitation on message body

14 years agoMerge branch 'rb/maint-python-path' into maint
Junio C Hamano [Sat, 10 Apr 2010 05:22:19 +0000 (22:22 -0700)]
Merge branch 'rb/maint-python-path' into maint

* rb/maint-python-path:
  Correct references to /usr/bin/python which does not exist on FreeBSD

14 years agoMerge branch 'gh/maint-stash-show-error-message' into maint
Junio C Hamano [Sat, 10 Apr 2010 05:22:14 +0000 (22:22 -0700)]
Merge branch 'gh/maint-stash-show-error-message' into maint

* gh/maint-stash-show-error-message:
  Improve error messages from 'git stash show'

14 years agoMerge branch 'mg/mailmap-update' into maint
Junio C Hamano [Sat, 10 Apr 2010 05:22:06 +0000 (22:22 -0700)]
Merge branch 'mg/mailmap-update' into maint

* mg/mailmap-update:
  .mailmap: Entries for Alex Bennée, Deskin Miller, Vitaly "_Vi" Shukela

14 years agoMerge branch 'bc/maint-daemon-sans-ss-family' into maint
Junio C Hamano [Sat, 10 Apr 2010 05:22:00 +0000 (22:22 -0700)]
Merge branch 'bc/maint-daemon-sans-ss-family' into maint

* bc/maint-daemon-sans-ss-family:
  daemon.c: avoid accessing ss_family member of struct sockaddr_storage

14 years agofetch/push: fix usage strings
Tay Ray Chuan [Sat, 10 Apr 2010 02:50:19 +0000 (10:50 +0800)]
fetch/push: fix usage strings

 - use "<options>" instead of just "options".
 - use "[<repository> [<refspec>...]]" to indicate that <repository> and
   <refspec> are optional, and that <refspec> cannot be specified
   without specifying <repository>.

Note that when called without specifying <repository> (eg. "git fetch
-f"), it is accurate to say that the "git fetch [<options>]
[<repository> ...]" case takes precedence over "git fetch [<options>]
<group>".

Signed-off-by: Tay Ray Chuan <rctay89@gmail.com>
Signed-off-by: Junio C Hamano <gitster@pobox.com>
14 years agoMerge branch 'rc/maint-reflog-msg-for-forced-branch'
Junio C Hamano [Sat, 10 Apr 2010 03:42:10 +0000 (20:42 -0700)]
Merge branch 'rc/maint-reflog-msg-for-forced-branch'

* rc/maint-reflog-msg-for-forced-branch:
  branch: say "Reset to" in reflog entries for 'git branch -f' operations

Conflicts:
builtin-branch.c

14 years agobranch: say "Reset to" in reflog entries for 'git branch -f' operations
Tay Ray Chuan [Fri, 9 Apr 2010 12:38:18 +0000 (20:38 +0800)]
branch: say "Reset to" in reflog entries for 'git branch -f' operations

In 5f856dd (fix reflog entries for "git-branch"), it is mentioned that
'git branch -f' is intended to be equivalent to 'git reset'. Since we
usually say "reset to <commit>" in the git-reset Documentation and
elsewhere, it would make sense to say "Reset to" here as well, instead
of "Reset from" previously.

Signed-off-by: Tay Ray Chuan <rctay89@gmail.com>
Signed-off-by: Junio C Hamano <gitster@pobox.com>
14 years agoMerge early parts of jk/cached-textconv
Junio C Hamano [Fri, 9 Apr 2010 06:31:27 +0000 (23:31 -0700)]
Merge early parts of jk/cached-textconv

14 years agodiff.c: work around pointer constness warnings
Junio C Hamano [Fri, 9 Apr 2010 06:30:49 +0000 (23:30 -0700)]
diff.c: work around pointer constness warnings

The textconv leak fix introduced two invocations of free() to release
memory pointed by "const char *", which get annoying compiler warning.

14 years agoMerge branch 'maint'
Junio C Hamano [Fri, 9 Apr 2010 06:27:23 +0000 (23:27 -0700)]
Merge branch 'maint'

* maint:
  docs: clarify "branch -l"

14 years agodocs: clarify "branch -l"
Jeff King [Thu, 8 Apr 2010 19:49:08 +0000 (15:49 -0400)]
docs: clarify "branch -l"

This option is mostly useless these days because we turn on
reflogs by default in non-bare repos.

Signed-off-by: Jeff King <peff@peff.net>
Signed-off-by: Junio C Hamano <gitster@pobox.com>
14 years agoMerge branch 'mg/notes-reflog'
Junio C Hamano [Wed, 7 Apr 2010 22:34:09 +0000 (15:34 -0700)]
Merge branch 'mg/notes-reflog'

* mg/notes-reflog:
  refs.c: Write reflogs for notes just like for branch heads
  t3301-notes: Test the creation of reflog entries

14 years agoMerge branch 'jn/mailinfo-scissors'
Junio C Hamano [Wed, 7 Apr 2010 22:34:06 +0000 (15:34 -0700)]
Merge branch 'jn/mailinfo-scissors'

* jn/mailinfo-scissors:
  Teach mailinfo %< as an alternative scissors mark

14 years agofix typos and grammar in 1.7.1 draft release notes
Jeff King [Wed, 7 Apr 2010 20:57:11 +0000 (16:57 -0400)]
fix typos and grammar in 1.7.1 draft release notes

Signed-off-by: Jeff King <peff@peff.net>
Signed-off-by: Junio C Hamano <gitster@pobox.com>
14 years agonotes.h: declare bit field as unsigned to silence compiler complaints
Brandon Casey [Tue, 6 Apr 2010 15:11:44 +0000 (10:11 -0500)]
notes.h: declare bit field as unsigned to silence compiler complaints

The IRIX MIPSPro compiler complains like this:

   cc-1107 c99: WARNING File = notes.h, Line = 215
     A signed bit field has a length of 1 bit.

           int suppress_default_notes:1;
               ^

'unsigned' is what was intended, so lets make it so.

Signed-off-by: Brandon Casey <casey@nrlssc.navy.mil>
Signed-off-by: Junio C Hamano <gitster@pobox.com>
14 years agoGit 1.7.1-rc0 v1.7.1-rc0
Junio C Hamano [Tue, 6 Apr 2010 22:00:01 +0000 (15:00 -0700)]
Git 1.7.1-rc0

Signed-off-by: Junio C Hamano <gitster@pobox.com>
14 years agoMerge branch 'da/maint-python-startup'
Junio C Hamano [Tue, 6 Apr 2010 21:50:47 +0000 (14:50 -0700)]
Merge branch 'da/maint-python-startup'

* da/maint-python-startup:
  Makefile: Remove usage of deprecated Python "has_key" method

14 years agoMerge branch 'ic/bash-completion-rpm'
Junio C Hamano [Tue, 6 Apr 2010 21:50:47 +0000 (14:50 -0700)]
Merge branch 'ic/bash-completion-rpm'

* ic/bash-completion-rpm:
  RPM spec: include bash completion support

14 years agoMerge branch 'sb/fmt-merge-msg'
Junio C Hamano [Tue, 6 Apr 2010 21:50:46 +0000 (14:50 -0700)]
Merge branch 'sb/fmt-merge-msg'

* sb/fmt-merge-msg:
  fmt-merge-msg: hide summary option
  fmt-merge-msg: remove custom string_list implementation
  string-list: add unsorted_string_list_lookup()
  fmt-merge-msg: use pretty.c routines
  t6200: test fmt-merge-msg more
  t6200: modernize with test_tick
  fmt-merge-msg: be quiet if nothing to merge

14 years agoMerge branch 'jc/conflict-marker-size'
Junio C Hamano [Tue, 6 Apr 2010 21:50:46 +0000 (14:50 -0700)]
Merge branch 'jc/conflict-marker-size'

* jc/conflict-marker-size:
  diff --check: honor conflict-marker-size attribute

14 years agoMerge branch 'ef/maint-empty-commit-log'
Junio C Hamano [Tue, 6 Apr 2010 21:50:46 +0000 (14:50 -0700)]
Merge branch 'ef/maint-empty-commit-log'

* ef/maint-empty-commit-log:
  rev-list: fix --pretty=oneline with empty message

14 years agoMerge branch 'sg/bash-completion'
Junio C Hamano [Tue, 6 Apr 2010 21:50:45 +0000 (14:50 -0700)]
Merge branch 'sg/bash-completion'

* sg/bash-completion:
  bash: completion for gitk aliases
  bash: support user-supplied completion scripts for aliases
  bash: support user-supplied completion scripts for user's git commands
  bash: improve aliased command recognition

14 years agoRevert "Link against libiconv on IRIX"
Junio C Hamano [Mon, 5 Apr 2010 17:16:11 +0000 (10:16 -0700)]
Revert "Link against libiconv on IRIX"

Brandon Casey reports:

    Subject: Re: [PATCH] Link against libiconv on IRIX
    Date: Mon, 05 Apr 2010 11:45:32 -0500
    Message-Id: <1UypQMCHLT57SnjSQIM66RTkLalsvavG8xXoQJv4rEQ@cipher.nrlssc.navy.mil>

    This breaks compilation on IRIX 6.5.29m for me since there
    is no separate libiconv.so.

    What version of IRIX are you using?

    On my system, even the iconv utility doesn't link against
    a libiconv shared object.  It seems the iconv functionality is in libc.

       # ldd /usr/bin/iconv
       libc.so.1  =>    /usr/lib32/libc.so.1

    Could it be that you are using a third party iconv library?
    I've experienced this on another system and the problem was related
    to curl.  In that case, curl was linked against an external iconv and
    not the native library, so if I tried to build with curl support, I had
    to also build against the external iconv library.

While we wait for an improved solution, revert the regression caused by
21704227904b51197976c61c595b52d807677533.

14 years agoMerge branch 'maint'
Junio C Hamano [Sun, 4 Apr 2010 17:23:21 +0000 (10:23 -0700)]
Merge branch 'maint'

* maint:
  pack-protocol.txt: fix pkt-line lengths
  pack-protocol.txt: fix spelling

14 years agopack-protocol.txt: fix pkt-line lengths
Tay Ray Chuan [Sun, 4 Apr 2010 13:12:17 +0000 (21:12 +0800)]
pack-protocol.txt: fix pkt-line lengths

Previously, the lengths were 4-bytes short. Fix it such that the lengths
reflect the total length of the pkt-line, as per spec.

Signed-off-by: Tay Ray Chuan <rctay89@gmail.com>
Signed-off-by: Junio C Hamano <gitster@pobox.com>
14 years agopack-protocol.txt: fix spelling
Tay Ray Chuan [Sun, 4 Apr 2010 13:12:16 +0000 (21:12 +0800)]
pack-protocol.txt: fix spelling

s/paramater/parameter/.

Signed-off-by: Tay Ray Chuan <rctay89@gmail.com>
Signed-off-by: Junio C Hamano <gitster@pobox.com>
14 years agoTeach mailinfo %< as an alternative scissors mark
Jonathan Nieder [Sat, 3 Apr 2010 19:52:17 +0000 (14:52 -0500)]
Teach mailinfo %< as an alternative scissors mark

Handle perforations found “in the wild” more robustly by recognizing
“%<” as an alternative scissors mark.

This feature is only meant to support old habits.  Discourage new use
of the percent-based version by only documenting the 8< symbol so new
users’ perforations can still be recognized by old versions of Git.

Signed-off-by: Jonathan Nieder <jrnieder@gmail.com>
Signed-off-by: Junio C Hamano <gitster@pobox.com>
14 years agoMerge branch 'mb/rebase-i-no-ff'
Junio C Hamano [Sat, 3 Apr 2010 19:28:44 +0000 (12:28 -0700)]
Merge branch 'mb/rebase-i-no-ff'

* mb/rebase-i-no-ff:
  Teach rebase the --no-ff option.

Conflicts:
git-rebase--interactive.sh
t/t3404-rebase-interactive.sh

14 years agoMerge branch 'sp/maint-http-backend-die-triggers-die-recursively'
Junio C Hamano [Sat, 3 Apr 2010 19:28:43 +0000 (12:28 -0700)]
Merge branch 'sp/maint-http-backend-die-triggers-die-recursively'

* sp/maint-http-backend-die-triggers-die-recursively:
  http-backend: Don't infinite loop during die()

14 years agoMerge branch 'rr/imap-send-unconfuse-from-line'
Junio C Hamano [Sat, 3 Apr 2010 19:28:42 +0000 (12:28 -0700)]
Merge branch 'rr/imap-send-unconfuse-from-line'

* rr/imap-send-unconfuse-from-line:
  imap-send: Remove limitation on message body

14 years agoMerge branch 'mg/use-default-abbrev-length-in-rev-list'
Junio C Hamano [Sat, 3 Apr 2010 19:28:42 +0000 (12:28 -0700)]
Merge branch 'mg/use-default-abbrev-length-in-rev-list'

* mg/use-default-abbrev-length-in-rev-list:
  rev-list: use default abbrev length when abbrev-commit is in effect

14 years agoMerge branch 'mg/maint-send-email-lazy-editor'
Junio C Hamano [Sat, 3 Apr 2010 19:28:42 +0000 (12:28 -0700)]
Merge branch 'mg/maint-send-email-lazy-editor'

* mg/maint-send-email-lazy-editor:
  send-email: lazily assign editor variable

14 years agoMerge branch 'rb/maint-python-path'
Junio C Hamano [Sat, 3 Apr 2010 19:28:41 +0000 (12:28 -0700)]
Merge branch 'rb/maint-python-path'

* rb/maint-python-path:
  Correct references to /usr/bin/python which does not exist on FreeBSD

14 years agoMerge branch 'jn/merge-diff3-label'
Junio C Hamano [Sat, 3 Apr 2010 19:28:41 +0000 (12:28 -0700)]
Merge branch 'jn/merge-diff3-label'

* jn/merge-diff3-label:
  merge-recursive: add a label for ancestor
  cherry-pick, revert: add a label for ancestor
  revert: clarify label on conflict hunks
  compat: add mempcpy()
  checkout -m --conflict=diff3: add a label for ancestor
  merge_trees(): add ancestor label parameter for diff3-style output
  merge_file(): add comment explaining behavior wrt conflict style
  checkout --conflict=diff3: add a label for ancestor
  ll_merge(): add ancestor label parameter for diff3-style output
  merge-file --diff3: add a label for ancestor
  xdl_merge(): move file1 and file2 labels to xmparam structure
  xdl_merge(): add optional ancestor label to diff3-style output
  tests: document cherry-pick behavior in face of conflicts
  tests: document format of conflicts from checkout -m

Conflicts:
builtin/revert.c

14 years agoMerge branch 'ef/cherry-abbrev'
Junio C Hamano [Sat, 3 Apr 2010 19:28:40 +0000 (12:28 -0700)]
Merge branch 'ef/cherry-abbrev'

* ef/cherry-abbrev:
  ls: remove redundant logic
  cherry: support --abbrev option

14 years agoMerge branch 'bw/template-tool-buildconfig'
Junio C Hamano [Sat, 3 Apr 2010 19:28:40 +0000 (12:28 -0700)]
Merge branch 'bw/template-tool-buildconfig'

* bw/template-tool-buildconfig:
  Modernize git calling conventions in hook templates
  Make templates honour SHELL_PATH and PERL_PATH

14 years agoMerge branch 'mg/mailmap-update'
Junio C Hamano [Sat, 3 Apr 2010 19:28:40 +0000 (12:28 -0700)]
Merge branch 'mg/mailmap-update'

* mg/mailmap-update:
  .mailmap: Entries for Alex Bennée, Deskin Miller, Vitaly "_Vi" Shukela

14 years agoMerge branch 'bc/t5505-fix'
Junio C Hamano [Sat, 3 Apr 2010 19:28:40 +0000 (12:28 -0700)]
Merge branch 'bc/t5505-fix'

* bc/t5505-fix:
  t/t5505-remote.sh: escape * to prevent interpretation by shell as glob
  t5505: add missing &&
  t5505: remove unnecessary subshell invocations

14 years agoMerge branch 'gh/maint-stash-show-error-message'
Junio C Hamano [Sat, 3 Apr 2010 19:28:40 +0000 (12:28 -0700)]
Merge branch 'gh/maint-stash-show-error-message'

* gh/maint-stash-show-error-message:
  Improve error messages from 'git stash show'

14 years agoMerge branch 'rs/threaded-grep-context'
Junio C Hamano [Sat, 3 Apr 2010 19:28:39 +0000 (12:28 -0700)]
Merge branch 'rs/threaded-grep-context'

* rs/threaded-grep-context:
  grep: enable threading for context line printing

Conflicts:
grep.c

14 years agoMerge branch 'bc/maint-daemon-sans-ss-family'
Junio C Hamano [Sat, 3 Apr 2010 19:28:39 +0000 (12:28 -0700)]
Merge branch 'bc/maint-daemon-sans-ss-family'

* bc/maint-daemon-sans-ss-family:
  daemon.c: avoid accessing ss_family member of struct sockaddr_storage

14 years agoMerge branch 'bc/acl-test'
Junio C Hamano [Sat, 3 Apr 2010 19:28:39 +0000 (12:28 -0700)]
Merge branch 'bc/acl-test'

* bc/acl-test:
  t/t1304: make a second colon optional in the mask ACL check
  t/t1304: set the ACL effective rights mask
  t/t1304: use 'test -r' to test readability rather than looking at mode bits
  t/t1304: set the Default ACL base entries
  t/t1304: avoid -d option to setfacl

14 years agoMerge branch 'ja/send-email-ehlo'
Junio C Hamano [Sat, 3 Apr 2010 19:28:39 +0000 (12:28 -0700)]
Merge branch 'ja/send-email-ehlo'

* ja/send-email-ehlo:
  git-send-email.perl - try to give real name of the calling host to HELO/EHLO
  git-send-email.perl: add option --smtp-debug
  git-send-email.perl: improve error message in send_message()

14 years agoMerge branch 'do/rebase-i-arbitrary'
Junio C Hamano [Sat, 3 Apr 2010 19:28:38 +0000 (12:28 -0700)]
Merge branch 'do/rebase-i-arbitrary'

* do/rebase-i-arbitrary:
  rebase--interactive: don't require what's rebased to be a branch

Conflicts:
t/t3404-rebase-interactive.sh

14 years agoMerge branch 'ak/everyday-git'
Junio C Hamano [Sat, 3 Apr 2010 19:28:38 +0000 (12:28 -0700)]
Merge branch 'ak/everyday-git'

* ak/everyday-git:
  everyday: fsck and gc are not everyday operations

14 years agoMakefile: future-proof Cygwin version check
Jonathan Nieder [Sat, 3 Apr 2010 07:47:00 +0000 (02:47 -0500)]
Makefile: future-proof Cygwin version check

Tweak the condition that detects old Cygwin versions to not include
versions such as 1.8, 1.11, and 2.1.

Signed-off-by: Jonathan Nieder <jrnieder@gmail.com>
Signed-off-by: Junio C Hamano <gitster@pobox.com>
14 years agoFix _XOPEN_SOURCE problem on DragonFly
YONETANI Tomokazu [Fri, 2 Apr 2010 07:52:09 +0000 (16:52 +0900)]
Fix _XOPEN_SOURCE problem on DragonFly

As on FreeBSD, defining _XOPEN_SOURCE to 600 on DragonFly BSD 2.4-RELEASE
or later hides symbols from programs, which leads to implicit declaration
of functions, making the return value to be assumed an int.  On architectures
where sizeof(int) < sizeof(void *), this can cause unexpected behaviors or
crashes.
This change won't affect other OSes unless they define __DragonFly__ macro,
or older versions of DragonFly BSD as the current git code doesn't rely on
the features only available with _XOPEN_SOURCE set to 600 on DragonFly.

Signed-off-by: YONETANI Tomokazu <y0netan1@dragonflybsd.org>
Signed-off-by: Junio C Hamano <gitster@pobox.com>
14 years agobuiltin/commit: remove unnecessary variable definition
Markus Heidelberg [Fri, 2 Apr 2010 12:27:19 +0000 (14:27 +0200)]
builtin/commit: remove unnecessary variable definition

The file descriptor is already defined at the beginning of the function.

Signed-off-by: Markus Heidelberg <markus.heidelberg@web.de>
Signed-off-by: Junio C Hamano <gitster@pobox.com>
14 years agobuiltin/commit: fix duplicated sentence in a comment
Markus Heidelberg [Fri, 2 Apr 2010 12:27:18 +0000 (14:27 +0200)]
builtin/commit: fix duplicated sentence in a comment

Signed-off-by: Markus Heidelberg <markus.heidelberg@web.de>
Signed-off-by: Junio C Hamano <gitster@pobox.com>
14 years agoIntegrate version 3 ciabot scripts into contrib/.
Eric Raymond [Fri, 2 Apr 2010 10:10:11 +0000 (06:10 -0400)]
Integrate version 3 ciabot scripts into contrib/.

These have been extensively live-tested in the last week. The version 2
ciabot.sh maintainer has passed the baton to me; ciabot.py is original.

Signed-off-by: Eric S. Raymond <esr@thyrsus.com>
Signed-off-by: Junio C Hamano <gitster@pobox.com>
14 years agofix textconv leak in emit_rewrite_diff
Jeff King [Fri, 2 Apr 2010 00:04:14 +0000 (20:04 -0400)]
fix textconv leak in emit_rewrite_diff

We correctly free() for the normal diff case, but leak for
rewrite diffs.

Signed-off-by: Jeff King <peff@peff.net>
Signed-off-by: Junio C Hamano <gitster@pobox.com>
14 years agofix const-correctness of write_sha1_file
Jeff King [Fri, 2 Apr 2010 00:03:18 +0000 (20:03 -0400)]
fix const-correctness of write_sha1_file

These should take const buffers as input data, but zlib's
next_in pointer is not const-correct. Let's fix it at the
zlib level, though, so the cast happens in one obvious
place. This should be safe, as a similar cast is used in
zlib's example code for a const array.

Signed-off-by: Jeff King <peff@peff.net>
Signed-off-by: Junio C Hamano <gitster@pobox.com>
14 years agoMakefile: update defaults for modern Cygwin
Eric Blake [Thu, 1 Apr 2010 22:43:54 +0000 (16:43 -0600)]
Makefile: update defaults for modern Cygwin

Now that Cygwin 1.7.x has enabled lots of new features, and Cygwin 1.5
is no longer actively supported by the Cygwin mailing lists, we might
as well update the defaults to cater to those new features.

NO_TRUSTABLE_FILEMODE is only necessary on FAT drives; the Cygwin
community recommends NTFS drives, but there is still too much use
for FAT to switch the default.  Likewise, UNRELIABLE_FSTAT is probably
file-system specific, but worth keeping unchanged.

This commit does not change the default for NO_MMAP, although definitive
proof of whether this option is necessary is lacking.

Signed-off-by: Eric Blake <eblake@redhat.com>
Signed-off-by: Junio C Hamano <gitster@pobox.com>
14 years agoSync with 1.7.0.4
Junio C Hamano [Wed, 31 Mar 2010 22:14:27 +0000 (15:14 -0700)]
Sync with 1.7.0.4

Signed-off-by: Junio C Hamano <gitster@pobox.com>
14 years agoGit 1.7.0.4 v1.7.0.4
Junio C Hamano [Wed, 31 Mar 2010 22:12:08 +0000 (15:12 -0700)]
Git 1.7.0.4

Signed-off-by: Junio C Hamano <gitster@pobox.com>
14 years agoMerge branch 'jc/maint-refs-dangling' into maint
Junio C Hamano [Wed, 31 Mar 2010 22:09:32 +0000 (15:09 -0700)]
Merge branch 'jc/maint-refs-dangling' into maint

* jc/maint-refs-dangling:
  refs: ref entry with NULL sha1 is can be a dangling symref

14 years agoDocumentation: show-ref <pattern>s are optional
Holger Weiß [Mon, 29 Mar 2010 11:02:37 +0000 (13:02 +0200)]
Documentation: show-ref <pattern>s are optional

Specifying one or more <pattern> parameters is optional when calling
show-ref, so mark them as such using brackets in the manual.

Signed-off-by: Holger Weiß <holger@zedat.fu-berlin.de>
Signed-off-by: Junio C Hamano <gitster@pobox.com>
14 years agoLink against libiconv on IRIX
Holger Weiß [Mon, 29 Mar 2010 10:57:48 +0000 (12:57 +0200)]
Link against libiconv on IRIX

On IRIX, "-liconv" must be added to the linker command line in order to
get iconv(3) support; set the according Makefile variable appropriately.

Signed-off-by: Holger Weiß <holger@zedat.fu-berlin.de>
Signed-off-by: Junio C Hamano <gitster@pobox.com>
14 years agoDon't redefine htonl and ntohl on big-endian
Holger Weiß [Mon, 29 Mar 2010 10:22:19 +0000 (12:22 +0200)]
Don't redefine htonl and ntohl on big-endian

Since commit 0fcabdeb52b79775173d009ccc179db104dfbb66, compat/bswap.h
redefined htonl and ntohl to bswap32 not only if bswap32 has been
defined earlier in compat/bswap.h (which is done only on selected
platforms), but also if bswap32 has been defined anywhere else.  This
broke Git at least for NetBSD systems running on big-endian machines
(where ntohl and htonl should, of course, be NOOPs), since NetBSD
defines a bswap32 macro in the system headers.

So, we now undefine any previously defined bswap32 in compat/bswap.h
before defining our own.

Signed-off-by: Holger Weiß <holger@zedat.fu-berlin.de>
Signed-off-by: Junio C Hamano <gitster@pobox.com>
14 years agogitweb: git_get_project_config requires only $git_dir, not also $project
Jakub Narebski [Sat, 27 Mar 2010 19:26:59 +0000 (20:26 +0100)]
gitweb: git_get_project_config requires only $git_dir, not also $project

Fix overeager early return in git_get_project_config, introduced in 9be3614
(gitweb: Fix project-specific feature override behavior, 2010-03-01).  When
git_get_project_config is called from projects list page via
git_get_project_owner($path) etc., it is called with $git_dir defined (in
git_get_project_owner($path) etc.), but $project variable is not defined.
git_get_project_config doesn't use $project variable anyway.

Reported-by: Tobias Heinlein <keytoaster@gentoo.org>
Signed-off-by: Jakub Narebski <jnareb@gmail.com>
Signed-off-by: Junio C Hamano <gitster@pobox.com>
14 years agoUpdated the usage string of git reset
Jan Stępień [Wed, 31 Mar 2010 09:24:19 +0000 (11:24 +0200)]
Updated the usage string of git reset

Make git reset usage string reflect the command's behaviour and contents of
the man page.

Signed-off-by: Jan Stępień <jstepien@users.sourceforge.net>
Signed-off-by: Junio C Hamano <gitster@pobox.com>
14 years agoDocumentation: Clarify support for smart HTTP backend
Greg Bacon [Tue, 30 Mar 2010 17:20:57 +0000 (12:20 -0500)]
Documentation: Clarify support for smart HTTP backend

In the description of http.getanyfile, replace the vague "older Git
clients" with the earliest release whose client is able to use the
upload pack service.

Signed-off-by: Greg Bacon <gbacon@dbresearch.net>
Signed-off-by: Junio C Hamano <gitster@pobox.com>
14 years agoWindows: fix utime() for read-only files
Johannes Sixt [Tue, 30 Mar 2010 07:46:23 +0000 (09:46 +0200)]
Windows: fix utime() for read-only files

Starting with 5256b00 (Use git_mkstemp_mode instead of plain mkstemp to
create object files, 2010-02-22) utime() is invoked on read-only files.
This is not allowed on Windows and results in many warnings of the form

failed utime() on .git/objects/23/tmp_obj_VlgHlc: Permission denied

during a repack.  Fix it by making the file temporarily writable.

Signed-off-by: Johannes Sixt <j6t@kdbg.org>
Signed-off-by: Junio C Hamano <gitster@pobox.com>
14 years agodiff: fix textconv error zombies
Johannes Sixt [Tue, 30 Mar 2010 17:36:03 +0000 (19:36 +0200)]
diff: fix textconv error zombies

To make the code simpler, run_textconv lumps all of its
error checking into one conditional. However, the
short-circuit means that an error in reading will prevent us
from calling finish_command, leaving a zombie child.
Clean up properly after errors.

Based-on-work-by: Jeff King <peff@peff.net>
Signed-off-by: Johannes Sixt <j6t@kdbg.org>
Signed-off-by: Junio C Hamano <gitster@pobox.com>
14 years agoMerge branch 'maint'
Junio C Hamano [Tue, 30 Mar 2010 04:29:24 +0000 (21:29 -0700)]
Merge branch 'maint'

* maint:
  format-patch: Squelch 'fatal: Not a range." error

14 years agoformat-patch: Squelch 'fatal: Not a range." error
Kevin Ballard [Tue, 30 Mar 2010 02:46:38 +0000 (19:46 -0700)]
format-patch: Squelch 'fatal: Not a range." error

Don't output an error on `git format-patch --ignore-if-in-upstream HEAD`.
This matches the behavior of `git format-patch HEAD`.

Signed-off-by: Kevin Ballard <kevin@sb.org>
Signed-off-by: Junio C Hamano <gitster@pobox.com>
14 years agorefs.c: Write reflogs for notes just like for branch heads
Michael J Gruber [Mon, 29 Mar 2010 13:05:58 +0000 (15:05 +0200)]
refs.c: Write reflogs for notes just like for branch heads

The notes code intends to write reflog entries, but currently they are
not written because log_ref_write() checks for the refname path
explicitly.

Add refs/notes to the list of allowed paths so that notes references are
treated just like branch heads, i.e. according to core.logAllRefUpdates
and core.bare.

Signed-off-by: Michael J Gruber <git@drmicha.warpmail.net>
Acked-by: Johan Herland <johan@herland.net>
Signed-off-by: Junio C Hamano <gitster@pobox.com>
14 years agot3301-notes: Test the creation of reflog entries
Michael J Gruber [Mon, 29 Mar 2010 13:05:57 +0000 (15:05 +0200)]
t3301-notes: Test the creation of reflog entries

Test whether the notes code writes reflog entries. It intends to
(setting up the reflog messages) but currently does not.

Signed-off-by: Michael J Gruber <git@drmicha.warpmail.net>
Acked-by: Johan Herland <johan@herland.net>
Signed-off-by: Junio C Hamano <gitster@pobox.com>
14 years agoRPM spec: include bash completion support
Ian Ward Comfort [Fri, 26 Mar 2010 08:39:57 +0000 (01:39 -0700)]
RPM spec: include bash completion support

Include the bash completion routines from the contrib/ directory in our core
RPM, in the de facto standard location.

Signed-off-by: Ian Ward Comfort <icomfort@stanford.edu>
Acked-by: Ben Walton <bwalton@artsci.utoronto.ca>
Signed-off-by: Junio C Hamano <gitster@pobox.com>
14 years agoUpdate draft release notes to 1.7.1
Junio C Hamano [Mon, 29 Mar 2010 04:57:59 +0000 (21:57 -0700)]
Update draft release notes to 1.7.1

Signed-off-by: Junio C Hamano <gitster@pobox.com>
14 years agoMerge branch 'cc/cherry-pick-ff'
Junio C Hamano [Mon, 29 Mar 2010 04:52:28 +0000 (21:52 -0700)]
Merge branch 'cc/cherry-pick-ff'

* cc/cherry-pick-ff:
  revert: fix tiny memory leak in cherry-pick --ff
  rebase -i: use new --ff cherry-pick option
  Documentation: describe new cherry-pick --ff option
  cherry-pick: add tests for new --ff option
  revert: add --ff option to allow fast forward when cherry-picking
  builtin/merge: make checkout_fast_forward() non static
  parse-options: add parse_options_concat() to concat options

14 years agoMerge branch 'sb/notes-parse-opt'
Junio C Hamano [Mon, 29 Mar 2010 04:52:28 +0000 (21:52 -0700)]
Merge branch 'sb/notes-parse-opt'

* sb/notes-parse-opt:
  notes: rework subcommands and parse options

Conflicts:
builtin/notes.c

14 years agoMerge branch 'maint'
Junio C Hamano [Mon, 29 Mar 2010 04:52:18 +0000 (21:52 -0700)]
Merge branch 'maint'

* maint:
  Prepare for 1.7.0.4

Conflicts:
RelNotes

14 years agoMakefile: Remove usage of deprecated Python "has_key" method
David Aguilar [Sun, 28 Mar 2010 00:45:12 +0000 (17:45 -0700)]
Makefile: Remove usage of deprecated Python "has_key" method

"has_key" is a deprecated dictionary method in Python 2.6+.
Simplify the sys.path manipulation for installed scripts by
passing a default value to os.getenv() that takes a default
value to be used when the environment variable is missing.

SCRIPT_PYTHON is currently empty but this future-proofs us.
It also fixes things for users who maintain local git forks
with their own SCRIPT_PYTHON additions.

Old code replaced the first element of sys.path[] which is
typically '' (i.e. import library files relative to the script).
It is safer to prepend the extra library path instead.

Signed-off-by: David Aguilar <davvid@gmail.com>
Acked-by: Johan Herland <johan@herland.net>
Signed-off-by: Junio C Hamano <gitster@pobox.com>
14 years agorebase -i: make post-rewrite work for 'edit'
Thomas Rast [Sun, 28 Mar 2010 19:36:00 +0000 (21:36 +0200)]
rebase -i: make post-rewrite work for 'edit'

The post-rewrite support, in the form of the call to
'record_in_rewritten', was hidden in the arm where we have to record a
new commit for the user.  This meant that it was never invoked in the
case where the user has already amended the commit by herself.

[The test is designed to exercise both arms of the 'if' in question.]

Furthermore, recording the stopped-sha (the SHA1 of the commit before
the editing) suffered from a cut&paste error from die_with_patch and
used the wrong variable, hence it never recorded anything.

Noticed by Junio.

Signed-off-by: Thomas Rast <trast@student.ethz.ch>
Signed-off-by: Junio C Hamano <gitster@pobox.com>
14 years agoPrepare for 1.7.0.4
Junio C Hamano [Mon, 29 Mar 2010 04:32:25 +0000 (21:32 -0700)]
Prepare for 1.7.0.4

Signed-off-by: Junio C Hamano <gitster@pobox.com>
14 years agoMerge branch 'cp/add-u-pathspec' into maint
Junio C Hamano [Mon, 29 Mar 2010 04:21:42 +0000 (21:21 -0700)]
Merge branch 'cp/add-u-pathspec' into maint

* cp/add-u-pathspec:
  test for add with non-existent pathspec
  git add -u: die on unmatched pathspec

14 years agoMerge branch 'maint'
Junio C Hamano [Mon, 29 Mar 2010 00:42:58 +0000 (17:42 -0700)]
Merge branch 'maint'

* maint:
  t9350: fix careless use of "cd"
  difftool: Fix '--gui' when diff.guitool is unconfigured
  fast-export: don't segfault when marks file cannot be opened

14 years agot9350: fix careless use of "cd"
Junio C Hamano [Mon, 29 Mar 2010 00:42:11 +0000 (17:42 -0700)]
t9350: fix careless use of "cd"

Upon failure of any of these tests (or when a test that is marked as
expecting a failure is fixed), we will end up running later tests in
random places.

Signed-off-by: Junio C Hamano <gitster@pobox.com>
14 years agodifftool: Fix '--gui' when diff.guitool is unconfigured
David Aguilar [Sat, 27 Mar 2010 21:58:09 +0000 (14:58 -0700)]
difftool: Fix '--gui' when diff.guitool is unconfigured

When diff.guitool is unconfigured and "--gui" is specified
git-difftool dies with the following error message:

config diff.guitool: command returned error: 1

Catch the error so that the "--gui" flag is a no-op when
diff.guitool is unconfigured.

Signed-off-by: David Aguilar <davvid@gmail.com>
Signed-off-by: Junio C Hamano <gitster@pobox.com>
14 years agofast-export: don't segfault when marks file cannot be opened
Sverre Rabbelier [Sun, 28 Mar 2010 05:42:48 +0000 (00:42 -0500)]
fast-export: don't segfault when marks file cannot be opened

The error function only prints an error message, resulting in a
segfault if we later on try to fprintf to a NULL handle.

Fix this by using die_errno instead.

Signed-off-by: Sverre Rabbelier <srabbelier@gmail.com>
Signed-off-by: Junio C Hamano <gitster@pobox.com>
14 years agoimap-send: suppress warning about cleartext password with CRAM-MD5
Chris Webb [Sat, 27 Mar 2010 15:00:19 +0000 (15:00 +0000)]
imap-send: suppress warning about cleartext password with CRAM-MD5

If a CRAM-MD5 challenge-response is used to authenticate to the IMAP server,
git imap-send shouldn't warn about the password being sent in the clear.

Signed-off-by: Chris Webb <chris@arachsys.com>
Signed-off-by: Junio C Hamano <gitster@pobox.com>
14 years agosend-email: lazily assign editor variable
Michael J Gruber [Mon, 22 Mar 2010 16:12:53 +0000 (17:12 +0100)]
send-email: lazily assign editor variable

b4479f0 (add -i, send-email, svn, p4, etc: use "git var GIT_EDITOR",
2009-10-30) introduced the use of "git var GIT_EDITOR" to obtain the
preferred editor program, instead of reading environment variables
themselves.

However, "git var GIT_EDITOR" run without a tty (think "cron job") would
give a fatal error "Terminal is dumb, but EDITOR unset".  This is not a
problem for add-i, svn, p4 and callers of git_editor() defined in
git-sh-setup, as all of these call it just before launching the editor.
At that point, we know the caller wants to edit.

But send-email ran this near the beginning of the program, even if it is
not going to use any editor (e.g. run without --compose).  Fix this by
calling the command only when we edit a file.

Reported-by: Uwe Kleine-König <u.kleine-koenig@pengutronix.de>
Signed-off-by: Michael J Gruber <git@drmicha.warpmail.net>
Acked-by: Uwe Kleine-König <u.kleine-koenig@pengutronix.de>
Acked-by: Jonathan Nieder <jrnieder@gmail.com>
Signed-off-by: Junio C Hamano <gitster@pobox.com>
14 years agofmt-merge-msg: hide summary option
Stephen Boyd [Wed, 24 Mar 2010 07:16:04 +0000 (00:16 -0700)]
fmt-merge-msg: hide summary option

The --summary command line option has been deprecated in favor of --log.
Hide the option from the help message to further discourage the use of
this option.

Signed-off-by: Stephen Boyd <bebarino@gmail.com>
Signed-off-by: Junio C Hamano <gitster@pobox.com>
14 years agofmt-merge-msg: remove custom string_list implementation
Stephen Boyd [Wed, 24 Mar 2010 07:16:03 +0000 (00:16 -0700)]
fmt-merge-msg: remove custom string_list implementation

This command uses a custom version of string list when it could
just as easily use the string_list API. Convert it to use string_list
and reduce the code size a bit.

Signed-off-by: Stephen Boyd <bebarino@gmail.com>
Signed-off-by: Junio C Hamano <gitster@pobox.com>
14 years agostring-list: add unsorted_string_list_lookup()
Stephen Boyd [Wed, 24 Mar 2010 07:16:02 +0000 (00:16 -0700)]
string-list: add unsorted_string_list_lookup()

Sometimes users need to lookup a string in an unsorted string_list. In
that case they should use this function instead of the version for
sorted strings.

Signed-off-by: Stephen Boyd <bebarino@gmail.com>
Signed-off-by: Junio C Hamano <gitster@pobox.com>
14 years agofmt-merge-msg: use pretty.c routines
Stephen Boyd [Wed, 24 Mar 2010 07:16:01 +0000 (00:16 -0700)]
fmt-merge-msg: use pretty.c routines

This command duplicates functionality of the '%s' pretty format.
Simplify the code a bit by using the pretty printing routine
instead of open-coding it here.

Signed-off-by: Stephen Boyd <bebarino@gmail.com>
Signed-off-by: Junio C Hamano <gitster@pobox.com>
14 years agot6200: test fmt-merge-msg more
Stephen Boyd [Wed, 24 Mar 2010 07:16:00 +0000 (00:16 -0700)]
t6200: test fmt-merge-msg more

Add some more tests so we don't break behavior upon modernizing
fmt-merge-msg.

Signed-off-by: Stephen Boyd <bebarino@gmail.com>
Signed-off-by: Junio C Hamano <gitster@pobox.com>
14 years agot6200: modernize with test_tick
Stephen Boyd [Wed, 24 Mar 2010 07:15:59 +0000 (00:15 -0700)]
t6200: modernize with test_tick

This test defines its own version of test_tick. Get rid of it.

Signed-off-by: Stephen Boyd <bebarino@gmail.com>
Signed-off-by: Junio C Hamano <gitster@pobox.com>
14 years agofmt-merge-msg: be quiet if nothing to merge
Stephen Boyd [Wed, 24 Mar 2010 07:15:58 +0000 (00:15 -0700)]
fmt-merge-msg: be quiet if nothing to merge

When FETCH_HEAD contains only 'not-for-merge' entries fmt-merge-msg
still outputs "Merge" (and if the branch isn't master " into <branch>").
In this case fmt-merge-msg is outputting junk and should really just
be quiet. Fix it.

Signed-off-by: Stephen Boyd <bebarino@gmail.com>
Signed-off-by: Junio C Hamano <gitster@pobox.com>
14 years agodiff --check: honor conflict-marker-size attribute
Junio C Hamano [Thu, 25 Mar 2010 02:21:32 +0000 (19:21 -0700)]
diff --check: honor conflict-marker-size attribute

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