gitweb.git
date.c: fix unsigned time_t comparisonMike Gorchak Mon, 25 Feb 2013 21:51:16 +0000 (23:51 +0200)

date.c: fix unsigned time_t comparison

tm_to_time_t() returns (time_t)-1 when it sees an error. On
platforms with unsigned time_t, this value will be larger than any
valid timestamp and will break the "Is this older than 10 days in
the future?" check.

Signed-off-by: Mike Gorchak <mike.gorchak.qnx@gmail.com>
Signed-off-by: Junio C Hamano <gitster@pobox.com>

Git 1.8.2-rc1 v1.8.2-rc1Junio C Hamano Mon, 25 Feb 2013 16:39:23 +0000 (08:39 -0800)

Git 1.8.2-rc1

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

Merge git://github.com/git-l10n/git-poJunio C Hamano Mon, 25 Feb 2013 17:02:58 +0000 (09:02 -0800)

Merge git://github.com/git-l10n/git-po

* git://github.com/git-l10n/git-po:
l10n: vi.po: Updated 5 new messages (2009t0f0u)
l10n: Update Swedish translation (2009t0f0u)
l10n: Update Swedish translation (2004t0f0u)
l10n: zh_CN.po: translate 5 new messages
l10n: git.pot: v1.8.2 round 3 (5 new)

Sync with 'maint'Junio C Hamano Mon, 25 Feb 2013 16:27:50 +0000 (08:27 -0800)

Sync with 'maint'

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

Merge branch 'wk/user-manual'Junio C Hamano Mon, 25 Feb 2013 16:27:17 +0000 (08:27 -0800)

Merge branch 'wk/user-manual'

Further updates to the user manual.

* wk/user-manual:
user-manual: Flesh out uncommitted changes and submodule updates
user-manual: Use request-pull to generate "please pull" text
user-manual: Reorganize the reroll sections, adding 'git rebase -i'

Merge branch 'jn/less-reconfigure'Junio C Hamano Mon, 25 Feb 2013 16:27:13 +0000 (08:27 -0800)

Merge branch 'jn/less-reconfigure'

A change made on v1.8.1.x maintenance track had a nasty regression
to break the build when autoconf is used.

* jn/less-reconfigure:
Makefile: avoid infinite loop on configure.ac change

Merge branch 'as/check-ignore'Junio C Hamano Mon, 25 Feb 2013 16:27:09 +0000 (08:27 -0800)

Merge branch 'as/check-ignore'

"git check-ignore ." segfaulted, as a function it calls deep in its
callchain took a string in the <ptr, length> form but did not stop
when given an empty string.

* as/check-ignore:
name-hash: allow hashing an empty string
t0008: document test_expect_success_multi

Merge branch 'ct/autoconf-htmldir'Junio C Hamano Mon, 25 Feb 2013 16:27:04 +0000 (08:27 -0800)

Merge branch 'ct/autoconf-htmldir'

An earlier change to config.mak.autogen broke a build driven by the
./configure script when --htmldir is not specified on the command
line of ./configure.

* ct/autoconf-htmldir:
Bugfix: undefined htmldir in config.mak.autogen

Merge branch 'wk/man-deny-current-branch-is-default... Junio C Hamano Mon, 25 Feb 2013 16:26:59 +0000 (08:26 -0800)

Merge branch 'wk/man-deny-current-branch-is-default-these-days'

* wk/man-deny-current-branch-is-default-these-days:
user-manual: typofix (ofthe->of the)

Prepare for 1.8.1.5Junio C Hamano Mon, 25 Feb 2013 16:15:40 +0000 (08:15 -0800)

Prepare for 1.8.1.5

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

Merge branch 'jc/mention-tracking-for-pull-default... Junio C Hamano Mon, 25 Feb 2013 16:04:19 +0000 (08:04 -0800)

Merge branch 'jc/mention-tracking-for-pull-default' into maint

* jc/mention-tracking-for-pull-default:
doc: mention tracking for pull.default

Merge branch 'mm/config-intro-in-git-doc' into maintJunio C Hamano Mon, 25 Feb 2013 16:04:17 +0000 (08:04 -0800)

Merge branch 'mm/config-intro-in-git-doc' into maint

* mm/config-intro-in-git-doc:
git.txt: update description of the configuration mechanism

Merge branch 'da/p4merge-mktemp-fix' into maintJunio C Hamano Mon, 25 Feb 2013 16:04:05 +0000 (08:04 -0800)

Merge branch 'da/p4merge-mktemp-fix' into maint

* da/p4merge-mktemp-fix:
p4merge: fix printf usage

Merge branch 'bw/get-tz-offset-perl' into maintJunio C Hamano Mon, 25 Feb 2013 16:04:03 +0000 (08:04 -0800)

Merge branch 'bw/get-tz-offset-perl' into maint

* bw/get-tz-offset-perl:
cvsimport: format commit timestamp ourselves without using strftime
perl/Git.pm: fix get_tz_offset to properly handle DST boundary cases
Move Git::SVN::get_tz to Git::get_tz_offset

Merge branch 'al/mergetool-printf-fix' into maintJunio C Hamano Mon, 25 Feb 2013 16:04:01 +0000 (08:04 -0800)

Merge branch 'al/mergetool-printf-fix' into maint

* al/mergetool-printf-fix:
difftool--helper: fix printf usage
git-mergetool: print filename when it contains %

Merge branch 'jx/utf8-printf-width' into maintJunio C Hamano Mon, 25 Feb 2013 16:03:59 +0000 (08:03 -0800)

Merge branch 'jx/utf8-printf-width' into maint

* jx/utf8-printf-width:
Add utf8_fprintf helper that returns correct number of columns

Merge branch 'mg/bisect-doc' into maintJunio C Hamano Mon, 25 Feb 2013 16:03:57 +0000 (08:03 -0800)

Merge branch 'mg/bisect-doc' into maint

* mg/bisect-doc:
git-bisect.txt: clarify that reset quits bisect

Merge branch 'sp/smart-http-content-type-check' into... Junio C Hamano Mon, 25 Feb 2013 16:03:54 +0000 (08:03 -0800)

Merge branch 'sp/smart-http-content-type-check' into maint

* sp/smart-http-content-type-check:
http_request: reset "type" strbuf before adding
t5551: fix expected error output
Verify Content-Type from smart HTTP servers

Merge branch 'jc/combine-diff-many-parents' into maintJunio C Hamano Mon, 25 Feb 2013 16:03:51 +0000 (08:03 -0800)

Merge branch 'jc/combine-diff-many-parents' into maint

* jc/combine-diff-many-parents:
t4038: add tests for "diff --cc --raw <trees>"
combine-diff: lift 32-way limit of combined diff

Merge branch 'jk/apply-similaritly-parsing' into maintJunio C Hamano Mon, 25 Feb 2013 16:03:44 +0000 (08:03 -0800)

Merge branch 'jk/apply-similaritly-parsing' into maint

* jk/apply-similaritly-parsing:
builtin/apply: tighten (dis)similarity index parsing

Merge branch 'jk/remote-helpers-doc' into maintJunio C Hamano Mon, 25 Feb 2013 16:03:37 +0000 (08:03 -0800)

Merge branch 'jk/remote-helpers-doc' into maint

* jk/remote-helpers-doc:
Rename {git- => git}remote-helpers.txt

Merge branch 'ab/gitweb-use-same-scheme' into maintJunio C Hamano Mon, 25 Feb 2013 16:03:34 +0000 (08:03 -0800)

Merge branch 'ab/gitweb-use-same-scheme' into maint

* ab/gitweb-use-same-scheme:
gitweb: refer to picon/gravatar images over the same scheme

Merge branch 'zk/clean-report-failure' into maintJunio C Hamano Mon, 25 Feb 2013 16:03:32 +0000 (08:03 -0800)

Merge branch 'zk/clean-report-failure' into maint

* zk/clean-report-failure:
git-clean: Display more accurate delete messages

Merge branch 'nd/clone-no-separate-git-dir-with-bare... Junio C Hamano Mon, 25 Feb 2013 16:03:27 +0000 (08:03 -0800)

Merge branch 'nd/clone-no-separate-git-dir-with-bare' into maint

* nd/clone-no-separate-git-dir-with-bare:
clone: forbid --bare --separate-git-dir <dir>

Merge branch 'da/p4merge-mktemp' into maintJunio C Hamano Mon, 25 Feb 2013 16:03:20 +0000 (08:03 -0800)

Merge branch 'da/p4merge-mktemp' into maint

* da/p4merge-mktemp:
mergetools/p4merge: Honor $TMPDIR for the /dev/null placeholder

Documentation: "advice" is uncountableGreg Price Mon, 25 Feb 2013 05:27:20 +0000 (00:27 -0500)

Documentation: "advice" is uncountable

"Advice" is a mass noun, not a count noun; it's not ordinarily
pluralized.

Signed-off-by: Greg Price <price@mit.edu>
Signed-off-by: Junio C Hamano <gitster@pobox.com>

Makefile: avoid infinite loop on configure.ac changeJeff King Thu, 21 Feb 2013 06:26:14 +0000 (01:26 -0500)

Makefile: avoid infinite loop on configure.ac change

If you are using autoconf and change the configure.ac, the
Makefile will notice that config.status is older than
configure.ac, and will attempt to rebuild and re-run the
configure script to pick up your changes. The first step in
doing so is to run "make configure". Unfortunately, this
tries to include config.mak.autogen, which depends on
config.status, which depends on configure.ac; so we must
rebuild config.status. Which leads to us running "make
configure", and so on.

It's easy to demonstrate with:

make configure
./configure
touch configure.ac
make

We can break this cycle by not re-invoking make to build
"configure", and instead just putting its rules inline into
our config.status rebuild procedure. We can avoid a copy by
factoring the rules into a make variable.

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

Sync with v1.8.1.4Junio C Hamano Wed, 20 Feb 2013 05:57:27 +0000 (21:57 -0800)

Sync with v1.8.1.4

Git 1.8.1.4 v1.8.1.4Junio C Hamano Tue, 19 Feb 2013 05:48:05 +0000 (05:48 +0000)

Git 1.8.1.4

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

Merge branch 'ob/imap-send-ssl-verify' into maintJunio C Hamano Wed, 20 Feb 2013 05:54:15 +0000 (21:54 -0800)

Merge branch 'ob/imap-send-ssl-verify' into maint

* ob/imap-send-ssl-verify:
imap-send: support subjectAltName as well
imap-send: the subject of SSL certificate must match the host
imap-send: move #ifdef around

imap-send: support subjectAltName as wellOswald Buddenhagen Fri, 15 Feb 2013 20:59:53 +0000 (12:59 -0800)

imap-send: support subjectAltName as well

Check not only the common name of the certificate subject, but also
check the subject alternative DNS names as well, when verifying that
the certificate matches that of the host we are trying to talk to.

Signed-off-by: Oswald Buddenhagen <ossi@kde.org>
Signed-off-by: Junio C Hamano <gitster@pobox.com>

imap-send: the subject of SSL certificate must match... Oswald Buddenhagen Fri, 15 Feb 2013 20:50:35 +0000 (12:50 -0800)

imap-send: the subject of SSL certificate must match the host

We did not check a valid certificate's subject at all, and would
have happily talked with a wrong host after connecting to an
incorrect address and getting a valid certificate that does not
belong to the host we intended to talk to.

Signed-off-by: Oswald Buddenhagen <ossi@kde.org>
Signed-off-by: Junio C Hamano <gitster@pobox.com>

l10n: vi.po: Updated 5 new messages (2009t0f0u)Tran Ngoc Quan Wed, 20 Feb 2013 00:16:44 +0000 (07:16 +0700)

l10n: vi.po: Updated 5 new messages (2009t0f0u)

Signed-off-by: Tran Ngoc Quan <vnwildman@gmail.com>

Bugfix: undefined htmldir in config.mak.autogenJiang Xin Tue, 19 Feb 2013 11:23:29 +0000 (19:23 +0800)

Bugfix: undefined htmldir in config.mak.autogen

Html documents will be installed to root dir (/) no matter what prefix
is set, if run these commands before `make` and `make install-html`:

$ make configure
$ ./configure --prefix=<PREFIX>

After the installation, all the html documents will copy to rootdir (/),
and:

$ git --html-path
<PREFIX>

$ git help -w something
fatal: '<PREFIX>': not a documentation directory.

This is because the variable "htmldir" points to a undefined variable
"$(docdir)" in file "config.mak.autogen", which is generated by running
`./configure`. By default $(docdir) generated by configure is supposed
be set this way:

datarootdir='${prefix}/share'
htmldir='${docdir}'
docdir='${datarootdir}/doc/${PACKAGE_TARNAME}'

but since fc1c5415d69d (Honor configure's htmldir switch, 2013-02-02),
we only set and export htmldir without doing so for PACKAGE_TARNAME
(which is set to 'git' by the configure script).

Add the required two variables "PACKAGE_TARNAME" and "docdir" to file
"config.mak.in" will work this issue around.

Signed-off-by: Jiang Xin <worldhello.net@gmail.com>
Signed-off-by: Junio C Hamano <gitster@pobox.com>

name-hash: allow hashing an empty stringJunio C Hamano Tue, 19 Feb 2013 19:56:44 +0000 (11:56 -0800)

name-hash: allow hashing an empty string

Usually we do not pass an empty string to the function hash_name()
because we almost always ask for hash values for a path that is a
candidate to be added to the index. However, check-ignore (and most
likely check-attr, but I didn't check) apparently has a callchain
to ask the hash value for an empty path when it was given a "." from
the top-level directory to ask "Is the path . excluded by default?"

Make sure that hash_name() does not overrun the end of the given
pathname even when it is empty.

Remove a sweep-the-issue-under-the-rug conditional in check-ignore
that avoided to pass an empty string to the callchain while at it.
It is a valid question to ask for check-ignore if the top-level is
set to be ignored by default, even though the answer is most likely
no, if only because there is currently no way to specify such an
entry in the .gitignore file. But it is an unusual thing to ask and
it is not worth optimizing for it by special casing at the top level
of the call chain.

Signed-off-by: Adam Spiers <git@adamspiers.org>
Signed-off-by: Junio C Hamano <gitster@pobox.com>

user-manual: Flesh out uncommitted changes and submodul... W. Trevor King Tue, 19 Feb 2013 10:05:02 +0000 (05:05 -0500)

user-manual: Flesh out uncommitted changes and submodule updates

If you try and update a submodule with a dirty working directory, you
get an error message like:

$ git submodule update
error: Your local changes to the following files would be overwritten by checkout:
...
Please, commit your changes or stash them before you can switch branches.
Aborting
...

Mention this in the submodule notes. The previous phrase was short
enough that I originally thought it might have been referring to the
reflog note (obviously, uncommitted changes will not show up in the
reflog either ;).

Signed-off-by: W. Trevor King <wking@tremily.us>
Signed-off-by: Junio C Hamano <gitster@pobox.com>

user-manual: Use request-pull to generate "please pull... W. Trevor King Tue, 19 Feb 2013 10:05:01 +0000 (05:05 -0500)

user-manual: Use request-pull to generate "please pull" text

Less work and more error checking (e.g. does a merge base exist?).
Add an explicit push before request-pull to satisfy request-pull,
which checks to make sure the references are publically available.

Signed-off-by: W. Trevor King <wking@tremily.us>
Signed-off-by: Junio C Hamano <gitster@pobox.com>

user-manual: Reorganize the reroll sections, adding... W. Trevor King Tue, 19 Feb 2013 10:05:00 +0000 (05:05 -0500)

user-manual: Reorganize the reroll sections, adding 'git rebase -i'

I think this interface is often more convenient than extended cherry
picking or using 'git format-patch'. In fact, I removed the
cherry-pick section entirely. The entry-level suggestions for
rerolling are now:

1. git commit --amend
2. git format-patch origin
git reset --hard origin
...edit and reorder patches...
git am *.patch
3. git rebase -i origin

Signed-off-by: W. Trevor King <wking@tremily.us>
Signed-off-by: Junio C Hamano <gitster@pobox.com>

t0008: document test_expect_success_multiAdam Spiers Tue, 19 Feb 2013 14:06:22 +0000 (14:06 +0000)

t0008: document test_expect_success_multi

test_expect_success_multi() helper function warrants some explanation,
since at first sight it may seem like generic test framework plumbing,
but is in fact specific to testing check-ignore, and allows more
thorough testing of the various output formats without significantly
increase the size of t0008.

Signed-off-by: Adam Spiers <git@adamspiers.org>
Signed-off-by: Junio C Hamano <gitster@pobox.com>

l10n: Update Swedish translation (2009t0f0u)Peter Krefting Tue, 19 Feb 2013 09:26:36 +0000 (10:26 +0100)

l10n: Update Swedish translation (2009t0f0u)

Signed-off-by: Peter Krefting <peter@softwolves.pp.se>

l10n: Update Swedish translation (2004t0f0u)Peter Krefting Mon, 18 Feb 2013 22:01:07 +0000 (23:01 +0100)

l10n: Update Swedish translation (2004t0f0u)

Signed-off-by: Peter Krefting <peter@softwolves.pp.se>

l10n: zh_CN.po: translate 5 new messagesJiang Xin Tue, 19 Feb 2013 06:52:24 +0000 (14:52 +0800)

l10n: zh_CN.po: translate 5 new messages

Translate 5 new messages came from git.pot update in 235537a
(l10n: git.pot: v1.8.2 round 3 (5 new)).

Signed-off-by: Jiang Xin <worldhello.net@gmail.com>

l10n: git.pot: v1.8.2 round 3 (5 new)Jiang Xin Tue, 19 Feb 2013 05:36:11 +0000 (13:36 +0800)

l10n: git.pot: v1.8.2 round 3 (5 new)

Generate po/git.pot from v1.8.2-rc0-16-g20a59 for git v1.8.2
l10n round 3.

Signed-off-by: Jiang Xin <worldhello.net@gmail.com>

imap-send: move #ifdef aroundJunio C Hamano Fri, 15 Feb 2013 20:32:19 +0000 (12:32 -0800)

imap-send: move #ifdef around

Instead of adding an early return to the inside of the
ssl_socket_connect() function for NO_OPENSSL compilation, split it
into a separate stub function.

No functional change, but the next change to extend ssl_socket_connect()
will become easier to read this way.

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

Merge branch 'jc/mention-tracking-for-pull-default'Junio C Hamano Tue, 19 Feb 2013 00:05:02 +0000 (16:05 -0800)

Merge branch 'jc/mention-tracking-for-pull-default'

We stopped mentioning `tracking` is a deprecated but supported
synonym for `upstream` in pull.default even though we have no
intention of removing the support for it.

* jc/mention-tracking-for-pull-default:
doc: mention tracking for pull.default

Merge branch 'mm/config-intro-in-git-doc'Junio C Hamano Tue, 19 Feb 2013 00:04:58 +0000 (16:04 -0800)

Merge branch 'mm/config-intro-in-git-doc'

* mm/config-intro-in-git-doc:
git.txt: update description of the configuration mechanism

RelNotes 1.8.2: push-simple will not be in effect in... Junio C Hamano Mon, 18 Feb 2013 23:59:33 +0000 (15:59 -0800)

RelNotes 1.8.2: push-simple will not be in effect in this release

Also migration path for the default behaviour of "git add -u/-A" run
in a subdirectory is worth mentioning.

Both pointed out by Matthieu Moy.

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

shell-prompt: clean up nested if-thenMartin Erik Werner Mon, 18 Feb 2013 22:59:03 +0000 (23:59 +0100)

shell-prompt: clean up nested if-then

Minor clean up of if-then nesting in checks for environment variables
and config options. No functional changes.

Signed-off-by: Martin Erik Werner <martinerikwerner@gmail.com>
Signed-off-by: Junio C Hamano <gitster@pobox.com>

user-manual: typofix (ofthe->of the)Junio C Hamano Mon, 18 Feb 2013 20:43:00 +0000 (12:43 -0800)

user-manual: typofix (ofthe->of the)

Noticed by Drew Northup

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

Merge branch 'maint'Junio C Hamano Mon, 18 Feb 2013 08:50:33 +0000 (00:50 -0800)

Merge branch 'maint'

* maint:
user-manual: use -o latest.tar.gz to create a gzipped tarball
user-manual: use 'git config --global user.*' for setup
user-manual: mention 'git remote add' for remote branch config
user-manual: give 'git push -f' as an alternative to +master
user-manual: use 'remote add' to setup push URLs

user-manual: use -o latest.tar.gz to create a gzipped... W. Trevor King Mon, 18 Feb 2013 00:16:01 +0000 (19:16 -0500)

user-manual: use -o latest.tar.gz to create a gzipped tarball

This functionality was introduced by 0e804e09 (archive: provide
builtin .tar.gz filter, 2011-07-21) for v1.7.7.

Signed-off-by: W. Trevor King <wking@tremily.us>
Signed-off-by: Junio C Hamano <gitster@pobox.com>

user-manual: use 'git config --global user.*' for setupW. Trevor King Mon, 18 Feb 2013 00:15:58 +0000 (19:15 -0500)

user-manual: use 'git config --global user.*' for setup

A simple command line call is easier than spawning an editor,
especially for folks new to ideas like the "command line" and "text
editors". This is also the approach suggested by 'git commit' if you
try and commit without having configured user.name or user.email.

Signed-off-by: W. Trevor King <wking@tremily.us>
Signed-off-by: Junio C Hamano <gitster@pobox.com>

user-manual: mention 'git remote add' for remote branch... W. Trevor King Mon, 18 Feb 2013 00:15:56 +0000 (19:15 -0500)

user-manual: mention 'git remote add' for remote branch config

I hardly ever setup remote.<name>.url using 'git config'. While it
may be instructive to do so, we should also point out 'git remote
add'.

Signed-off-by: W. Trevor King <wking@tremily.us>
Signed-off-by: Junio C Hamano <gitster@pobox.com>

user-manual: give 'git push -f' as an alternative to... W. Trevor King Mon, 18 Feb 2013 00:15:55 +0000 (19:15 -0500)

user-manual: give 'git push -f' as an alternative to +master

This mirrors existing language in the description of 'git fetch'.

Signed-off-by: W. Trevor King <wking@tremily.us>
Signed-off-by: Junio C Hamano <gitster@pobox.com>

user-manual: use 'remote add' to setup push URLsW. Trevor King Mon, 18 Feb 2013 00:15:53 +0000 (19:15 -0500)

user-manual: use 'remote add' to setup push URLs

There is no need to use here documents to setup this configuration.
It is easier, less confusing, and more robust to use `git remote add`
directly.

Signed-off-by: W. Trevor King <wking@tremily.us>
Signed-off-by: Junio C Hamano <gitster@pobox.com>

Merge git://github.com/git-l10n/git-poJunio C Hamano Mon, 18 Feb 2013 08:01:12 +0000 (00:01 -0800)

Merge git://github.com/git-l10n/git-po

* git://github.com/git-l10n/git-po:
l10n: zh_CN.po: translate 35 new messages
l10n: vi.po: update new strings (2004t0u0f)
l10n: Update git.pot (35 new, 14 removed messages)

l10n: zh_CN.po: translate 35 new messagesJiang Xin Thu, 14 Feb 2013 09:47:45 +0000 (17:47 +0800)

l10n: zh_CN.po: translate 35 new messages

Translate 35 new messages came from git.pot update in 9caaf23
(l10n: Update git.pot (35 new, 14 removed messages)).

Signed-off-by: Jiang Xin <worldhello.net@gmail.com>

Git 1.8.2-rc0 v1.8.2-rc0Junio C Hamano Sun, 17 Feb 2013 23:35:33 +0000 (15:35 -0800)

Git 1.8.2-rc0

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

Merge branch 'jc/hidden-refs'Junio C Hamano Sun, 17 Feb 2013 23:25:57 +0000 (15:25 -0800)

Merge branch 'jc/hidden-refs'

Allow the server side to redact the refs/ namespace it shows to the
client.

Will merge to 'master'.

* jc/hidden-refs:
upload/receive-pack: allow hiding ref hierarchies
upload-pack: simplify request validation
upload-pack: share more code

Merge branch 'mp/diff-algo-config'Junio C Hamano Sun, 17 Feb 2013 23:25:51 +0000 (15:25 -0800)

Merge branch 'mp/diff-algo-config'

Add diff.algorithm configuration so that the user does not type
"diff --histogram".

* mp/diff-algo-config:
diff: Introduce --diff-algorithm command line option
config: Introduce diff.algorithm variable
git-completion.bash: Autocomplete --minimal and --histogram for git-diff

Merge branch 'mw/bash-prompt-show-untracked-config'Junio C Hamano Sun, 17 Feb 2013 23:25:46 +0000 (15:25 -0800)

Merge branch 'mw/bash-prompt-show-untracked-config'

Allows skipping the untracked check GIT_PS1_SHOWUNTRACKEDFILES
asks for the git-prompt (in contrib/) per repository.

* mw/bash-prompt-show-untracked-config:
t9903: add extra tests for bash.showDirtyState
t9903: add tests for bash.showUntrackedFiles
shell prompt: add bash.showUntrackedFiles option

Merge branch 'jk/rebase-i-comment-char'Junio C Hamano Sun, 17 Feb 2013 23:25:19 +0000 (15:25 -0800)

Merge branch 'jk/rebase-i-comment-char'

Finishing touches to the earlier core.commentchar topic to cover
"rebase -i" as well.

* jk/rebase-i-comment-char:
rebase -i: respect core.commentchar

Merge branch 'jk/read-commit-buffer-data-after-free'Junio C Hamano Sun, 17 Feb 2013 23:23:20 +0000 (15:23 -0800)

Merge branch 'jk/read-commit-buffer-data-after-free'

"git log --grep=<pattern>" used to look for the pattern in literal
bytes of the commit log message and ignored the log-output encoding.

* jk/read-commit-buffer-data-after-free:
log: re-encode commit messages before grepping

l10n: vi.po: update new strings (2004t0u0f)Tran Ngoc Quan Sun, 17 Feb 2013 01:42:47 +0000 (08:42 +0700)

l10n: vi.po: update new strings (2004t0u0f)

Signed-off-by: Tran Ngoc Quan <vnwildman@gmail.com>

Update draft release notes to 1.8.2Junio C Hamano Fri, 15 Feb 2013 20:24:54 +0000 (12:24 -0800)

Update draft release notes to 1.8.2

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

git.txt: update description of the configuration mechanismMatthieu Moy Thu, 14 Feb 2013 15:36:54 +0000 (16:36 +0100)

git.txt: update description of the configuration mechanism

The old Git version where it appeared is now useful only to historians,
not to normal users. Also, the text was mentioning only the per-repo
config file, but this is a good place to teach that customization can
also be made per-user.

While at it, remove a now-defunct e-mail from an example.

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

Merge branch 'wk/man-deny-current-branch-is-default... Junio C Hamano Fri, 15 Feb 2013 00:06:29 +0000 (16:06 -0800)

Merge branch 'wk/man-deny-current-branch-is-default-these-days'

* wk/man-deny-current-branch-is-default-these-days:
user-manual: Update for receive.denyCurrentBranch=refuse

Merge branch 'mk/make-rm-depdirs-could-be-empty'Junio C Hamano Fri, 15 Feb 2013 00:06:24 +0000 (16:06 -0800)

Merge branch 'mk/make-rm-depdirs-could-be-empty'

"make COMPUTE_HEADER_DEPENDENCIES=no clean" would try to run "rm
-rf $(dep_dirs)" with an empty dep_dir, but some implementations of
"rm -rf" barf on an empty argument list.

* mk/make-rm-depdirs-could-be-empty:
Makefile: don't run "rm" without any files

Merge branch 'mm/config-local-completion'Junio C Hamano Fri, 15 Feb 2013 00:06:19 +0000 (16:06 -0800)

Merge branch 'mm/config-local-completion'

* mm/config-local-completion:
completion: support 'git config --local'

Merge branch 'ef/non-ascii-parse-options-error-diag'Junio C Hamano Fri, 15 Feb 2013 00:06:14 +0000 (16:06 -0800)

Merge branch 'ef/non-ascii-parse-options-error-diag'

* ef/non-ascii-parse-options-error-diag:
parse-options: report uncorrupted multi-byte options

Merge branch 'mk/old-expat'Junio C Hamano Fri, 15 Feb 2013 00:06:08 +0000 (16:06 -0800)

Merge branch 'mk/old-expat'

* mk/old-expat:
Allow building with xmlparse.h

Merge branch 'da/p4merge-mktemp-fix'Junio C Hamano Fri, 15 Feb 2013 00:05:56 +0000 (16:05 -0800)

Merge branch 'da/p4merge-mktemp-fix'

* da/p4merge-mktemp-fix:
p4merge: fix printf usage

Documentation/git-add: kill remaining <filepattern>Junio C Hamano Thu, 14 Feb 2013 23:51:43 +0000 (15:51 -0800)

Documentation/git-add: kill remaining <filepattern>

The merge at 5bf72ed2 missed another instance of <filepattern> that
we were converting to <pathspec>.

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

user-manual: Update for receive.denyCurrentBranch=refuseW. Trevor King Fri, 8 Feb 2013 17:04:20 +0000 (12:04 -0500)

user-manual: Update for receive.denyCurrentBranch=refuse

acd2a45 (Refuse updating the current branch in a non-bare repository
via push, 2009-02-11) changed the default to refuse such a push, but
it forgot to update the docs.

7d182f5 (Documentation: receive.denyCurrentBranch defaults to
'refuse', 2010-03-17) updated Documentation/config.txt, but forgot to
update the user manual.

Signed-off-by: W. Trevor King <wking@tremily.us>
Signed-off-by: Junio C Hamano <gitster@pobox.com>

Update draft release notes to 1.8.2Junio C Hamano Thu, 14 Feb 2013 18:43:07 +0000 (10:43 -0800)

Update draft release notes to 1.8.2

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

Merge branch 'jk/diff-graph-cleanup'Junio C Hamano Thu, 14 Feb 2013 18:29:59 +0000 (10:29 -0800)

Merge branch 'jk/diff-graph-cleanup'

Refactors a lot of repetitive code sequence from the graph drawing
code and adds it to the combined diff output.

* jk/diff-graph-cleanup:
combine-diff.c: teach combined diffs about line prefix
diff.c: use diff_line_prefix() where applicable
diff: add diff_line_prefix function
diff.c: make constant string arguments const
diff: write prefix to the correct file
graph: output padding for merge subsequent parents

Merge branch 'nd/status-show-in-progress'Junio C Hamano Thu, 14 Feb 2013 18:29:54 +0000 (10:29 -0800)

Merge branch 'nd/status-show-in-progress'

* nd/status-show-in-progress:
status: show the branch name if possible in in-progress info

Merge branch 'mm/remote-mediawiki-build'Junio C Hamano Thu, 14 Feb 2013 18:29:49 +0000 (10:29 -0800)

Merge branch 'mm/remote-mediawiki-build'

* mm/remote-mediawiki-build:
git-remote-mediawiki: use toplevel's Makefile
Makefile: make script-related rules usable from subdirectories

Merge branch 'bw/get-tz-offset-perl'Junio C Hamano Thu, 14 Feb 2013 18:29:44 +0000 (10:29 -0800)

Merge branch 'bw/get-tz-offset-perl'

* bw/get-tz-offset-perl:
cvsimport: format commit timestamp ourselves without using strftime
perl/Git.pm: fix get_tz_offset to properly handle DST boundary cases
Move Git::SVN::get_tz to Git::get_tz_offset

Merge branch 'al/mergetool-printf-fix'Junio C Hamano Thu, 14 Feb 2013 18:29:37 +0000 (10:29 -0800)

Merge branch 'al/mergetool-printf-fix'

* al/mergetool-printf-fix:
difftool--helper: fix printf usage
git-mergetool: print filename when it contains %

Merge branch 'jk/error-const-return'Junio C Hamano Thu, 14 Feb 2013 18:29:23 +0000 (10:29 -0800)

Merge branch 'jk/error-const-return'

* jk/error-const-return:
Use __VA_ARGS__ for all of error's arguments

Merge branch 'jx/utf8-printf-width'Junio C Hamano Thu, 14 Feb 2013 18:29:08 +0000 (10:29 -0800)

Merge branch 'jx/utf8-printf-width'

Use a new helper that prints a message and counts its display width
to align the help messages parse-options produces.

* jx/utf8-printf-width:
Add utf8_fprintf helper that returns correct number of columns

Merge branch 'mg/bisect-doc'Junio C Hamano Thu, 14 Feb 2013 18:29:01 +0000 (10:29 -0800)

Merge branch 'mg/bisect-doc'

* mg/bisect-doc:
git-bisect.txt: clarify that reset quits bisect

Merge branch 'tz/perl-styles'Junio C Hamano Thu, 14 Feb 2013 18:28:55 +0000 (10:28 -0800)

Merge branch 'tz/perl-styles'

Add coding guidelines for writing Perl scripts for Git.

* tz/perl-styles:
Update CodingGuidelines for Perl

Merge branch 'jc/extended-fake-ancestor-for-gitlink'Junio C Hamano Thu, 14 Feb 2013 18:28:48 +0000 (10:28 -0800)

Merge branch 'jc/extended-fake-ancestor-for-gitlink'

Instead of requiring the full 40-hex object names on the index
line, we can read submodule commit object names from the textual
diff when synthesizing a fake ancestore tree for "git am -3".

* jc/extended-fake-ancestor-for-gitlink:
apply: verify submodule commit object name better

Merge branch 'dg/subtree-fixes'Junio C Hamano Thu, 14 Feb 2013 18:28:26 +0000 (10:28 -0800)

Merge branch 'dg/subtree-fixes'

contrib/subtree updates, but here are only the ones that looked
ready. The remainder of the patches will have another day.

* dg/subtree-fixes:
contrib/subtree: make the manual directory if needed
contrib/subtree: honor DESTDIR
contrib/subtree: fix synopsis
contrib/subtree: better error handling for 'subtree add'
contrib/subtree: use %B for split subject/body
contrib/subtree: remove test number comments

l10n: Update git.pot (35 new, 14 removed messages)Jiang Xin Thu, 14 Feb 2013 06:49:45 +0000 (14:49 +0800)

l10n: Update git.pot (35 new, 14 removed messages)

L10n for git 1.8.2 round 2: Generate po/git.pot from v1.8.1.3-568-g5bf72.

Signed-off-by: Jiang Xin <worldhello.net@gmail.com>

t9903: add extra tests for bash.showDirtyStateMartin Erik Werner Wed, 13 Feb 2013 20:58:19 +0000 (21:58 +0100)

t9903: add extra tests for bash.showDirtyState

Add 3 extra tests for the bash.showDirtyState config option; the
tests now cover all combinations of the shell var being set/unset
and the config option being missing/enabled/disabled, given a dirty
file.

Signed-off-by: Martin Erik Werner <martinerikwerner@gmail.com>
Signed-off-by: Junio C Hamano <gitster@pobox.com>

t9903: add tests for bash.showUntrackedFilesMartin Erik Werner Wed, 13 Feb 2013 20:58:18 +0000 (21:58 +0100)

t9903: add tests for bash.showUntrackedFiles

Add 4 tests for the bash.showUntrackedFiles config option, covering
all combinations of the shell var being set/unset and the config
option being enabled/disabled (the other 2 cases, missing config
with and without shell variable, are already covered by existing
tests).

Signed-off-by: Martin Erik Werner <martinerikwerner@gmail.com>
Signed-off-by: Junio C Hamano <gitster@pobox.com>

Makefile: don't run "rm" without any filesMatt Kraai Wed, 13 Feb 2013 15:57:48 +0000 (07:57 -0800)

Makefile: don't run "rm" without any files

When COMPUTE_HEADER_DEPENDENCIES is set to "auto" and the compiler
does not support it, $(dep_dirs) becomes empty. "make clean" runs
"rm -rf $(dep_dirs)", which can fail in such a case.

Signed-off-by: Matt Kraai <matt.kraai@amo.abbott.com>
Signed-off-by: Junio C Hamano <gitster@pobox.com>

shell prompt: add bash.showUntrackedFiles optionMartin Erik Werner Wed, 13 Feb 2013 11:01:58 +0000 (12:01 +0100)

shell prompt: add bash.showUntrackedFiles option

Add a config option 'bash.showUntrackedFiles' which allows enabling
the prompt showing untracked files on a per-repository basis. This is
useful for some repositories where the 'git ls-files ...' command may
take a long time.

Signed-off-by: Martin Erik Werner <martinerikwerner@gmail.com>
Signed-off-by: Junio C Hamano <gitster@pobox.com>

Merge branch 'maint'Junio C Hamano Tue, 12 Feb 2013 20:23:12 +0000 (12:23 -0800)

Merge branch 'maint'

* maint:
Replace filepattern with pathspec for consistency

rebase -i: respect core.commentcharJohn Keeping Mon, 11 Feb 2013 23:08:04 +0000 (23:08 +0000)

rebase -i: respect core.commentchar

Commit eff80a9 (Allow custom "comment char") introduced a custom comment
character for commit messages but did not teach git-rebase--interactive
to use it.

Change git-rebase--interactive to read core.commentchar and use its
value when generating commit messages and for the command list.

Signed-off-by: John Keeping <john@keeping.me.uk>
Signed-off-by: Junio C Hamano <gitster@pobox.com>

combine-diff.c: teach combined diffs about line prefixJohn Keeping Thu, 7 Feb 2013 20:15:28 +0000 (20:15 +0000)

combine-diff.c: teach combined diffs about line prefix

When running "git log --graph --cc -p" the diff output for merges is not
indented by the graph structure, unlike the diffs of non-merge commits
(added in commit 7be5761 - diff.c: Output the text graph padding before
each diff line).

Fix this by teaching the combined diff code to output diff_line_prefix()
before each line.

Signed-off-by: John Keeping <john@keeping.me.uk>
Signed-off-by: Junio C Hamano <gitster@pobox.com>

diff.c: use diff_line_prefix() where applicableJohn Keeping Thu, 7 Feb 2013 20:15:27 +0000 (20:15 +0000)

diff.c: use diff_line_prefix() where applicable

Signed-off-by: John Keeping <john@keeping.me.uk>
Signed-off-by: Junio C Hamano <gitster@pobox.com>

diff: add diff_line_prefix functionJohn Keeping Thu, 7 Feb 2013 20:15:26 +0000 (20:15 +0000)

diff: add diff_line_prefix function

This is a helper function to call the diff output_prefix function and
return its value as a C string, allowing us to greatly simplify
everywhere that needs to get the output prefix.

Signed-off-by: John Keeping <john@keeping.me.uk>
Signed-off-by: Junio C Hamano <gitster@pobox.com>

diff.c: make constant string arguments constJohn Keeping Thu, 7 Feb 2013 20:15:25 +0000 (20:15 +0000)

diff.c: make constant string arguments const

Signed-off-by: John Keeping <john@keeping.me.uk>
Signed-off-by: Junio C Hamano <gitster@pobox.com>

diff: write prefix to the correct fileJohn Keeping Thu, 7 Feb 2013 20:15:24 +0000 (20:15 +0000)

diff: write prefix to the correct file

Write the prefix for an output line to the same file as the actual
content.

Signed-off-by: John Keeping <john@keeping.me.uk>
Signed-off-by: Junio C Hamano <gitster@pobox.com>

completion: support 'git config --local'Matthieu Moy Tue, 12 Feb 2013 12:20:42 +0000 (13:20 +0100)

completion: support 'git config --local'

This needs to be done in two places: __git_config_get_set_variables to
allow clever completion of "git config --local --get foo<tab>", and
_git_config to allow "git config --loc<tab>" to complete to --local.

While we're there, change the order of options in the code to match
git-config.txt.

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

Replace filepattern with pathspec for consistencyMatthieu Moy Tue, 12 Feb 2013 09:24:44 +0000 (10:24 +0100)

Replace filepattern with pathspec for consistency

pathspec is the most widely used term, and is the one defined in
gitglossary.txt. <filepattern> was used only in the synopsys for git-add
and git-commit, and in git-add.txt. Get rid of it.

This patch is obtained with by running:

perl -pi -e 's/filepattern/pathspec/' `git grep -l filepattern`

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