gitweb.git
Merge branch 'jc/refactor-diff-stdin'Junio C Hamano Fri, 13 Jul 2012 22:38:05 +0000 (15:38 -0700)

Merge branch 'jc/refactor-diff-stdin'

Due to the way "git diff --no-index" is bolted onto by touching the
low level code that is shared with the rest of the "git diff" code,
even though it has to work in a very different way, any comparison
that involves a file "-" at the root level incorrectly tried to read
from the standard input. This cleans up the no-index codepath
further to remove code that reads from the standard input from the
core side, which is never necessary when git is running its usual
diff operation.

* jc/refactor-diff-stdin:
diff-index.c: "git diff" has no need to read blob from the standard input
diff-index.c: unify handling of command line paths
diff-index.c: do not pretend paths are pathspecs

Merge branch 'tg/ce-namelen'Junio C Hamano Fri, 13 Jul 2012 22:37:58 +0000 (15:37 -0700)

Merge branch 'tg/ce-namelen'

Trivially correct clean-up and micro optimization.

* tg/ce-namelen:
Replace strlen() with ce_namelen()

Merge branch 'tb/sanitize-decomposed-utf-8-pathname'Junio C Hamano Fri, 13 Jul 2012 22:37:51 +0000 (15:37 -0700)

Merge branch 'tb/sanitize-decomposed-utf-8-pathname'

Teaches git to normalize pathnames read from readdir(3) and all
arguments from the command line into precomposed UTF-8 (assuming
that they come as decomposed UTF-8) to work around issues on Mac OS.

I think there still are other places that need conversion
(e.g. paths that are read from stdin for some commands), but this
should be a good first step in the right direction.

* tb/sanitize-decomposed-utf-8-pathname:
git on Mac OS and precomposed unicode

Merge branch 'mm/mediawiki-tests'Junio C Hamano Fri, 13 Jul 2012 22:37:46 +0000 (15:37 -0700)

Merge branch 'mm/mediawiki-tests'

* mm/mediawiki-tests:
git-remote-mediawiki: be more defensive when requests fail
git-remote-mediawiki: more efficient 'pull' in the best case
git-remote-mediawiki: extract revision-importing loop to a function
git-remote-mediawiki: refactor loop over revision ids
git-remote-mediawiki: change return type of get_mw_pages
git-remote-mediawiki (t9363): test 'File:' import and export
git-remote-mediawiki: support for uploading file in test environment
git-remote-mediawiki (t9362): test git-remote-mediawiki with UTF8 characters
git-remote-mediawiki (t9361): test git-remote-mediawiki pull and push
git-remote-mediawiki (t9360): test git-remote-mediawiki clone
git-remote-mediawiki: test environment of git-remote-mediawiki
git-remote-mediawiki: scripts to install, delete and clear a MediaWiki

Merge branch 'jn/vcs-svn'Junio C Hamano Fri, 13 Jul 2012 22:37:04 +0000 (15:37 -0700)

Merge branch 'jn/vcs-svn'

vcs-svn updates to clean-up compilation, lift 32-bit limitations, etc.

* jn/vcs-svn:
vcs-svn: allow 64-bit Prop-Content-Length
vcs-svn: suppress a signed/unsigned comparison warning
vcs-svn: suppress a signed/unsigned comparison warning
vcs-svn: suppress signed/unsigned comparison warnings
vcs-svn: use strstr instead of memmem
vcs-svn: use constcmp instead of prefixcmp
vcs-svn: simplify cleanup in apply_one_window
vcs-svn: avoid self-assignment in dummy initialization of pre_off
vcs-svn: drop no-op reset methods
vcs-svn: suppress -Wtype-limits warning
vcs-svn: allow import of > 4GiB files
vcs-svn: rename check_overflow and its arguments for clarity

Merge branch 'mm/mediawiki-file-attachments'Junio C Hamano Fri, 13 Jul 2012 22:36:53 +0000 (15:36 -0700)

Merge branch 'mm/mediawiki-file-attachments'

"mediawiki" remote helper (in contrib/) learned to handle file
attachments.

* mm/mediawiki-file-attachments:
git-remote-mediawiki: improve support for non-English Wikis
git-remote-mediawiki: import "File:" attachments
git-remote-mediawiki: split get_mw_pages into smaller functions
git-remote-mediawiki: send "File:" attachments to a remote wiki
git-remote-mediawiki: don't "use encoding 'utf8';"
git-remote-mediawiki: don't compute the diff when getting commit message

Merge branch 'tr/maint-show-walk'Junio C Hamano Fri, 13 Jul 2012 22:36:44 +0000 (15:36 -0700)

Merge branch 'tr/maint-show-walk'

Fixes "git show"'s auto-walking behaviour, and make it behave just
like "git log" does when it walks.

* tr/maint-show-walk:
show: fix "range implies walking"
Demonstrate git-show is broken with ranges

Merge branch 'mz/rebase-no-mbox'Junio C Hamano Fri, 13 Jul 2012 22:36:31 +0000 (15:36 -0700)

Merge branch 'mz/rebase-no-mbox'

Teach "am --rebasing" codepath to grab authorship, log message and
the patch text directly out of existing commits. This will help
rebasing commits that have confusing "diff" output in their log
messages.

* mz/rebase-no-mbox:
am: don't call mailinfo if $rebasing
am --rebasing: get patch body from commit, not from mailbox
rebase --root: print usage on too many args
rebase: don't source git-sh-setup twice

Reduce draft release notes to 1.7.12Junio C Hamano Wed, 11 Jul 2012 20:48:57 +0000 (13:48 -0700)

Reduce draft release notes to 1.7.12

Many "fixes since 1.7.11" items are now in the maintenance track

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

Sync with 1.7.11.2Junio C Hamano Wed, 11 Jul 2012 20:00:51 +0000 (13:00 -0700)

Sync with 1.7.11.2

Git 1.7.11.2 v1.7.11.2Junio C Hamano Wed, 11 Jul 2012 19:55:38 +0000 (12:55 -0700)

Git 1.7.11.2

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

Merge branch 'jc/maint-blame-unique-abbrev' into maintJunio C Hamano Wed, 11 Jul 2012 19:58:28 +0000 (12:58 -0700)

Merge branch 'jc/maint-blame-unique-abbrev' into maint

"git blame" did not try to make sure that the abbreviated commit
object names in its output are unique.

* jc/maint-blame-unique-abbrev:
blame: compute abbreviation width that ensures uniqueness

Merge branch 'rj/platform-pread-may-be-thread-unsafe... Junio C Hamano Wed, 11 Jul 2012 19:57:28 +0000 (12:57 -0700)

Merge branch 'rj/platform-pread-may-be-thread-unsafe' into maint

On Cygwin, the platform pread(2) is not thread safe, just like our own
compat/ emulation, and cannot be used in the index-pack program.
Makefile variable NO_THREAD_SAFE_PREAD can be defined to avoid use of
this function in a threaded program.

* rj/platform-pread-may-be-thread-unsafe:
index-pack: Disable threading on cygwin

Merge branch 'th/diff-no-index-fixes' into maintJunio C Hamano Wed, 11 Jul 2012 19:48:44 +0000 (12:48 -0700)

Merge branch 'th/diff-no-index-fixes' into maint

"git diff --no-index" did not correctly handle relative paths and
did not correctly give exit codes when run under "--quiet" option.

* th/diff-no-index-fixes:
diff-no-index: exit(1) if 'diff --quiet <repo file> <external file>' finds changes
diff: handle relative paths in no-index

Merge branch 'nd/clone-single-fix' into maintJunio C Hamano Wed, 11 Jul 2012 19:48:29 +0000 (12:48 -0700)

Merge branch 'nd/clone-single-fix' into maint

"git clone --single-branch" to clone a single branch did not limit
the cloning to the specified branch.

* nd/clone-single-fix:
clone: fix ref selection in --single-branch --branch=xxx

Merge branch 'jc/rev-list-simplify-merges-first-parent... Junio C Hamano Wed, 11 Jul 2012 19:46:57 +0000 (12:46 -0700)

Merge branch 'jc/rev-list-simplify-merges-first-parent' into maint

When "git log" gets "--simplify-merges/by-decoration" together with
"--first-parent", the combination of these options makes the
simplification logic to use in-core commit objects that haven't been
examined for relevance, either producing incorrect result or taking
too long to produce any output. Teach the simplification logic to
ignore commits that the first-parent traversal logic ignored when
both are in effect to work around the issue.

* jc/rev-list-simplify-merges-first-parent:
revision: ignore side parents while running simplify-merges
revision: note the lack of free() in simplify_merges()
revision: "simplify" options imply topo-order sort

Merge branch 'hv/submodule-update-nuke-submodules'... Junio C Hamano Wed, 11 Jul 2012 19:46:31 +0000 (12:46 -0700)

Merge branch 'hv/submodule-update-nuke-submodules' into maint

"git add" allows adding a regular file to the path where a submodule
used to exist, but "git update-index" did not allow an equivalent
operation to Porcelain writers.

* hv/submodule-update-nuke-submodules:
update-index: allow overwriting existing submodule index entries

Merge branch 'jk/diff-no-index-pager' into maintJunio C Hamano Wed, 11 Jul 2012 19:46:21 +0000 (12:46 -0700)

Merge branch 'jk/diff-no-index-pager' into maint

"git diff --no-index" did not work with pagers correctly.

* jk/diff-no-index-pager:
do not run pager with diff --no-index --quiet
fix pager.diff with diff --no-index

Merge branch 'mm/verify-filename-fix' into maintJunio C Hamano Wed, 11 Jul 2012 19:45:49 +0000 (12:45 -0700)

Merge branch 'mm/verify-filename-fix' into maint

"git diff COPYING HEAD:COPYING" gave a nonsense error message that
claimed that the treeish HEAD did not have COPYING in it.

* mm/verify-filename-fix:
verify_filename(): ask the caller to chose the kind of diagnosis
sha1_name: do not trigger detailed diagnosis for file arguments

Merge branch 'cn/cherry-pick-range-docs' into maintJunio C Hamano Wed, 11 Jul 2012 19:45:34 +0000 (12:45 -0700)

Merge branch 'cn/cherry-pick-range-docs' into maint

The documentation for "git cherry-pick A B..C" was misleading.

* cn/cherry-pick-range-docs:
git-cherry-pick.txt: clarify the use of revision range notation
Documentation: --no-walk is no-op if range is specified

Merge branch 'jc/ustar-checksum-is-unsigned' into maintJunio C Hamano Wed, 11 Jul 2012 19:45:07 +0000 (12:45 -0700)

Merge branch 'jc/ustar-checksum-is-unsigned' into maint

"git archive" incorrectly computed the header checksum; the symptom
was observed only when using pathnames with hi-bit set.

* jc/ustar-checksum-is-unsigned:
archive: ustar header checksum is computed unsigned

Merge branch 'jc/bundle-complete-notice' into maintJunio C Hamano Wed, 11 Jul 2012 19:44:50 +0000 (12:44 -0700)

Merge branch 'jc/bundle-complete-notice' into maint

Running "git bundle verify" on a bundle that records a complete
history said "it requires these 0 commits".

* jc/bundle-complete-notice:
tweak "bundle verify" of a complete history

Merge branch 'jc/ls-files-i-dir' into maintJunio C Hamano Wed, 11 Jul 2012 19:44:34 +0000 (12:44 -0700)

Merge branch 'jc/ls-files-i-dir' into maint

"git ls-files --exclude=t -i" did not consider anything under t/ as
excluded, as it did not pay attention to exclusion of leading paths
while walking the index. Other two users of excluded() are also
updated.

* jc/ls-files-i-dir:
dir.c: make excluded() file scope static
unpack-trees.c: use path_excluded() in check_ok_to_remove()
builtin/add.c: use path_excluded()
path_excluded(): update API to less cache-entry centric
ls-files -i: micro-optimize path_excluded()
ls-files -i: pay attention to exclusion of leading paths

Merge branch 'jc/request-pull-match-tagname' into maintJunio C Hamano Wed, 11 Jul 2012 19:43:58 +0000 (12:43 -0700)

Merge branch 'jc/request-pull-match-tagname' into maint

"git request-pull $url dev" when the tip of "dev" branch was tagged
with "ext4-for-linus" used the contents from the tag in the output
but still asked the "dev" branch to be pulled, not the tag.

* jc/request-pull-match-tagname:
request-pull: really favor a matching tag

Merge git://github.com/git-l10n/git-poJunio C Hamano Mon, 9 Jul 2012 17:26:23 +0000 (10:26 -0700)

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

Translation updates for various languages.

* git://github.com/git-l10n/git-po:
l10n: zh_CN.po: translate 29 new messages
l10n: de.po: translate 29 new messages
Update Swedish translation (1095t0f0u)
l10n: Update translation for Vietnamese
l10n: Update git.pot (29 new messages)

Fifth batch for 1.7.12Junio C Hamano Mon, 9 Jul 2012 16:49:37 +0000 (09:49 -0700)

Fifth batch for 1.7.12

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

Merge branch 'cw/help-over-network'Junio C Hamano Mon, 9 Jul 2012 16:02:19 +0000 (09:02 -0700)

Merge branch 'cw/help-over-network'

"git help -w $cmd" can show HTML version of documentation for
"git-$cmd" by setting help.htmlpath to somewhere other than the
default location where the build procedure installs them locally;
the variable can even point at a http:// URL.

* cw/help-over-network:
Allow help.htmlpath to be a URL prefix
Add config variable to set HTML path for git-help --web

Merge branch 'mz/empty-rebase-test'Junio C Hamano Mon, 9 Jul 2012 16:02:15 +0000 (09:02 -0700)

Merge branch 'mz/empty-rebase-test'

We did not have test to make sure "git rebase" without extra options
filters out an empty commit in the original history.

* mz/empty-rebase-test:
add test case for rebase of empty commit

Merge branch 'pw/git-p4-tests'Junio C Hamano Mon, 9 Jul 2012 16:02:11 +0000 (09:02 -0700)

Merge branch 'pw/git-p4-tests'

More "git p4" tests.

* pw/git-p4-tests:
git p4 test: fix badp4dir test
git p4 test: split up big t9800 test
git p4 test: cleanup_git should make a new $git
git p4 test: copy source indeterminate
git p4 test: check for error message in failed test
git p4 test: rename some "git-p4 command" strings
git p4 test: never create default test repo
git p4 test: simplify quoting involving TRASH_DIRECTORY
git p4 test: use real_path to resolve p4 client symlinks
git p4 test: wait longer for p4d to start and test its pid

Merge branch 'js/fast-export-paths-with-spaces'Junio C Hamano Mon, 9 Jul 2012 16:02:06 +0000 (09:02 -0700)

Merge branch 'js/fast-export-paths-with-spaces'

"git fast-export" produced an input stream for fast-import without
properly quoting pathnames when they contain SPs in them.

* js/fast-export-paths-with-spaces:
fast-export: quote paths with spaces

Merge branch 'cw/no-detaching-an-unborn'Junio C Hamano Mon, 9 Jul 2012 16:02:00 +0000 (09:02 -0700)

Merge branch 'cw/no-detaching-an-unborn'

"git checkout --detach", when you are still on an unborn branch,
should be forbidden, but it wasn't.

* cw/no-detaching-an-unborn:
git-checkout: disallow --detach on unborn branch

Merge branch 'vr/use-our-perl-in-tests'Junio C Hamano Mon, 9 Jul 2012 16:01:52 +0000 (09:01 -0700)

Merge branch 'vr/use-our-perl-in-tests'

Some implementations of Perl terminates "lines" with CRLF even when
the script is operating on just a sequence of bytes. Make sure to
use "$PERL_PATH", the version of Perl the user told Git to use, in
our tests to avoid unnecessary breakages in tests.

* vr/use-our-perl-in-tests:
t/README: add a bit more Don'ts
tests: enclose $PERL_PATH in double quotes
t/test-lib.sh: export PERL_PATH for use in scripts
t: Replace 'perl' by $PERL_PATH

Merge branch 'mm/credential-plumbing'Junio C Hamano Mon, 9 Jul 2012 16:01:45 +0000 (09:01 -0700)

Merge branch 'mm/credential-plumbing'

Expose the credential API to scripted Porcelain writers.

* mm/credential-plumbing:
git-remote-mediawiki: update comments to reflect credential support
git-remote-mediawiki: add credential support
git credential fill: output the whole 'struct credential'
add 'git credential' plumbing command

Merge branch 'jc/maint-blame-unique-abbrev'Junio C Hamano Mon, 9 Jul 2012 16:01:37 +0000 (09:01 -0700)

Merge branch 'jc/maint-blame-unique-abbrev'

"git blame" did not try to make sure the abbreviated commit object
names in its output are unique.

* jc/maint-blame-unique-abbrev:
blame: compute abbreviation width that ensures uniqueness

Merge branch 'jn/perl-makemaker-leading-paths'Junio C Hamano Mon, 9 Jul 2012 16:00:53 +0000 (09:00 -0700)

Merge branch 'jn/perl-makemaker-leading-paths'

* jn/perl-makemaker-leading-paths:
perl/Makefile: Fix a missing double-quote
perl/Makefile: move "mkdir -p" to module installation loop for maintainability

Merge branch 'rj/platform-pread-may-be-thread-unsafe'Junio C Hamano Mon, 9 Jul 2012 16:00:45 +0000 (09:00 -0700)

Merge branch 'rj/platform-pread-may-be-thread-unsafe'

On Cygwin, the platform pread(3) is not thread safe, just like our
own compat/ emulation, and cannot be used in the index-pack program.

* rj/platform-pread-may-be-thread-unsafe:
index-pack: Disable threading on cygwin

Merge branch 'mm/config-xdg'Junio C Hamano Mon, 9 Jul 2012 16:00:35 +0000 (09:00 -0700)

Merge branch 'mm/config-xdg'

Teach git to read various information from $XDG_CONFIG_HOME/git/ to allow
the user to avoid cluttering $HOME.

* mm/config-xdg:
config: write to $XDG_CONFIG_HOME/git/config file when appropriate
Let core.attributesfile default to $XDG_CONFIG_HOME/git/attributes
Let core.excludesfile default to $XDG_CONFIG_HOME/git/ignore
config: read (but not write) from $XDG_CONFIG_HOME/git/config file

git on Mac OS and precomposed unicodeTorsten Bögershausen Sun, 8 Jul 2012 13:50:25 +0000 (15:50 +0200)

git on Mac OS and precomposed unicode

Mac OS X mangles file names containing unicode on file systems HFS+,
VFAT or SAMBA. When a file using unicode code points outside ASCII
is created on a HFS+ drive, the file name is converted into
decomposed unicode and written to disk. No conversion is done if
the file name is already decomposed unicode.

Calling open("\xc3\x84", ...) with a precomposed "Ä" yields the same
result as open("\x41\xcc\x88",...) with a decomposed "Ä".

As a consequence, readdir() returns the file names in decomposed
unicode, even if the user expects precomposed unicode. Unlike on
HFS+, Mac OS X stores files on a VFAT drive (e.g. an USB drive) in
precomposed unicode, but readdir() still returns file names in
decomposed unicode. When a git repository is stored on a network
share using SAMBA, file names are send over the wire and written to
disk on the remote system in precomposed unicode, but Mac OS X
readdir() returns decomposed unicode to be compatible with its
behaviour on HFS+ and VFAT.

The unicode decomposition causes many problems:

- The names "git add" and other commands get from the end user may
often be precomposed form (the decomposed form is not easily input
from the keyboard), but when the commands read from the filesystem
to see what it is going to update the index with already is on the
filesystem, readdir() will give decomposed form, which is different.

- Similarly "git log", "git mv" and all other commands that need to
compare pathnames found on the command line (often but not always
precomposed form; a command line input resulting from globbing may
be in decomposed) with pathnames found in the tree objects (should
be precomposed form to be compatible with other systems and for
consistency in general).

- The same for names stored in the index, which should be
precomposed, that may need to be compared with the names read from
readdir().

NFS mounted from Linux is fully transparent and does not suffer from
the above.

As Mac OS X treats precomposed and decomposed file names as equal,
we can

- wrap readdir() on Mac OS X to return the precomposed form, and

- normalize decomposed form given from the command line also to the
precomposed form,

to ensure that all pathnames used in Git are always in the
precomposed form. This behaviour can be requested by setting
"core.precomposedunicode" configuration variable to true.

The code in compat/precomposed_utf8.c implements basically 4 new
functions: precomposed_utf8_opendir(), precomposed_utf8_readdir(),
precomposed_utf8_closedir() and precompose_argv(). The first three
are to wrap opendir(3), readdir(3), and closedir(3) functions.

The argv[] conversion allows to use the TAB filename completion done
by the shell on command line. It tolerates other tools which use
readdir() to feed decomposed file names into git.

When creating a new git repository with "git init" or "git clone",
"core.precomposedunicode" will be set "false".

The user needs to activate this feature manually. She typically
sets core.precomposedunicode to "true" on HFS and VFAT, or file
systems mounted via SAMBA.

Helped-by: Junio C Hamano <gitster@pobox.com>
Signed-off-by: Torsten Bögershausen <tboegi@web.de>
Signed-off-by: Junio C Hamano <gitster@pobox.com>

Replace strlen() with ce_namelen()Thomas Gummerer Fri, 6 Jul 2012 16:07:30 +0000 (18:07 +0200)

Replace strlen() with ce_namelen()

Replace strlen(ce->name) with ce_namelen() in a couple
of places which gives us some additional bits of
performance.

Signed-off-by: Thomas Gummerer <t.gummerer@gmail.com>
Signed-off-by: Junio C Hamano <gitster@pobox.com>

git-remote-mediawiki: update comments to reflect creden... Matthieu Moy Sun, 8 Jul 2012 16:18:28 +0000 (18:18 +0200)

git-remote-mediawiki: update comments to reflect credential support

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

git-remote-mediawiki: be more defensive when requests... Matthieu Moy Fri, 6 Jul 2012 10:03:15 +0000 (12:03 +0200)

git-remote-mediawiki: be more defensive when requests fail

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

git-remote-mediawiki: more efficient 'pull' in the... Matthieu Moy Fri, 6 Jul 2012 10:03:14 +0000 (12:03 +0200)

git-remote-mediawiki: more efficient 'pull' in the best case

The only way to fetch new revisions from a wiki before this patch was to
query each page for new revisions. This is good when tracking a small set
of pages on a large wiki, but very inefficient when tracking many pages
on a wiki with little activity.

Implement a new strategy that queries the wiki for its last global
revision, queries each new revision, and filter out pages that are not
tracked.

Signed-off-by: Simon Perrat <simon.perrat@ensimag.imag.fr>
Signed-off-by: Simon CATHEBRAS <Simon.Cathebras@ensimag.imag.fr>
Signed-off-by: Julien KHAYAT <Julien.Khayat@ensimag.imag.fr>
Signed-off-by: Charles ROUSSEL <Charles.Roussel@ensimag.imag.fr>
Signed-off-by: Guillaume SASDY <Guillaume.Sasdy@ensimag.imag.fr>
Signed-off-by: Matthieu Moy <Matthieu.Moy@imag.fr>
Signed-off-by: Junio C Hamano <gitster@pobox.com>

git-remote-mediawiki: extract revision-importing loop... Matthieu Moy Fri, 6 Jul 2012 10:03:13 +0000 (12:03 +0200)

git-remote-mediawiki: extract revision-importing loop to a function

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

git-remote-mediawiki: refactor loop over revision idsMatthieu Moy Fri, 6 Jul 2012 10:03:12 +0000 (12:03 +0200)

git-remote-mediawiki: refactor loop over revision ids

Without changing the behavior, we turn the foreach loop on an array of
revisions into a loop on an array of integer. It will be easier to
implement other strategies as they will only need to produce an array of
integer instead of a more complex data-structure.

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

git-remote-mediawiki: change return type of get_mw_pagesMatthieu Moy Fri, 6 Jul 2012 10:03:11 +0000 (12:03 +0200)

git-remote-mediawiki: change return type of get_mw_pages

The previous version was returning the list of pages to be fetched, but
we are going to need an efficient membership test (i.e. is the page
$title tracked), hence exposing a hash will be more convenient.

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

git-remote-mediawiki (t9363): test 'File:' import and... NGUYEN Kim Thuat Fri, 6 Jul 2012 10:03:10 +0000 (12:03 +0200)

git-remote-mediawiki (t9363): test 'File:' import and export

Signed-off-by: Pavel Volek <Pavel.Volek@ensimag.imag.fr>
Signed-off-by: NGUYEN Kim Thuat <Kim-Thuat.Nguyen@ensimag.imag.fr>
Signed-off-by: ROUCHER IGLESIAS Javier <roucherj@ensimag.imag.fr>
Signed-off-by: Matthieu Moy <Matthieu.Moy@imag.fr>
Signed-off-by: Junio C Hamano <gitster@pobox.com>

git-remote-mediawiki: support for uploading file in... Matthieu Moy Fri, 6 Jul 2012 10:03:09 +0000 (12:03 +0200)

git-remote-mediawiki: support for uploading file in test environment

This will be used for testing git-remote-mediawiki's import feature on a
wiki containing media files.

Signed-off-by: Simon CATHEBRAS <Simon.Cathebras@ensimag.imag.fr>
Signed-off-by: Julien KHAYAT <Julien.Khayat@ensimag.imag.fr>
Signed-off-by: Simon Perrat <simon.perrat@ensimag.imag.fr>
Signed-off-by: Charles ROUSSEL <Charles.Roussel@ensimag.imag.fr>
Signed-off-by: Guillaume SASDY <Guillaume.Sasdy@ensimag.imag.fr>
Signed-off-by: Matthieu Moy <Matthieu.Moy@imag.fr>
Signed-off-by: Junio C Hamano <gitster@pobox.com>

git-remote-mediawiki (t9362): test git-remote-mediawiki... Simon Cathebras Fri, 6 Jul 2012 10:03:08 +0000 (12:03 +0200)

git-remote-mediawiki (t9362): test git-remote-mediawiki with UTF8 characters

Non-ascii encoding create many particular cases when used in page
content, name, and edit/commit message. Test these cases.

Signed-off-by: Simon CATHEBRAS <Simon.Cathebras@ensimag.imag.fr>
Signed-off-by: Julien KHAYAT <Julien.Khayat@ensimag.imag.fr>
Signed-off-by: Simon Perrat <simon.perrat@ensimag.imag.fr>
Signed-off-by: Charles ROUSSEL <Charles.Roussel@ensimag.imag.fr>
Signed-off-by: Guillaume SASDY <Guillaume.Sasdy@ensimag.imag.fr>
Signed-off-by: Matthieu Moy <Matthieu.Moy@imag.fr>
Signed-off-by: Junio C Hamano <gitster@pobox.com>

git-remote-mediawiki (t9361): test git-remote-mediawiki... Guillaume Sasdy Fri, 6 Jul 2012 10:03:07 +0000 (12:03 +0200)

git-remote-mediawiki (t9361): test git-remote-mediawiki pull and push

This patch provides a set of tests for the pull and push fonctionnality
of git-remote-mediawiki. The actual tests are kept in a separate function
to allow further tests to re-run the same set of commands with different
push and pull strategies.

Signed-off-by: Simon CATHEBRAS <Simon.Cathebras@ensimag.imag.fr>
Signed-off-by: Julien KHAYAT <Julien.Khayat@ensimag.imag.fr>
Signed-off-by: Simon Perrat <simon.perrat@ensimag.imag.fr>
Signed-off-by: Charles ROUSSEL <Charles.Roussel@ensimag.imag.fr>
Signed-off-by: Guillaume SASDY <Guillaume.Sasdy@ensimag.imag.fr>
Signed-off-by: Matthieu Moy <Matthieu.Moy@imag.fr>
Signed-off-by: Junio C Hamano <gitster@pobox.com>

git-remote-mediawiki (t9360): test git-remote-mediawiki... Guillaume Sasdy Fri, 6 Jul 2012 10:03:06 +0000 (12:03 +0200)

git-remote-mediawiki (t9360): test git-remote-mediawiki clone

Signed-off-by: Simon CATHEBRAS <Simon.Cathebras@ensimag.imag.fr>
Signed-off-by: Julien KHAYAT <Julien.Khayat@ensimag.imag.fr>
Signed-off-by: Simon Perrat <simon.perrat@ensimag.imag.fr>
Signed-off-by: Charles ROUSSEL <Charles.Roussel@ensimag.imag.fr>
Signed-off-by: Guillaume SASDY <Guillaume.Sasdy@ensimag.imag.fr>
Signed-off-by: Matthieu Moy <Matthieu.Moy@imag.fr>
Signed-off-by: Junio C Hamano <gitster@pobox.com>

git-remote-mediawiki: test environment of git-remote... Guillaume Sasdy Fri, 6 Jul 2012 10:03:05 +0000 (12:03 +0200)

git-remote-mediawiki: test environment of git-remote-mediawiki

In order to test git-remote-mediawiki, a set of functions is needed to
manage a MediaWiki: edit a page, remove a page, fetch a page, fetch all
pages on a given wiki.

A few helper function are also provided to check the content of
directories.

In addition, this patch provides Makefiles to execute tests.
See the README file for more details.

Signed-off-by: Simon CATHEBRAS <Simon.Cathebras@ensimag.imag.fr>
Signed-off-by: Julien KHAYAT <Julien.Khayat@ensimag.imag.fr>
Signed-off-by: Simon Perrat <simon.perrat@ensimag.imag.fr>
Signed-off-by: Charles ROUSSEL <Charles.Roussel@ensimag.imag.fr>
Signed-off-by: Guillaume SASDY <Guillaume.Sasdy@ensimag.imag.fr>
Signed-off-by: Matthieu Moy <Matthieu.Moy@imag.fr>
Signed-off-by: Junio C Hamano <gitster@pobox.com>

git-remote-mediawiki: scripts to install, delete and... Guillaume Sasdy Fri, 6 Jul 2012 10:03:04 +0000 (12:03 +0200)

git-remote-mediawiki: scripts to install, delete and clear a MediaWiki

install_wiki.sh allows the user to install a MediaWiki instance in a
single shell command. Like "git instaweb", it configures and launches
lighttpd without requiring root priviledges. To simplify database
management, it uses SQLite, which doesn't require a running daemon, and
allows reseting the database by simply replacing a single file. This
allows install_wiki to also defines a function wiki_reset which clear all
content of the previously created wiki, which will be very useful to run
several indepenant tests on the same wiki.

Note those functionnalities are made to be used from the user command
line in the directory git/contrib/mw-to-git/t/

Signed-off-by: Simon CATHEBRAS <Simon.Cathebras@ensimag.imag.fr>
Signed-off-by: Julien KHAYAT <Julien.Khayat@ensimag.imag.fr>
Signed-off-by: Simon Perrat <simon.perrat@ensimag.imag.fr>
Signed-off-by: Charles ROUSSEL <Charles.Roussel@ensimag.imag.fr>
Signed-off-by: Guillaume SASDY <Guillaume.Sasdy@ensimag.imag.fr>
Signed-off-by: Matthieu Moy <Matthieu.Moy@imag.fr>
Signed-off-by: Junio C Hamano <gitster@pobox.com>

vcs-svn: allow 64-bit Prop-Content-LengthJonathan Nieder Fri, 6 Jul 2012 03:47:47 +0000 (22:47 -0500)

vcs-svn: allow 64-bit Prop-Content-Length

Currently the vcs-svn/ library only pays attention to the presence of
the Prop-Content-Length field and doesn't care about its value, but
some day we might care about the value. Parse it as an off_t instead
of arbitrarily limiting to 32 bits for intuitiveness.

So now you can import from a dump with more than 2 GiB of properties
for a node. In practice that isn't likely to happen often, and this
is mostly meant as a cleanup.

Based-on-patch-by: David Barr <davidbarr@google.com>
Signed-off-by: Jonathan Nieder <jrnieder@gmail.com>

vcs-svn: suppress a signed/unsigned comparison warningJonathan Nieder Fri, 6 Jul 2012 03:21:09 +0000 (22:21 -0500)

vcs-svn: suppress a signed/unsigned comparison warning

All callers pass a nonnegative delta_len, so the code is already safe.
Add an assertion to ensure that remains so and add a cast to keep
clang and gcc -Wsign-compare from worrying.

Reported-by: David Barr <davidbarr@google.com>
Signed-off-by: Jonathan Nieder <jrnieder@gmail.com>

vcs-svn: suppress a signed/unsigned comparison warningDavid Barr Thu, 31 May 2012 14:41:29 +0000 (00:41 +1000)

vcs-svn: suppress a signed/unsigned comparison warning

The preceding code checks that view->max_off is nonnegative and
(off + width) fits in an off_t, so this code is already safe.

Signed-off-by: David Barr <davidbarr@google.com>
Signed-off-by: Jonathan Nieder <jrnieder@gmail.com>

vcs-svn: suppress signed/unsigned comparison warningsDavid Barr Thu, 31 May 2012 14:41:29 +0000 (00:41 +1000)

vcs-svn: suppress signed/unsigned comparison warnings

These are already safe because both sides of the comparison are
nonnegative.

This would normally not be important because Git is not -Wsign-compare
clean anyway, but we like to keep the vcs-svn/ lib to a higher
standard for convenience using it in other projects.

Signed-off-by: David Barr <davidbarr@google.com>
Signed-off-by: Jonathan Nieder <jrnieder@gmail.com>

vcs-svn: use strstr instead of memmemDavid Barr Thu, 31 May 2012 14:41:28 +0000 (00:41 +1000)

vcs-svn: use strstr instead of memmem

memmem is a GNU extension.

Avoiding it makes the code clearer and makes it easier for projects
that don't share git's compat/ code, such as the standalone
svn-dump-fast-export project, to reuse the vcs-svn/ library.

Signed-off-by: David Barr <davidbarr@google.com>
Signed-off-by: Jonathan Nieder <jrnieder@gmail.com>

vcs-svn: use constcmp instead of prefixcmpDavid Barr Thu, 31 May 2012 14:41:27 +0000 (00:41 +1000)

vcs-svn: use constcmp instead of prefixcmp

Since the length of t is already known, we can simplify a little by
using memcmp() instead of strncmp() to carry out a prefix comparison.
All nearby code already does this.

Noticed in the standalone svn-dump-fast-export project which has not
needed to implement prefixcmp() yet.

Signed-off-by: David Barr <davidbarr@google.com>
Signed-off-by: Jonathan Nieder <jrnieder@gmail.com>

vcs-svn: simplify cleanup in apply_one_windowDavid Barr Thu, 31 May 2012 14:41:26 +0000 (00:41 +1000)

vcs-svn: simplify cleanup in apply_one_window

Currently the cleanup code looks like this:

free resources
return 0;
error_out:
free resources
return -1;

Avoid duplicating the "free resources" part by keeping the return
value in a variable and sharing code between the success and
exceptional case:

ret = 0;
out:
free resources
return ret;

Noticed in the svn-dump-fast-export project, where using the error()
macro in void context produces a warning.

Signed-off-by: David Barr <davidbarr@google.com>
Signed-off-by: Jonathan Nieder <jrnieder@gmail.com>

vcs-svn: avoid self-assignment in dummy initialization... David Barr Thu, 31 May 2012 14:41:25 +0000 (00:41 +1000)

vcs-svn: avoid self-assignment in dummy initialization of pre_off

Without this change, clang complains:

vcs-svn/svndiff.c:298:3: warning: Assigned value is garbage or undefined
off_t pre_off = pre_off; /* stupid GCC... */
^ ~~~~~~~

This code uses an old and common idiom for suppressing an
"uninitialized variable" warning, and clang is wrong to warn about it.
The idiom tells the compiler to leave the variable uninitialized,
which saves a few bytes of code size, and, more importantly, allows
valgrind to check at runtime that the variable is properly initialized
by the time it is used.

But MSVC and clang do not know that idiom, so let's avoid it in
vcs-svn/ code.

Initialize pre_off to -1, a recognizably meaningless value, to allow
future code changes that cause pre_off to be used before it is
initialized to be caught early.

Signed-off-by: David Barr <davidbarr@google.com>
Signed-off-by: Jonathan Nieder <jrnieder@gmail.com>

vcs-svn: drop no-op reset methodsDavid Barr Thu, 31 May 2012 14:41:30 +0000 (00:41 +1000)

vcs-svn: drop no-op reset methods

Since v1.7.5~42^2~6 (vcs-svn: remove buffer_read_string)
buffer_reset() does nothing thus fast_export_reset() also.

Signed-off-by: David Barr <davidbarr@google.com>
Signed-off-by: Jonathan Nieder <jrnieder@gmail.com>

l10n: zh_CN.po: translate 29 new messagesJiang Xin Wed, 4 Jul 2012 09:20:34 +0000 (17:20 +0800)

l10n: zh_CN.po: translate 29 new messages

Translate 29 new messages came from git.pot update in 11b9017
(l10n: Update git.pot (29 new messages))

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

l10n: de.po: translate 29 new messagesRalf Thielow Tue, 3 Jul 2012 16:02:11 +0000 (18:02 +0200)

l10n: de.po: translate 29 new messages

Translate 29 new messages came from git.pot update
in 11b9017 (l10n: Update git.pot (29 new messages)).

Signed-off-by: Ralf Thielow <ralf.thielow@gmail.com>

git-remote-mediawiki: improve support for non-English... Matthieu Moy Wed, 4 Jul 2012 12:53:36 +0000 (14:53 +0200)

git-remote-mediawiki: improve support for non-English Wikis

Mediafiles can live in namespaces with names different from Image
and File. While at it, rework the code to make it simpler and easier
to read.

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

Fourth batch for 1.7.12Junio C Hamano Thu, 5 Jul 2012 06:48:37 +0000 (23:48 -0700)

Fourth batch for 1.7.12

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

Merge branch 'nd/clone-single-fix'Junio C Hamano Thu, 5 Jul 2012 06:41:41 +0000 (23:41 -0700)

Merge branch 'nd/clone-single-fix'

"git clone --single-branch" to clone a single branch did not limit
the cloning to the specified branch.

* nd/clone-single-fix:
clone: fix ref selection in --single-branch --branch=xxx

Merge branch 'th/diff-no-index-fixes'Junio C Hamano Thu, 5 Jul 2012 06:40:38 +0000 (23:40 -0700)

Merge branch 'th/diff-no-index-fixes'

"git diff --no-index" did not correctly handle relative paths and
did not give correct exit codes when run under "--quiet" option.

* th/diff-no-index-fixes:
diff-no-index: exit(1) if 'diff --quiet <repo file> <external file>' finds changes
diff: handle relative paths in no-index

Merge branch 'hv/remote-end-hung-up'Junio C Hamano Thu, 5 Jul 2012 06:40:11 +0000 (23:40 -0700)

Merge branch 'hv/remote-end-hung-up'

When we get disconnected while expecting a response from the remote
side because authentication failed, we issued an error message "The
remote side hung up unexpectedly."

Give hint that it may be a permission problem in the message when we
can reasonably suspect it.

* hv/remote-end-hung-up:
remove the impression of unexpectedness when access is denied

Update Swedish translation (1095t0f0u)Peter Krefting Wed, 4 Jul 2012 18:34:21 +0000 (19:34 +0100)

Update Swedish translation (1095t0f0u)

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

Fix formatting in git-config(1)Andreas Schwab Sat, 23 Jun 2012 13:18:00 +0000 (15:18 +0200)

Fix formatting in git-config(1)

This fixes two formatting bugs in the git-config documentation:

- in the column.ui entry don't indent the last paragraph so that it isn't
formatted as a literal paragraph
- in the push.default entry separate the last paragraph from the
nested list.

Signed-off-by: Andreas Schwab <schwab@linux-m68k.org>
Signed-off-by: Junio C Hamano <gitster@pobox.com>

l10n: Update translation for VietnameseTran Ngoc Quan Tue, 3 Jul 2012 07:22:32 +0000 (14:22 +0700)

l10n: Update translation for Vietnamese

* Translated 29 news
* Fix some minor errors in old translation

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

l10n: Update git.pot (29 new messages)Jiang Xin Tue, 3 Jul 2012 02:31:59 +0000 (10:31 +0800)

l10n: Update git.pot (29 new messages)

Generate po/git.pot from v1.7.11.1-107-g72601, and there are 29 new l10n
messages.

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

Sync with i18n-po updates in maintJunio C Hamano Mon, 2 Jul 2012 22:37:54 +0000 (15:37 -0700)

Sync with i18n-po updates in maint

# By Peter Krefting
# Via Junio C Hamano (1) and Peter Krefting (1)
* maint:
Update Swedish translation (1066t0f0u)

Merge branch 'maint' of git://github.com/git-l10n/git... Junio C Hamano Mon, 2 Jul 2012 22:36:52 +0000 (15:36 -0700)

Merge branch 'maint' of git://github.com/git-l10n/git-po into maint

Update Swedish translation (1066t0f0u)

blame: compute abbreviation width that ensures uniquenessJunio C Hamano Mon, 2 Jul 2012 07:54:00 +0000 (00:54 -0700)

blame: compute abbreviation width that ensures uniqueness

Julia Lawall noticed that in linux-next repository the commit object
60d5c9f5 (shown with the default abbreviation width baked into "git
blame") in output from

$ git blame -L 3675,3675 60d5c9f5b -- \
drivers/staging/brcm80211/brcmfmac/wl_iw.c

is no longer unique in the repository, which results in "short SHA1
60d5c9f5 is ambiguous".

Compute the minimum abbreviation width that ensures uniqueness when
the user did not specify the --abbrev option to avoid this.

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

Update Swedish translation (1066t0f0u)Peter Krefting Sun, 1 Jul 2012 22:04:09 +0000 (23:04 +0100)

Update Swedish translation (1066t0f0u)

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

perl/Makefile: Fix a missing double-quoteJohannes Sixt Fri, 29 Jun 2012 08:07:44 +0000 (10:07 +0200)

perl/Makefile: Fix a missing double-quote

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

diff-index.c: "git diff" has no need to read blob from... Junio C Hamano Thu, 28 Jun 2012 03:14:47 +0000 (20:14 -0700)

diff-index.c: "git diff" has no need to read blob from the standard input

Only "diff --no-index -" does. Bolting the logic into the low-level
function diff_populate_filespec() was a layering violation from day
one. Move populate_from_stdin() function out of the generic diff.c
to its only user, diff-index.c.

Also make sure "-" from the command line stays a special token "read
from the standard input", even if we later decide to sanitize the
result from prefix_filename() function in a few obvious ways,
e.g. removing unnecessary "./" prefix, duplicated slashes "//" in
the middle, etc.

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

diff-index.c: unify handling of command line pathsJunio C Hamano Wed, 27 Jun 2012 19:05:52 +0000 (12:05 -0700)

diff-index.c: unify handling of command line paths

Regardless of where in the directory hierarchy you are, "-" on the
command line means the standard input. The old code knew too much
about how the low level machinery uses paths to read from the
working tree and did not bother to have the same check for "-" when
the command is run from the top-level.

Unify the codepaths for subdirectory case and toplevel case into one
and make it clearer.

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

diff-index.c: do not pretend paths are pathspecsJunio C Hamano Wed, 27 Jun 2012 18:51:15 +0000 (11:51 -0700)

diff-index.c: do not pretend paths are pathspecs

"git diff --no-index" takes exactly two paths, not pathspecs, and
has its own way queue_diff() to populate the diff_queue. Do not
call diff_tree_setup_paths(), pretending as it takes pathspecs.

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

Third batch for 1.7.12Junio C Hamano Thu, 28 Jun 2012 22:35:37 +0000 (15:35 -0700)

Third batch for 1.7.12

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

Merge branch 'fc/git-prompt-script'Junio C Hamano Thu, 28 Jun 2012 22:21:00 +0000 (15:21 -0700)

Merge branch 'fc/git-prompt-script'

Split a rather heavy-ish "git completion" script out to create a
separate "git prompting" script, to help lazy-autoloading of the
completion part while making prompting part always available.

Merge branch 'js/submodule-relative'Junio C Hamano Thu, 28 Jun 2012 22:20:55 +0000 (15:20 -0700)

Merge branch 'js/submodule-relative'

Teach "git submodule" deal with nested submodule structure where a
module is contained within a module whose origin is specified as a
relative URL to its superproject's origin.

Merge branch 'lk/more-helpful-status-hints'Junio C Hamano Thu, 28 Jun 2012 22:20:35 +0000 (15:20 -0700)

Merge branch 'lk/more-helpful-status-hints'

Give finer classification to various states of paths in conflicted
state and offer advice messages in the "git status" output.

Merge branch 'lk/rebase-i-x'Junio C Hamano Thu, 28 Jun 2012 22:20:23 +0000 (15:20 -0700)

Merge branch 'lk/rebase-i-x'

Teach "-x <cmd>" to "rebase -i" to insert "exec <cmd>" after each
commit in the resulting history.

Merge branch 'jc/rev-list-simplify-merges-first-parent'Junio C Hamano Thu, 28 Jun 2012 22:20:16 +0000 (15:20 -0700)

Merge branch 'jc/rev-list-simplify-merges-first-parent'

When "--simplify-merges/by-decoration" is given together with
"--first-parent" to "git log", the combination of these options
makes the simplification logic to use in-core commit objects that
haven't been examined for relevance, either producing incorrect
result or taking too long to produce any output. Teach the
simplification logic to ignore commits that the first-parent
traversal logic ignored when both are in effect to work around the
issue.

Merge branch 'hv/submodule-update-nuke-submodules'Junio C Hamano Thu, 28 Jun 2012 22:20:08 +0000 (15:20 -0700)

Merge branch 'hv/submodule-update-nuke-submodules'

"git add" allows adding a regular file to the path where a submodule
used to exist, but "git update-index" does not allow an equivalent
operation to Porcelain writers.

Merge branch 'nd/exclude-workaround-top-heavy'Junio C Hamano Thu, 28 Jun 2012 22:19:57 +0000 (15:19 -0700)

Merge branch 'nd/exclude-workaround-top-heavy'

Attempt to optimize matching with an exclude pattern with a deep
directory hierarchy by taking the part that specifies leading path
without wildcard literally.

Merge branch 'nd/stream-pack-objects'Junio C Hamano Thu, 28 Jun 2012 22:19:51 +0000 (15:19 -0700)

Merge branch 'nd/stream-pack-objects'

"pack-objects" learned to read large loose blobs using the streaming API,
without the need to hold everything in core at once.

Merge branch 'nd/stream-index-pack'Junio C Hamano Thu, 28 Jun 2012 22:19:42 +0000 (15:19 -0700)

Merge branch 'nd/stream-index-pack'

Use streaming API to read from the object store to avoid having to hold
a large blob object in-core while running index-pack.

Merge branch 'mm/verify-filename-fix'Junio C Hamano Thu, 28 Jun 2012 22:19:31 +0000 (15:19 -0700)

Merge branch 'mm/verify-filename-fix'

"git diff COPYING HEAD:COPYING" gave a nonsense error message that
claimed that the treeish HEAD did not have COPYING in it.

Merge branch 'jk/diff-no-index-pager'Junio C Hamano Thu, 28 Jun 2012 22:19:11 +0000 (15:19 -0700)

Merge branch 'jk/diff-no-index-pager'

"git diff --no-index" did not work with pagers correctly.

Allow help.htmlpath to be a URL prefixChris Webb Thu, 28 Jun 2012 06:58:03 +0000 (07:58 +0100)

Allow help.htmlpath to be a URL prefix

Setting this to a URL prefix instead of a path to a local directory allows
git-help --web to work even when HTML docs aren't locally installed, by
pointing the browser at a copy accessible on the web. For example,

[help]
format = html
htmlpath = http://git-scm.com/docs

will use the publicly available documentation on the git homepage.

Signed-off-by: Chris Webb <chris@arachsys.com>
Signed-off-by: Junio C Hamano <gitster@pobox.com>

Add config variable to set HTML path for git-help ... Chris Webb Thu, 28 Jun 2012 06:58:02 +0000 (07:58 +0100)

Add config variable to set HTML path for git-help --web

If set in git-config, help.htmlpath overrides system_path(GIT_HTML_PATH)
which was compiled in. This allows users to repoint system-wide git at
their own copy of the documentation without recompiling.

Signed-off-by: Chris Webb <chris@arachsys.com>
Signed-off-by: Junio C Hamano <gitster@pobox.com>

git p4 test: fix badp4dir testPete Wyckoff Wed, 27 Jun 2012 12:01:03 +0000 (08:01 -0400)

git p4 test: fix badp4dir test

The construct used to get the return code was flawed, in that
errors in the &&-chain before the semicolon were not caught. Use
the standard test_expect_code instead.

Set PATH in a subshell instead of relying on the bashism of
setting it just for a single command.

And fix the grep line so it doesn't worry about grep segfaults,
and doesn't fail for i18n issues.

Reported-by: Johannes Sixt <j.sixt@viscovery.net>
Signed-off-by: Pete Wyckoff <pw@padd.com>
Signed-off-by: Junio C Hamano <gitster@pobox.com>

git p4 test: split up big t9800 testPete Wyckoff Wed, 27 Jun 2012 12:01:02 +0000 (08:01 -0400)

git p4 test: split up big t9800 test

The original t9800 test code has a mix of assorted topics, some
of which are big enough to deserve their own homes.
Interdependencies between the topics make it confusing when
trying to study one in isolation. And it takes so long to run
that debugging an individual test is difficult.

Split out three big chunks of tests into their own files:

t9812-git-p4-wildcards.sh gets the 8 p4 wildcard tests

t9813-git-p4-preserve-users.sh gets the 4 --preserve-user tests

t9814-git-p4-rename.sh gets the 2 copy and rename tests

Test 9800 execution time drops from 29 sec to 9 sec. The
sequential time to run all tests is a slower due to the three
extra p4d startup/shutdown sequences, but the overall parallel
execution time is about the same, at 52 sec.

Signed-off-by: Pete Wyckoff <pw@padd.com>
Signed-off-by: Junio C Hamano <gitster@pobox.com>

git p4 test: cleanup_git should make a new $gitPete Wyckoff Wed, 27 Jun 2012 12:01:01 +0000 (08:01 -0400)

git p4 test: cleanup_git should make a new $git

For convenience, leave one in place at the end of each
test so that it is not necessary to build a new one. This
makes it consistent with $cli.

Signed-off-by: Pete Wyckoff <pw@padd.com>
Signed-off-by: Junio C Hamano <gitster@pobox.com>

git p4 test: copy source indeterminatePete Wyckoff Wed, 27 Jun 2012 12:01:00 +0000 (08:01 -0400)

git p4 test: copy source indeterminate

Msysgit testing showed that the source file found by copy
detection is indeterminate when there are multiple sources
to choose from. This appears to be valid. Adjust the test
so that it passes if it finds any of the potential copy sources.

Signed-off-by: Pete Wyckoff <pw@padd.com>
Signed-off-by: Junio C Hamano <gitster@pobox.com>

git p4 test: check for error message in failed testPete Wyckoff Wed, 27 Jun 2012 12:00:59 +0000 (08:00 -0400)

git p4 test: check for error message in failed test

Make sure the test fails for the expected reason.

Signed-off-by: Pete Wyckoff <pw@padd.com>
Signed-off-by: Junio C Hamano <gitster@pobox.com>

git p4 test: rename some "git-p4 command" stringsPete Wyckoff Wed, 27 Jun 2012 12:00:58 +0000 (08:00 -0400)

git p4 test: rename some "git-p4 command" strings

Use the actual command name; git-p4 is gone.

Signed-off-by: Pete Wyckoff <pw@padd.com>
Signed-off-by: Junio C Hamano <gitster@pobox.com>