Code

git.git
13 years agoMerge 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

13 years agoMerge 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
  ...

13 years agoMerge 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

13 years agoMerge 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

13 years agoMerge 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

13 years agoMerge 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

13 years agoUpdate draft release notes to 1.7.6
Junio 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>
13 years agoMerge 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()

13 years agoMerge 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

13 years agoMerge 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

13 years agoStart 1.7.5.1 maintenance track
Junio 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>
13 years agoMerge branch 'mg/x-years-12-months' into maint
Junio 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

13 years agogit-send-email: fix missing space in error message
Sylvain 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>
13 years agot/test-lib.sh: minor readability improvements
Mathias 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>
13 years agodiffcore-rename.c: avoid set-but-not-used warning
Jim 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>
13 years agoMerge 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

13 years agoMerge 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()

13 years agoMerge 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
  ...

13 years agoMerge 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

13 years agoMerge 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

13 years agoMerge 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

13 years agoStart 1.7.6 cycle
Junio 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>
13 years agoMerge 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

13 years agoMerge 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

13 years agoMerge 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

13 years agoMerge 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

13 years agoMerge 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"

13 years agoMerge 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

13 years agoMerge 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

13 years agoMerge 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

13 years agoMerge 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

13 years agoMerge 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

13 years agoMerge 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

13 years agoMerge 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

13 years agoMerge 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

13 years agoMerge 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

13 years agoMerge 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()

13 years agoMerge 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

13 years agoMerge 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..."

13 years agostrbuf: 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>
13 years agoAutomatically autoload bashcompinit for ZSH, when needed
Marius 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>
13 years agogit-svn.txt: small typeface improvements
Valentin 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>
13 years agogit-svn.txt: move option descriptions
Valentin 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>
13 years agogit-svn.txt: fix usage of --add-author-from
Valentin 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>
13 years agohttp: clear POSTFIELDS when initializing a slot
Junio 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>
13 years agoGit 1.7.5 v1.7.5
Junio 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>
13 years agosparse: Fix some "symbol not declared" warnings
Ramsay 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>
13 years agosparse: Fix errors due to missing target-specific variables
Ramsay 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>
13 years agodate: avoid "X years, 12 months" in relative dates
Michael 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>
13 years agoGit 1.7.5-rc3 v1.7.5-rc3
Junio 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>
13 years agoSync with 1.7.4.5
Junio 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>
13 years agoGit 1.7.4.5 v1.7.4.5
Junio 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>
13 years agogit-svn.txt: Document --mergeinfo
Michael 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>
13 years agoRevert "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.

13 years agoi18n: use test_i18n{cmp,grep} in t7600, t7607, t7611 and t7811
Junio C Hamano [Thu, 14 Apr 2011 21:36:14 +0000 (14:36 -0700)]
i18n: use test_i18n{cmp,grep} in t7600, t7607, t7611 and t7811

Signed-off-by: Junio C Hamano <gitster@pobox.com>
13 years agoi18n: use test_i18n{grep,cmp} in t7508
Junio C Hamano [Thu, 14 Apr 2011 20:56:14 +0000 (13:56 -0700)]
i18n: use test_i18n{grep,cmp} in t7508

Two tests looked for "[Uu]sage" in the output, but we cannot expect the
l10n to use that phrase.  Mark them with test_i18ngrep so that in later
versions we can test truly localized versions with the same tests, not
just GETTEXT_POISON that happens to keep the original string in the
output.

Merge a few tests that were artificially split into "do" and "test output
under C_LOCALE_OUTPUT" in the original i18n patches back.

Signed-off-by: Junio C Hamano <gitster@pobox.com>
13 years agoi18n: use test_i18ngrep in t7506
Junio C Hamano [Thu, 14 Apr 2011 20:37:54 +0000 (13:37 -0700)]
i18n: use test_i18ngrep in t7506

Signed-off-by: Junio C Hamano <gitster@pobox.com>
13 years agoMerge branch 'maint'
Junio C Hamano [Thu, 14 Apr 2011 19:26:45 +0000 (12:26 -0700)]
Merge branch 'maint'

* maint:
  archive: document limitation of tar.umask config setting
  t3306,t5304: avoid clock skew issues
  git.txt: fix list continuation

13 years agocontrib/completion: --notes, --no-notes
Michael J Gruber [Thu, 14 Apr 2011 17:53:13 +0000 (19:53 +0200)]
contrib/completion: --notes, --no-notes

Signed-off-by: Michael J Gruber <git@drmicha.warpmail.net>
Signed-off-by: Junio C Hamano <gitster@pobox.com>
13 years agoarchive: document limitation of tar.umask config setting
René Scharfe [Thu, 14 Apr 2011 18:04:57 +0000 (20:04 +0200)]
archive: document limitation of tar.umask config setting

The local value of the config variable tar.umask is not passed to the
other side with --remote.  We may want to change that, but for now just
document this fact.

Reported-by: Jacek Masiulaniec <jacek.masiulaniec@gmail.com>
Signed-off-by: Rene Scharfe <rene.scharfe@lsrfire.ath.cx>
Signed-off-by: Junio C Hamano <gitster@pobox.com>
13 years agot3306,t5304: avoid clock skew issues
Michael J Gruber [Thu, 14 Apr 2011 17:38:13 +0000 (19:38 +0200)]
t3306,t5304: avoid clock skew issues

On systems where the local time and file modification time may be out of
sync (e.g. test directory on NFS) t3306 and t5305 can fail because prune
compares times such as "now" (client time) with file modification times
(server times for remote file systems). I.e., these are spurious test
failures.

Avoid this by setting the relevant modification times to the local time.

Noticed on a system with as little as 2s time skew.

Signed-off-by: Michael J Gruber <git@drmicha.warpmail.net>
Signed-off-by: Junio C Hamano <gitster@pobox.com>
13 years agogit.txt: fix list continuation
Michael J Gruber [Thu, 14 Apr 2011 07:17:26 +0000 (09:17 +0200)]
git.txt: fix list continuation

Remove a spurious empty line which prevented asciidoc from recognizing a
list continuation mark ('+'), so that it does not get output literally any
more.

Signed-off-by: Michael J Gruber <git@drmicha.warpmail.net>
Signed-off-by: Junio C Hamano <gitster@pobox.com>
13 years agoi18n: use test_i18ngrep and test_i18ncmp in t7502
Junio C Hamano [Wed, 13 Apr 2011 23:17:50 +0000 (16:17 -0700)]
i18n: use test_i18ngrep and test_i18ncmp in t7502

Signed-off-by: Junio C Hamano <gitster@pobox.com>
13 years agoi18n: use test_i18ngrep in t7501
Junio C Hamano [Wed, 13 Apr 2011 23:17:29 +0000 (16:17 -0700)]
i18n: use test_i18ngrep in t7501

Signed-off-by: Junio C Hamano <gitster@pobox.com>
13 years agoi18n: use test_i18ncmp in t7500
Junio C Hamano [Tue, 12 Apr 2011 23:48:35 +0000 (16:48 -0700)]
i18n: use test_i18ncmp in t7500

Signed-off-by: Junio C Hamano <gitster@pobox.com>
13 years agoi18n: use test_i18ngrep in t7201
Junio C Hamano [Tue, 12 Apr 2011 23:39:14 +0000 (16:39 -0700)]
i18n: use test_i18ngrep in t7201

Some test were mistakenly disabled under GETTEXT_POISON as well,
and they have been resurrected.

Signed-off-by: Junio C Hamano <gitster@pobox.com>
13 years agoi18n: use test_i18ncmp and test_i18ngrep in t7102 and t7110
Junio C Hamano [Tue, 12 Apr 2011 23:36:18 +0000 (16:36 -0700)]
i18n: use test_i18ncmp and test_i18ngrep in t7102 and t7110

Signed-off-by: Junio C Hamano <gitster@pobox.com>
13 years agoi18n: use test_i18ncmp and test_i18ngrep in t5541, t6040, t6120, t7004, t7012 and...
Junio C Hamano [Tue, 12 Apr 2011 23:33:39 +0000 (16:33 -0700)]
i18n: use test_i18ncmp and test_i18ngrep in t5541, t6040, t6120, t7004, t7012 and t7060

Signed-off-by: Junio C Hamano <gitster@pobox.com>
13 years agoi18n: use test_i18ncmp and test_i18ngrep in t3700, t4001 and t4014
Junio C Hamano [Tue, 12 Apr 2011 23:27:11 +0000 (16:27 -0700)]
i18n: use test_i18ncmp and test_i18ngrep in t3700, t4001 and t4014

Signed-off-by: Junio C Hamano <gitster@pobox.com>
13 years agoi18n: use test_i18ncmp and test_i18ngrep in t3203, t3501 and t3507
Junio C Hamano [Tue, 12 Apr 2011 23:23:01 +0000 (16:23 -0700)]
i18n: use test_i18ncmp and test_i18ngrep in t3203, t3501 and t3507

Signed-off-by: Junio C Hamano <gitster@pobox.com>
13 years agoi18n: use test_i18ngrep in t2020, t2204, t3030, and t3200
Junio C Hamano [Tue, 12 Apr 2011 23:20:32 +0000 (16:20 -0700)]
i18n: use test_i18ngrep in t2020, t2204, t3030, and t3200

Signed-off-by: Junio C Hamano <gitster@pobox.com>
13 years agoi18n: use test_i18ngrep in lib-httpd and t2019
Junio C Hamano [Tue, 12 Apr 2011 23:12:47 +0000 (16:12 -0700)]
i18n: use test_i18ngrep in lib-httpd and t2019

Signed-off-by: Junio C Hamano <gitster@pobox.com>
13 years agoi18n: do not overuse C_LOCALE_OUTPUT (grep)
Junio C Hamano [Tue, 12 Apr 2011 22:57:08 +0000 (15:57 -0700)]
i18n: do not overuse C_LOCALE_OUTPUT (grep)

Instead of skipping the whole test, introduce test_i18ngrep wrapper that
pretends a successful result under GETTEXT_POISON build.

Signed-off-by: Junio C Hamano <gitster@pobox.com>
13 years agoi18n: use test_i18ncmp in t1200 and t2200
Junio C Hamano [Tue, 12 Apr 2011 22:50:55 +0000 (15:50 -0700)]
i18n: use test_i18ncmp in t1200 and t2200

Signed-off-by: Junio C Hamano <gitster@pobox.com>
13 years agoi18n: .git file is not a human readable message (t5601)
Junio C Hamano [Tue, 12 Apr 2011 23:29:19 +0000 (16:29 -0700)]
i18n: .git file is not a human readable message (t5601)

Signed-off-by: Junio C Hamano <gitster@pobox.com>
13 years agoGit 1.7.5-rc2 v1.7.5-rc2
Junio C Hamano [Wed, 13 Apr 2011 21:01:03 +0000 (14:01 -0700)]
Git 1.7.5-rc2

Signed-off-by: Junio C Hamano <gitster@pobox.com>
13 years agoMerge branch 'maint'
Junio C Hamano [Wed, 13 Apr 2011 20:59:19 +0000 (13:59 -0700)]
Merge branch 'maint'

* maint:

13 years agoMerge branch 'jc/rev-list-options-fix' into maint
Junio C Hamano [Wed, 13 Apr 2011 20:56:52 +0000 (13:56 -0700)]
Merge branch 'jc/rev-list-options-fix' into maint

* jc/rev-list-options-fix:
  "log --cherry-pick" documentation regression fix

13 years agoMerge branch 'js/checkout-untracked-symlink' into maint
Junio C Hamano [Wed, 13 Apr 2011 20:55:53 +0000 (13:55 -0700)]
Merge branch 'js/checkout-untracked-symlink' into maint

* js/checkout-untracked-symlink:
  t2021: mark a test as fixed

13 years agoremove doubled words, e.g., s/to to/to/, and fix related typos
Jim Meyering [Wed, 13 Apr 2011 15:39:40 +0000 (17:39 +0200)]
remove doubled words, e.g., s/to to/to/, and fix related typos

I found that some doubled words had snuck back into projects from which
I'd already removed them, so now there's a "syntax-check" makefile rule in
gnulib to help prevent recurrence.

Running the command below spotted a few in git, too:

  git ls-files | xargs perl -0777 -n \
    -e 'while (/\b(then?|[iao]n|i[fst]|but|f?or|at|and|[dt])\s+\1\b/gims)' \
    -e '{$n=($` =~ tr/\n/\n/ + 1); ($v=$&)=~s/\n/\\n/g;' \
    -e 'print "$ARGV:$n:$v\n"}'

Signed-off-by: Jim Meyering <meyering@redhat.com>
Signed-off-by: Junio C Hamano <gitster@pobox.com>
13 years agorevert: Hide '-r' option in default usage
Ramkumar Ramachandra [Sun, 10 Apr 2011 15:39:14 +0000 (21:09 +0530)]
revert: Hide '-r' option in default usage

The '-r' command-line option is a no-op provided only for backward
compatiblity since abd6970 (cherry-pick: make -r the default, 2006-10-05),
and somehow ended up surviving across reimplementation in C at 9509af6
(Make git-revert & git-cherry-pick a builtin, 2007-03-01) and another
rewrite of the command line parser at f810379 (Make builtin-revert.c use
parse_options, 2007-10-07).  We should have stopped advertising the option
long time ago.

Signed-off-by: Ramkumar Ramachandra <artagnon@gmail.com>
Signed-off-by: Junio C Hamano <gitster@pobox.com>
13 years agoformat-patch: document --quiet option
Carlos Martín Nieto [Tue, 12 Apr 2011 15:51:37 +0000 (17:51 +0200)]
format-patch: document --quiet option

Signed-off-by: Carlos Martín Nieto <cmn@elego.de>
Signed-off-by: Junio C Hamano <gitster@pobox.com>
13 years agoformat-patch: don't pass on the --quiet flag
Carlos Martín Nieto [Tue, 12 Apr 2011 15:35:38 +0000 (17:35 +0200)]
format-patch: don't pass on the --quiet flag

The --quiet flag is not meant to be passed on to the diff, as the user
always wants the patches to be produced so catch it and pass it to
reopen_stdout which decides whether to print the filename or not.

Noticed by Paul Gortmaker

Signed-off-by: Carlos Martín Nieto <cmn@elego.de>
Signed-off-by: Junio C Hamano <gitster@pobox.com>
13 years ago--dirstat: In case of renames, use target filename instead of source filename
Johan Herland [Tue, 12 Apr 2011 09:24:34 +0000 (11:24 +0200)]
--dirstat: In case of renames, use target filename instead of source filename

This changes --dirstat analysis to count "damage" toward the target filename,
rather than the source filename. For renames within a directory, this won't
matter to the final output, but when moving files between diretories, the
output now lists the target directory rather than the source directory.

Signed-off-by: Johan Herland <johan@herland.net>
Acked-by: Linus Torvalds <torvalds@linux-foundation.org>
Signed-off-by: Junio C Hamano <gitster@pobox.com>
13 years agoi18n: do not overuse C_LOCALE_OUTPUT
Junio C Hamano [Tue, 12 Apr 2011 18:23:23 +0000 (11:23 -0700)]
i18n: do not overuse C_LOCALE_OUTPUT

It is too coarse-grained way that led to artificial splitting of a
logically single test case into "do" and "check only without poison".
As the majority of check is done by comparing expected and actual output
stored in a file with test_cmp anyway, just introduce test_i18ncmp that
pretends the actual output matched the expected one when gettext-poison
is in effect.

Signed-off-by: Junio C Hamano <gitster@pobox.com>
13 years agoi18n: mark init-db messages for translation
Ævar Arnfjörð Bjarmason [Sun, 10 Apr 2011 19:34:02 +0000 (19:34 +0000)]
i18n: mark init-db messages for translation

Mark the init-db messages that were added in v1.7.5-rc1~16^2 (init,
clone: support --separate-git-dir for .git file) by Nguyễn Thái Ngọc
Duy for translation.

This requires splitting up the tests that the patch added so that
certain parts of them can be skipped unless the C_LOCALE_OUTPUT
prerequisite is satisfied.

Signed-off-by: Ævar Arnfjörð Bjarmason <avarab@gmail.com>
Signed-off-by: Junio C Hamano <gitster@pobox.com>
13 years agoi18n: mark checkout plural warning for translation
Ævar Arnfjörð Bjarmason [Sun, 10 Apr 2011 19:34:08 +0000 (19:34 +0000)]
i18n: mark checkout plural warning for translation

Mark the "Warning: you are leaving %d commit(s) behind" message added
in v1.7.5-rc0~74^2 (commit: give final warning when reattaching HEAD
to leave commits behind) by Junio C Hamano for translation.

This message requires the use of ngettext() features, and is the first
message to use the Q_() wrapper around ngettext().

Signed-off-by: Ævar Arnfjörð Bjarmason <avarab@gmail.com>
Signed-off-by: Junio C Hamano <gitster@pobox.com>
13 years agoi18n: mark checkout --detach messages for translation
Ævar Arnfjörð Bjarmason [Sun, 10 Apr 2011 19:34:07 +0000 (19:34 +0000)]
i18n: mark checkout --detach messages for translation

Mark messages added in v1.7.5-rc0~117^2~2 (checkout: introduce
--detach synonym for "git checkout foo^{commit}") by Junio C Hamano
for translation.

Signed-off-by: Ævar Arnfjörð Bjarmason <avarab@gmail.com>
Signed-off-by: Junio C Hamano <gitster@pobox.com>
13 years agoi18n: mark clone nonexistent repository message for translation
Ævar Arnfjörð Bjarmason [Sun, 10 Apr 2011 19:34:06 +0000 (19:34 +0000)]
i18n: mark clone nonexistent repository message for translation

Mark the "repository '%s' does not exist" message added in
v1.7.4.2~21^2 (clone: die when trying to clone missing local path) by
Jeff King for translation.

Signed-off-by: Ævar Arnfjörð Bjarmason <avarab@gmail.com>
Signed-off-by: Junio C Hamano <gitster@pobox.com>
13 years agoi18n: mark merge CHERRY_PICK_HEAD messages for translation
Ævar Arnfjörð Bjarmason [Sun, 10 Apr 2011 19:34:05 +0000 (19:34 +0000)]
i18n: mark merge CHERRY_PICK_HEAD messages for translation

Mark CHERRY_PICK_HEAD related messages in builtin/merge.c that were
added in v1.7.5-rc0~88^2~2 (Introduce CHERRY_PICK_HEAD) by Jay Soffian
for translation.

Signed-off-by: Ævar Arnfjörð Bjarmason <avarab@gmail.com>
Signed-off-by: Junio C Hamano <gitster@pobox.com>
13 years agoi18n: mark merge "upstream" messages for translation
Ævar Arnfjörð Bjarmason [Sun, 10 Apr 2011 19:34:04 +0000 (19:34 +0000)]
i18n: mark merge "upstream" messages for translation

Mark the merge messages that were added in v1.7.5-rc1~17^2 (merge:
merge with the default upstream branch without argument) by Junio C
Hamano for translation.

Signed-off-by: Ævar Arnfjörð Bjarmason <avarab@gmail.com>
Signed-off-by: Junio C Hamano <gitster@pobox.com>
13 years agoi18n: mark merge "Could not read from" message for translation
Ævar Arnfjörð Bjarmason [Sun, 10 Apr 2011 19:34:03 +0000 (19:34 +0000)]
i18n: mark merge "Could not read from" message for translation

Mark the "Could not read from '%s'" message that was added to
builtin/merge.c in v1.7.4.2~25^2 (merge: honor prepare-commit-msg
hook) by Jay Soffian for translation.

Signed-off-by: Ævar Arnfjörð Bjarmason <avarab@gmail.com>
Signed-off-by: Junio C Hamano <gitster@pobox.com>
13 years agoMerge branch 'js/checkout-untracked-symlink'
Junio C Hamano [Tue, 12 Apr 2011 07:05:50 +0000 (00:05 -0700)]
Merge branch 'js/checkout-untracked-symlink'

* js/checkout-untracked-symlink:
  t2021: mark a test as fixed

13 years agoMerge branch 'nd/init-gitdir'
Junio C Hamano [Tue, 12 Apr 2011 07:04:53 +0000 (00:04 -0700)]
Merge branch 'nd/init-gitdir'

* nd/init-gitdir:
  t0001: guard a new test with SYMLINKS prerequisite

13 years agot2021: mark a test as fixed
Johannes Sixt [Tue, 12 Apr 2011 06:41:19 +0000 (08:41 +0200)]
t2021: mark a test as fixed

The failure was fixed by the previous commit.

Signed-off-by: Johannes Sixt <j6t@kdbg.org>
Signed-off-by: Junio C Hamano <gitster@pobox.com>
13 years agot0001: guard a new test with SYMLINKS prerequisite
Johannes Sixt [Tue, 12 Apr 2011 06:30:49 +0000 (08:30 +0200)]
t0001: guard a new test with SYMLINKS prerequisite

Signed-off-by: Johannes Sixt <j6t@kdbg.org>
Signed-off-by: Junio C Hamano <gitster@pobox.com>
13 years agoconfig: support values longer than 1023 bytes
Erik Faye-Lund [Sun, 10 Apr 2011 20:54:18 +0000 (22:54 +0200)]
config: support values longer than 1023 bytes

parse_value in config.c has a static buffer of 1024 bytes that it
parse the value into. This can sometimes be a problem when a
config file contains very long values.

It's particularly amusing that git-config already is able to write
such files, so it should probably be able to read them as well.

Fix this by using a strbuf instead of a fixed-size buffer.

Signed-off-by: Erik Faye-Lund <kusmabite@gmail.com>
Acked-by: Jeff King <peff@peff.net>
Signed-off-by: Junio C Hamano <gitster@pobox.com>
13 years agostrbuf: make sure buffer is zero-terminated
Erik Faye-Lund [Sun, 10 Apr 2011 20:54:17 +0000 (22:54 +0200)]
strbuf: make sure buffer is zero-terminated

strbuf_init does not zero-terminate the initial buffer when hint is
non-zero. Fix this so we can rely on the string to be zero-terminated
even if we haven't filled it with anything yet.

Signed-off-by: Erik Faye-Lund <kusmabite@gmail.com>
Acked-by: Jeff King <peff@peff.net>
Signed-off-by: Junio C Hamano <gitster@pobox.com>
13 years agoTeach --dirstat not to completely ignore rearranged lines within a file
Johan Herland [Sun, 10 Apr 2011 22:48:52 +0000 (00:48 +0200)]
Teach --dirstat not to completely ignore rearranged lines within a file

Currently, the --dirstat analysis ignores when lines within a file are
rearranged, because the "damage" calculated by show_dirstat() is 0.
However, if the object name has changed, we already know that there is
some damage, and it is unintuitive to claim there is _no_ damage.

Teach show_dirstat() to assign a minimum amount of damage (== 1) to
entries for which the analysis otherwise yields zero damage, to still
represent that these files are changed, instead of saying that there
is no change.

Also, skip --dirstat analysis when the object names are the same (e.g. for
a pure file rename).

Signed-off-by: Johan Herland <johan@herland.net>
Acked-by: Linus Torvalds <torvalds@linux-foundation.org>
Signed-off-by: Junio C Hamano <gitster@pobox.com>
13 years agosparse: Fix an "symbol 'merge_file' not decared" warning
Ramsay Jones [Thu, 7 Apr 2011 18:31:24 +0000 (19:31 +0100)]
sparse: Fix an "symbol 'merge_file' not decared" warning

In order to fix the warning, we add a new "merge-file.h" header
containing the extern declaration of the merge_file() function,
and include the header in the source files that require the
declaration.

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