gitweb.git
fast-import: Improve robustness when D->F changes provi... Elijah Newren Fri, 9 Jul 2010 13:10:56 +0000 (07:10 -0600)

fast-import: Improve robustness when D->F changes provided in wrong order

When older versions of fast-export came across a directory changing to a
symlink (or regular file), it would output the changes in the form
M 120000 :239821 dir-changing-to-symlink
D dir-changing-to-symlink/filename1
When fast-import sees the first line, it deletes the directory named
dir-changing-to-symlink (and any files below it) and creates a symlink in
its place. When fast-import came across the second line, it was previously
trying to remove the file and relevant leading directories in
tree_content_remove(), and as a side effect it would delete the symlink
that was just created. This resulted in the symlink silently missing from
the resulting repository.

To improve robustness, we ignore file deletions underneath directory names
that correspond to non-directories. This can also be viewed as a minor
optimization: since there cannot be a file and a directory with the same
name in the same directory, the file clearly can't exist so nothing needs
to be done to delete it.

Signed-off-by: Elijah Newren <newren@gmail.com>
Signed-off-by: Junio C Hamano <gitster@pobox.com>

fast-export: Fix output order of D/F changesElijah Newren Fri, 9 Jul 2010 13:10:55 +0000 (07:10 -0600)

fast-export: Fix output order of D/F changes

The fast-import stream format requires incremental changes which take place
immediately, meaning that for D->F conversions all files below the relevant
directory must be deleted before the resulting file of the same name is
created. Reversing the order can result in fast-import silently deleting
the file right after creating it, resulting in the file missing from the
resulting repository.

We correct this by first sorting the diff_queue_struct in depth-first
order.

Signed-off-by: Elijah Newren <newren@gmail.com>
Signed-off-by: Junio C Hamano <gitster@pobox.com>

merge_recursive: Fix renames across paths below D/F... Elijah Newren Fri, 9 Jul 2010 13:10:54 +0000 (07:10 -0600)

merge_recursive: Fix renames across paths below D/F conflicts

The rename logic in process_renames() handles renames and merging of file
contents and then marks files as processed. However, there may be higher
stage entries left in the index for other reasons (e.g., due to D/F
conflicts). By checking for such cases and marking the entry as not
processed, it allows process_entry() later to look at it and handle those
higher stages.

Signed-off-by: Elijah Newren <newren@gmail.com>
Signed-off-by: Junio C Hamano <gitster@pobox.com>

merge-recursive: Fix D/F conflictsElijah Newren Fri, 9 Jul 2010 13:10:53 +0000 (07:10 -0600)

merge-recursive: Fix D/F conflicts

The D/F conflicts that can be automatically resolved (file or directory
unmodified on one side of history), have the nice property that
process_entry() can correctly handle all subpaths of the D/F conflict. In
the case of D->F conversions, it will correctly delete all non-conflicting
files below the relevant directory and the directory itself (note that both
untracked and conflicting files below the directory will prevent its
removal). So if we handle D/F conflicts after all other conflicts, they
become fairly simple to handle -- we just need to check for whether or not
a path (file/directory) is in the way of creating the new content. We do
this by having process_entry() defer handling such entries to a subsequent
process_df_entry() step.

Signed-off-by: Elijah Newren <newren@gmail.com>
Signed-off-by: Junio C Hamano <gitster@pobox.com>

Add a rename + D/F conflict testcaseAlexander Gladysh Fri, 9 Jul 2010 13:10:52 +0000 (07:10 -0600)

Add a rename + D/F conflict testcase

This is a simple testcase where both sides of the rename are paths involved
in (separate) D/F merge conflicts

Signed-off-by: Alexander Gladysh <agladysh@gmail.com>
Signed-off-by: Elijah Newren <newren@gmail.com>
Signed-off-by: Junio C Hamano <gitster@pobox.com>

Add additional testcases for D/F conflictsElijah Newren Fri, 9 Jul 2010 13:10:51 +0000 (07:10 -0600)

Add additional testcases for D/F conflicts

Signed-off-by: Elijah Newren <newren@gmail.com>
Signed-off-by: Junio C Hamano <gitster@pobox.com>

Git 1.7.1 v1.7.1Junio C Hamano Sat, 24 Apr 2010 01:27:17 +0000 (18:27 -0700)

Git 1.7.1

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

Merge branch 'maint'Junio C Hamano Sat, 24 Apr 2010 01:24:32 +0000 (18:24 -0700)

Merge branch 'maint'

* maint:
Documentation improvements for the description of short format.

Documentation improvements for the description of short... Eric Raymond Fri, 23 Apr 2010 17:40:15 +0000 (13:40 -0400)

Documentation improvements for the description of short format.

Incorporates the detailed explanation from Jeff King in
<20100410040959.GA11977@coredump.intra.peff.net> and fixes
the bug noted by Junio C Hamano in
<7vmxxc1i8g.fsf@alter.siamese.dyndns.org>.

Signed-off-by: Eric S. Raymond <esr@thyrsus.com>
Signed-off-by: Junio C Hamano <gitster@pobox.com>

Sync with 1.7.0.6Junio C Hamano Fri, 23 Apr 2010 06:05:49 +0000 (23:05 -0700)

Sync with 1.7.0.6

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

Git 1.7.0.6 v1.7.0.6Junio C Hamano Fri, 23 Apr 2010 05:46:24 +0000 (22:46 -0700)

Git 1.7.0.6

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

Merge branch 'mg/use-default-abbrev-length-in-rev-list... Junio C Hamano Fri, 23 Apr 2010 05:39:26 +0000 (22:39 -0700)

Merge branch 'mg/use-default-abbrev-length-in-rev-list' into maint

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

Merge branch 'wp/doc-filter-direction' into maintJunio C Hamano Fri, 23 Apr 2010 05:29:50 +0000 (22:29 -0700)

Merge branch 'wp/doc-filter-direction' into maint

* wp/doc-filter-direction:
documentation: clarify direction of core.autocrlf

Merge branch 'jk/maint-diffstat-overflow' into maintJunio C Hamano Fri, 23 Apr 2010 05:29:13 +0000 (22:29 -0700)

Merge branch 'jk/maint-diffstat-overflow' into maint

* jk/maint-diffstat-overflow:
diff: use large integers for diffstat calculations

Merge branch 'da/maint-python-startup' into maintJunio C Hamano Fri, 23 Apr 2010 05:29:07 +0000 (22:29 -0700)

Merge branch 'da/maint-python-startup' into maint

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

Merge branch 'maint'Junio C Hamano Thu, 22 Apr 2010 06:54:04 +0000 (23:54 -0700)

Merge branch 'maint'

* maint:
Documentation/Makefile: fix interrupted builds of user-manual.xml

Documentation/Makefile: fix interrupted builds of user... Jonathan Nieder Thu, 22 Apr 2010 01:18:21 +0000 (20:18 -0500)

Documentation/Makefile: fix interrupted builds of user-manual.xml

Unlike gcc, asciidoc does not atomically write its output file or
delete it when interrupted. If it is interrupted in the middle of
writing an XML file, the result will be truncated input for xsltproc.

XSLTPROC user-manual.html
user-manual.xml:998: parser error : Premature end of data in t

Take care of this case by writing to a temporary and renaming it when
finished.

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

Merge branch 'maint'Junio C Hamano Tue, 20 Apr 2010 05:41:30 +0000 (22:41 -0700)

Merge branch 'maint'

* maint:
t7012: Mark missing tests as TODO
reflog: remove 'show' from 'expire's usage string
MSVC: Fix build by adding missing termios.h dummy

t7012: Mark missing tests as TODOMichael J Gruber Mon, 19 Apr 2010 08:14:32 +0000 (10:14 +0200)

t7012: Mark missing tests as TODO

Currently, there are 6 tests which are not even written but are
'test_expect_failure message false'.
Do not abuse test_expect_failure as a to do marker, but mark them as
'#TODO' instead.

Signed-off-by: Michael J Gruber <git@drmicha.warpmail.net>
Acked-by: Nguyen Thai Ngoc Duy <pclouds@gmail.com>
Signed-off-by: Junio C Hamano <gitster@pobox.com>

reflog: remove 'show' from 'expire's usage stringSZEDER Gábor Mon, 19 Apr 2010 09:52:30 +0000 (11:52 +0200)

reflog: remove 'show' from 'expire's usage string

Most of 'expire's options are not recognized by the 'show' subcommand,
hence it errors out.

Signed-off-by: SZEDER Gábor <szeder@ira.uka.de>
Signed-off-by: Junio C Hamano <gitster@pobox.com>

Merge branch 'maint-1.6.6' into maintJunio C Hamano Mon, 19 Apr 2010 08:28:27 +0000 (01:28 -0700)

Merge branch 'maint-1.6.6' into maint

* maint-1.6.6:
MSVC: Fix build by adding missing termios.h dummy

MSVC: Fix build by adding missing termios.h dummyJohannes Sixt Mon, 19 Apr 2010 07:37:20 +0000 (09:37 +0200)

MSVC: Fix build by adding missing termios.h dummy

A use of this header file was introduced in eb80042 (Add missing #include
to support TIOCGWINSZ on Solaris, 2010-01-11).

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

Git 1.7.1-rc2 v1.7.1-rc2Junio C Hamano Mon, 19 Apr 2010 05:19:04 +0000 (22:19 -0700)

Git 1.7.1-rc2

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

Merge branch 'rr/remote-helper-doc'Junio C Hamano Mon, 19 Apr 2010 04:32:25 +0000 (21:32 -0700)

Merge branch 'rr/remote-helper-doc'

* rr/remote-helper-doc:
Documentation/remote-helpers: Fix typos and improve language
Fixup: Second argument may be any arbitrary string
Documentation/remote-helpers: Add invocation section
Documentation/urls: Rewrite to accomodate <transport>::<address>
Documentation/remote-helpers: Rewrite description

Merge branch 'wp/doc-filter-direction'Junio C Hamano Mon, 19 Apr 2010 04:32:21 +0000 (21:32 -0700)

Merge branch 'wp/doc-filter-direction'

* wp/doc-filter-direction:
documentation: clarify direction of core.autocrlf

Merge branch 'jk/maint-diffstat-overflow'Junio C Hamano Mon, 19 Apr 2010 04:31:50 +0000 (21:31 -0700)

Merge branch 'jk/maint-diffstat-overflow'

* jk/maint-diffstat-overflow:
diff: use large integers for diffstat calculations

Merge branch 'jg/auto-initialize-notes-with-percent... Junio C Hamano Mon, 19 Apr 2010 04:31:29 +0000 (21:31 -0700)

Merge branch 'jg/auto-initialize-notes-with-percent-n-in-format'

* jg/auto-initialize-notes-with-percent-n-in-format:
t3301: add tests to use --format="%N"
pretty: Initialize notes if %N is used

Merge branch 'maint'Junio C Hamano Mon, 19 Apr 2010 04:31:20 +0000 (21:31 -0700)

Merge branch 'maint'

* maint:
Documentation: Describe other situations where -z affects git diff

Merge git://git.kernel.org/pub/scm/gitk/gitkJunio C Hamano Mon, 19 Apr 2010 01:36:41 +0000 (18:36 -0700)

Merge git://git.kernel.org/pub/scm/gitk/gitk

* git://git.kernel.org/pub/scm/gitk/gitk:
gitk: Display dirty submodules correctly
gitk: Fix display of copyright symbol
gitk: Add emacs editor variable block
gitk: Avoid calling tk_setPalette on Windows
gitk: Don't clobber "Remember this view" setting
gitk: Add comments to explain encode_view_opts and decode_view_opts
gitk: Use consistent font for all text input fields
gitk: Set the font for all listbox widgets
gitk: Set the font for all spinbox widgets
gitk: Remove forced use of sans-serif font
gitk: Add Ctrl-W shortcut for closing the active window

Documentation/remote-helpers: Fix typos and improve... Ramkumar Ramachandra Sun, 18 Apr 2010 00:57:37 +0000 (06:27 +0530)

Documentation/remote-helpers: Fix typos and improve language

Fix some typos and errors in grammar and tense.

Signed-off-by: Ramkumar Ramachandra <artagnon@gmail.com>
Acked-by: Sverre Rabbelier <srabbelier@gmail.com>
Signed-off-by: Junio C Hamano <gitster@pobox.com>

Fixup: Second argument may be any arbitrary stringRamkumar Ramachandra Sun, 18 Apr 2010 00:56:37 +0000 (06:26 +0530)

Fixup: Second argument may be any arbitrary string

This is intended to be a fixup for commit ad466d1 in pu. As Jonathan
Neider pointed out, the second argument may be any arbitrary string,
and need not conform to any URL-like shape.

Signed-off-by: Ramkumar Ramachandra <artagnon@gmail.com>
Acked-by: Sverre Rabbelier <srabbelier@gmail.com>
Signed-off-by: Junio C Hamano <gitster@pobox.com>

Documentation/remote-helpers: Add invocation sectionRamkumar Ramachandra Wed, 7 Apr 2010 05:44:41 +0000 (11:14 +0530)

Documentation/remote-helpers: Add invocation section

Add an 'Invocation' section to specify what the command line arguments
mean. Also include a link to git-remote in the 'See Also' section.

Signed-off-by: Ramkumar Ramachandra <artagnon@gmail.com>
Acked-by: Sverre Rabbelier <srabbelier@gmail.com>
Signed-off-by: Junio C Hamano <gitster@pobox.com>

Documentation/urls: Rewrite to accomodate <transport... Ramkumar Ramachandra Tue, 6 Apr 2010 08:38:19 +0000 (14:08 +0530)

Documentation/urls: Rewrite to accomodate <transport>::<address>

Rewrite the first part of the document to explicitly show differences
between the URLs that can be used with different transport
protocols. Mention <transport>::<address> format to explicitly invoke
a remote helper.

Signed-off-by: Ramkumar Ramachandra <artagnon@gmail.com>
Reviewed-by: Jonathan Nieder <jrnieder@gmail.com>
Acked-by: Sverre Rabbelier <srabbelier@gmail.com>
Signed-off-by: Junio C Hamano <gitster@pobox.com>

Documentation/remote-helpers: Rewrite descriptionRamkumar Ramachandra Sun, 28 Mar 2010 18:03:50 +0000 (23:33 +0530)

Documentation/remote-helpers: Rewrite description

Rewrite the description section to describe what exactly remote
helpers are and the need for them. Also mention the curl family of
remote helpers as an example.

[jc: with readability fixes from Jonathan squashed in]

Signed-off-by: Ramkumar Ramachandra <artagnon@gmail.com>
Reviewed-by: Jonathan Nieder <jrnieder@gmail.com>
Acked-by: Sverre Rabbelier <srabbelier@gmail.com>
Signed-off-by: Junio C Hamano <gitster@pobox.com>

Documentation: Describe other situations where -z affec... Charles Bailey Sun, 18 Apr 2010 18:28:17 +0000 (19:28 +0100)

Documentation: Describe other situations where -z affects git diff

-z also alters the behaviour of --name-only and --name-status.

Signed-off-by: Charles Bailey <charles@hashpling.org>
Signed-off-by: Junio C Hamano <gitster@pobox.com>

rebase-interactive: silence warning when no commits... Jeff King Sun, 18 Apr 2010 12:01:45 +0000 (08:01 -0400)

rebase-interactive: silence warning when no commits rewritten

If you do a "rebase -i" and don't change any commits,
nothing is rewritten, and we have no REWRITTEN_LIST. The
shell prints out an ugly message:

$ GIT_EDITOR=true git rebase -i HEAD^
/path/to/git-rebase--interactive: 1: cannot open
/path/to/repo/.git/rebase-merge/rewritten-list: No such file
Successfully rebased and updated refs/heads/master.

We can fix it by not running "notes copy" at all if nothing
was rewritten.

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

t3301: add tests to use --format="%N"Junio C Hamano Sun, 18 Apr 2010 18:19:39 +0000 (11:19 -0700)

t3301: add tests to use --format="%N"

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

Merge branch 'maint'Junio C Hamano Sat, 17 Apr 2010 19:40:45 +0000 (12:40 -0700)

Merge branch 'maint'

* maint:
t1010-mktree: Adjust expected result to code and documentation
combined diff: correctly handle truncated file
Document new "already-merged" rule for branch -d

t6006: do not write to /tmpMatthew Ogilvie Sat, 17 Apr 2010 02:29:18 +0000 (20:29 -0600)

t6006: do not write to /tmp

Signed-off-by: Matthew Ogilvie <mmogilvi_git@miniinfo.net>
Signed-off-by: Junio C Hamano <gitster@pobox.com>

git-instaweb: pass through invoking user's path to... Chris Webb Thu, 15 Apr 2010 13:29:45 +0000 (14:29 +0100)

git-instaweb: pass through invoking user's path to gitweb CGI scripts

When used with lighttpd or mongoose, git-instaweb previously passed a
hard-coded, default value of PATH to the gitweb CGI script. Use the invoking
user's value for PATH for this instead. (This is already implicitly the
behaviour for other web servers supported by git-instaweb.)

Signed-off-by: Chris Webb <chris@arachsys.com>
Acked-by: Eric Wong <normalperson@yhbt.net>

gitweb: simplify gitweb.min.* generation and clean... Junio C Hamano Thu, 15 Apr 2010 12:57:18 +0000 (08:57 -0400)

gitweb: simplify gitweb.min.* generation and clean-up rules

GITWEB_CSS and GITWEB_JS are meant to be "what URI should the installed
cgi script use to refer to the stylesheet and JavaScript", never "this
is the name of the file we are building". Don't use them to decide what
file to build minified versions in.

While we are at it, lose FILES that is used only for "clean" target in a
misguided way. "make clean" should try to remove all the potential
build artifacts regardless of a minor configuration change. Instead of
trying to remove only the build product "make clean" would have created
if it were run without "clean", explicitly list the three potential build
products for removal.

Tested-by: Mark Rada <marada@uwaterloo.co>
Signed-off-by: Junio C Hamano <gitster@pobox.com>

tag -v: use RUN_GIT_CMD to run verify-tagJonathan Nieder Thu, 15 Apr 2010 09:36:25 +0000 (04:36 -0500)

tag -v: use RUN_GIT_CMD to run verify-tag

This is the preferred way to run a git command.

The only obvious observable effects I can think of are that the exec
is properly reported in GIT_TRACE output and that verifying signed
tags will still work if the git-verify-tag hard link in gitexecdir
goes missing.

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

documentation: clarify direction of core.autocrlfWill Palmer Sat, 17 Apr 2010 16:55:26 +0000 (17:55 +0100)

documentation: clarify direction of core.autocrlf

The description for core.autocrlf refers to reads from / writes to
"the filesystem", the only use of this rather ambiguous term, which
technically could be referring to the git object database. (All other
mentions are part of phrases such as "..filesystems (like NFS)..").

Other sections, including the section on core.safecrlf, use the term
"work tree" for the same purpose as the term "the filesystem" is used in
the core.autocrlf section, so that seems like a good alternative, which
makes it clearer what direction the addition/removal of CR characters
occurs in.

Signed-off-by: Will Palmer <wmpalmer@gmail.com>
Signed-off-by: Junio C Hamano <gitster@pobox.com>

diff: use large integers for diffstat calculationsJeff King Sat, 17 Apr 2010 17:41:08 +0000 (13:41 -0400)

diff: use large integers for diffstat calculations

The diffstat "added" and "changed" fields generally store
line counts; however, for binary files, they store file
sizes. Since we store and print these values as ints, a
diffstat on a file larger than 2G can show a negative size.
Instead, let's use uintmax_t, which should be at least 64
bits on modern platforms.

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

t1010-mktree: Adjust expected result to code and docume... Michael J Gruber Thu, 15 Apr 2010 09:34:07 +0000 (11:34 +0200)

t1010-mktree: Adjust expected result to code and documentation

The last two tests here were always supposed to fail in the sense
that, according to code and documentation, mktree should read non-recursive
ls-tree output, but not recursive one, and therefore explicitely refuses
to deal with slashes.

Adjust the test (must_fail) so that it succeeds when mktree dies on
slashes.

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

combined diff: correctly handle truncated fileThomas Rast Thu, 15 Apr 2010 12:59:37 +0000 (14:59 +0200)

combined diff: correctly handle truncated file

Consider an evil merge of two commits A and B, both of which have a
file 'foo', but the merge result does not have that file.

The combined-diff code learned in 4462731 (combine-diff: do not punt
on removed or added files., 2006-02-06) to concisely show only the
removal, since that is the evil part and the previous contents are
presumably uninteresting.

However, to diagnose an empty merge result, it overloaded the variable
that holds the file's length. This means that the check also triggers
for truncated files. Consequently, such files were not shown in the
diff at all despite the merge being clearly evil.

Fix this by adding a new variable that distinguishes whether the file
was deleted (which is the case 4462731 handled) or truncated. In the
truncated case, we show the full combined diff again, which is rather
spammy but at least does not hide the evilness.

Reported-by: David Martínez Martí <desarrollo@gestiweb.com>
Signed-off-by: Thomas Rast <trast@student.ethz.ch>
Signed-off-by: Junio C Hamano <gitster@pobox.com>

gitk: Display dirty submodules correctlyJens Lehmann Fri, 9 Apr 2010 20:16:42 +0000 (22:16 +0200)

gitk: Display dirty submodules correctly

Since recently "git diff --submodule" prints out extra lines when the
submodule contains untracked or modified files. Show all those lines of
one submodule under the same header.

Also for newly added or removed submodules the submodule name contained
trailing garbage because the extraction of the name was not done right.

Signed-off-by: Jens Lehmann <Jens.Lehmann@web.de>
Signed-off-by: Paul Mackerras <paulus@samba.org>

Document new "already-merged" rule for branch -dJonathan Nieder Thu, 15 Apr 2010 07:25:38 +0000 (02:25 -0500)

Document new "already-merged" rule for branch -d

v1.7.0-rc0~18^2 (branch -d: base the "already-merged" safety on the
branch it merges with, 2009-12-29) taught ‘git branch’ a new heuristic
for when it is safe to delete a branch without forcing the issue. It
is safe to delete a branch "topic" without second thought if:

- the branch "topic" is set up to pull from a (remote-tracking,
usually) branch and is fully merged in that "upstream" branch, or

- there is no branch.topic.merge configuration and branch "topic" is
fully merged in the current HEAD.

Update the man page to acknowledge the new rules.

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

Add .depend directories to .gitignoreJonathan Nieder Thu, 15 Apr 2010 07:35:20 +0000 (02:35 -0500)

Add .depend directories to .gitignore

The makefile snippets that would land in these directories are already
being ignored. Ignore the directories instead so they don’t show up
in ‘git clean -n’ output.

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

Merge branch 'maint'Junio C Hamano Wed, 14 Apr 2010 01:21:29 +0000 (18:21 -0700)

Merge branch 'maint'

* maint:
Documentation/config.txt: default gc.aggressiveWindow is 250, not 10
Docs: Add -X option to git-merge's synopsis.

Conflicts:
Documentation/merge-options.txt

pretty: Initialize notes if %N is usedJohannes Gilger Tue, 13 Apr 2010 20:31:12 +0000 (22:31 +0200)

pretty: Initialize notes if %N is used

When using git log --pretty='%N' without an explicit --show-notes, git
would segfault. This patches fixes this behaviour by loading the needed
notes datastructures if --pretty is used and the format contains %N.
When --pretty='%N' is used together with --no-notes, %N won't be
expanded.

This is an extension to a proposed patch by Jeff King.

Signed-off-by: Johannes Gilger <heipei@hackvalue.de>
Signed-off-by: Junio C Hamano <gitster@pobox.com>

Documentation/config.txt: default gc.aggressiveWindow... Jay Soffian Tue, 13 Apr 2010 16:52:55 +0000 (12:52 -0400)

Documentation/config.txt: default gc.aggressiveWindow is 250, not 10

The default for gc.aggressiveWindow has been 250 since 1c192f3
(gc --aggressive: make it really aggressive, 2007-12-06).

Signed-off-by: Jay Soffian <jaysoffian@gmail.com>
Signed-off-by: Junio C Hamano <gitster@pobox.com>

Docs: Add -X option to git-merge's synopsis.Marc Branchaud Mon, 12 Apr 2010 16:28:13 +0000 (12:28 -0400)

Docs: Add -X option to git-merge's synopsis.

Also move -X's description next to -s's in merge-options.txt.

This makes it easier to learn how to specify merge strategy options.

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

Merge branch 'jl/maint-submodule-gitfile-awareness'Junio C Hamano Sun, 11 Apr 2010 20:54:28 +0000 (13:54 -0700)

Merge branch 'jl/maint-submodule-gitfile-awareness'

* jl/maint-submodule-gitfile-awareness:
Windows: start_command: Support non-NULL dir in struct child_process

Windows: start_command: Support non-NULL dir in struct... Johannes Sixt Sun, 11 Apr 2010 20:40:12 +0000 (22:40 +0200)

Windows: start_command: Support non-NULL dir in struct child_process

A caller of start_command can set the member 'dir' to a directory to
request that the child process starts with that directory as CWD. The first
user of this feature was added recently in eee49b6 (Teach diff --submodule
and status to handle .git files in submodules).

On Windows, we have been lazy and had not implemented support for this
feature, yet. This fixes the shortcoming.

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

Sync with 1.7.0.5Junio C Hamano Sun, 11 Apr 2010 20:44:17 +0000 (13:44 -0700)

Sync with 1.7.0.5

Merge branch 'jc/doc-submit-gmail'Junio C Hamano Sun, 11 Apr 2010 20:44:05 +0000 (13:44 -0700)

Merge branch 'jc/doc-submit-gmail'

* jc/doc-submit-gmail:
SubmittingPatches: update GMail section

Git 1.7.0.5 v1.7.0.5Junio C Hamano Sun, 11 Apr 2010 20:41:43 +0000 (13:41 -0700)

Git 1.7.0.5

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

Merge branch 'rc/maint-reflog-msg-for-forced-branch... Junio C Hamano Sun, 11 Apr 2010 20:39:47 +0000 (13:39 -0700)

Merge branch 'rc/maint-reflog-msg-for-forced-branch' into maint

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

blame documentation: -M/-C notice copied lines as well... Junio C Hamano Sun, 11 Apr 2010 19:17:42 +0000 (12:17 -0700)

blame documentation: -M/-C notice copied lines as well as moved ones

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

t3507: Make test executableStephen Boyd Sun, 11 Apr 2010 08:43:46 +0000 (01:43 -0700)

t3507: Make test executable

Signed-off-by: Stephen Boyd <bebarino@gmail.com>
Signed-off-by: Junio C Hamano <gitster@pobox.com>

Git 1.7.1-rc1 v1.7.1-rc1Junio C Hamano Sat, 10 Apr 2010 20:05:16 +0000 (13:05 -0700)

Git 1.7.1-rc1

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

Merge branch 'mr/gitweb-jsmin'Junio C Hamano Sat, 10 Apr 2010 20:02:22 +0000 (13:02 -0700)

Merge branch 'mr/gitweb-jsmin'

* mr/gitweb-jsmin:
gitweb: update INSTALL to use shorter make target
gitweb: add documentation to INSTALL regarding gitweb.js
instaweb: add minification awareness
Gitweb: add autoconfigure support for minifiers
Gitweb: add support for minifying gitweb.css
Gitweb: add ignore and clean rules for minified files

Merge 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

Teach diff --submodule and status to handle .git files... 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>

Merge 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

Let check_preimage() use memset() to initialize "struct... 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>

Merge branch 'ef/maint-empty-commit-log' into maintJunio 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

Merge branch 'jc/conflict-marker-size' into maintJunio 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

Merge branch 'sp/maint-http-backend-die-triggers-die... 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()

Merge branch 'mg/maint-send-email-lazy-editor' into... 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

Merge branch 'rr/imap-send-unconfuse-from-line' into... 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

Merge branch 'rb/maint-python-path' into maintJunio 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

Merge branch 'gh/maint-stash-show-error-message' into... 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'

Merge branch 'mg/mailmap-update' into maintJunio 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

Merge branch 'bc/maint-daemon-sans-ss-family' into... 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

fetch/push: fix usage stringsTay 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>

Merge 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

branch: say "Reset to" in reflog entries for 'git branc... 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>

Merge early parts of jk/cached-textconvJunio C Hamano Fri, 9 Apr 2010 06:31:27 +0000 (23:31 -0700)

Merge early parts of jk/cached-textconv

diff.c: work around pointer constness warningsJunio 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.

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

Merge branch 'maint'

* maint:
docs: clarify "branch -l"

docs: 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>

SubmittingPatches: update GMail sectionJunio C Hamano Wed, 7 Apr 2010 22:59:17 +0000 (15:59 -0700)

SubmittingPatches: update GMail section

Even if you use imap-send to throw your drafts in the outbox, using their
web interface will mangle your patches. Clarify that the imap-send is
meant to be used together with a real MUA that can use IMAP drafts, and
remove instructions related to the web interface, which is irrelevant.

Add description of send-email as an alternative.

Use --cover-letter, and do not use -C nor --no-color, on the example
command line for format-patch.

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

Merge 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

Merge 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

fix typos and grammar in 1.7.1 draft release notesJeff 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>

notes.h: declare bit field as unsigned to silence compi... 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>

Git 1.7.1-rc0 v1.7.1-rc0Junio 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>

Merge 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

Merge 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

Merge 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

Merge 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

Merge 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

Merge 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

Revert "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.

Merge 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

pack-protocol.txt: fix pkt-line lengthsTay 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>

pack-protocol.txt: fix spellingTay 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>

Teach mailinfo %< as an alternative scissors markJonathan 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>