Junio C Hamano [Sat, 12 Jan 2013 02:35:07 +0000 (18:35 -0800)]
Merge branch 'jk/maint-fast-import-doc-reorder'
* jk/maint-fast-import-doc-reorder:
git-fast-import(1): reorganise options
git-fast-import(1): combine documentation of --[no-]relative-marks
Junio C Hamano [Sat, 12 Jan 2013 02:35:01 +0000 (18:35 -0800)]
Merge branch 'jk/shortlog-no-wrap-doc'
* jk/shortlog-no-wrap-doc:
git-shortlog(1): document behaviour of zero-width wrap
Junio C Hamano [Sat, 12 Jan 2013 02:34:55 +0000 (18:34 -0800)]
Merge branch 'rs/zip-with-uncompressed-size-in-the-header'
Improve compatibility of our zip output to fill uncompressed size
in the header, which we can do without seeking back (even though it
should not be necessary).
* rs/zip-with-uncompressed-size-in-the-header:
archive-zip: write uncompressed size into header even with streaming
Junio C Hamano [Sat, 12 Jan 2013 02:34:43 +0000 (18:34 -0800)]
Merge branch 'rs/zip-tests'
Update zip tests to skip some that cannot be handled on platform
unzip.
* rs/zip-tests:
t5003: check if unzip supports symlinks
t5000, t5003: move ZIP tests into their own script
t0024, t5000: use test_lazy_prereq for UNZIP
t0024, t5000: clear variable UNZIP, use GIT_UNZIP instead
Junio C Hamano [Sat, 12 Jan 2013 02:34:38 +0000 (18:34 -0800)]
Merge branch 'jn/xml-depends-on-asciidoc-conf'
* jn/xml-depends-on-asciidoc-conf:
docs: manpage XML depends on asciidoc.conf
Junio C Hamano [Sat, 12 Jan 2013 02:34:32 +0000 (18:34 -0800)]
Merge branch 'jk/unify-exit-code-by-receiving-signal'
The internal logic had to deal with two representations of a death
of a child process by a signal.
* jk/unify-exit-code-by-receiving-signal:
run-command: encode signal death as a positive integer
Junio C Hamano [Sat, 12 Jan 2013 02:34:24 +0000 (18:34 -0800)]
Merge branch 'jc/merge-blobs'
Update the disused merge-tree proof-of-concept code.
* jc/merge-blobs:
merge-tree: fix d/f conflicts
merge-tree: add comments to clarify what these functions are doing
merge-tree: lose unused "resolve_directories"
merge-tree: lose unused "flags" from merge_list
Which merge_file() function do you mean?
Junio C Hamano [Sat, 12 Jan 2013 02:34:10 +0000 (18:34 -0800)]
Merge branch 'jc/format-patch-reroll'
Teach "format-patch" to prefix v4- to its output files for the
fourth iteration of a patch series, to make it easier for the
submitter to keep separate copies for iterations.
* jc/format-patch-reroll:
format-patch: give --reroll-count a short synonym -v
format-patch: document and test --reroll-count
format-patch: add --reroll-count=$N option
get_patch_filename(): split into two functions
get_patch_filename(): drop "just-numbers" hack
get_patch_filename(): simplify function signature
builtin/log.c: stop using global patch_suffix
builtin/log.c: drop redundant "numbered_files" parameter from make_cover_letter()
builtin/log.c: drop unused "numbered" parameter from make_cover_letter()
Junio C Hamano [Sat, 12 Jan 2013 02:33:27 +0000 (18:33 -0800)]
Merge branch 'maint'
Junio C Hamano [Sat, 12 Jan 2013 00:51:01 +0000 (16:51 -0800)]
Merge branch 'as/api-allocation-doc' into maint
* as/api-allocation-doc:
api-allocation-growing.txt: encourage better variable naming
Junio C Hamano [Sat, 12 Jan 2013 00:49:37 +0000 (16:49 -0800)]
Merge branch 'jk/enable-test-lint-by-default' into maint
We have two simple and quick tests to catch common mistakes when
writing test scripts, but we did not run them by default when
running tests.
* jk/enable-test-lint-by-default:
tests: turn on test-lint by default
Junio C Hamano [Sat, 12 Jan 2013 00:49:01 +0000 (16:49 -0800)]
Merge branch 'ap/merge-stop-at-prepare-commit-msg-failure' into maint
"git merge" started calling prepare-commit-msg hook like "git
commit" does some time ago, but forgot to pay attention to the exit
status of the hook.
* ap/merge-stop-at-prepare-commit-msg-failure:
merge: Honor prepare-commit-msg return code
Junio C Hamano [Sat, 12 Jan 2013 00:48:54 +0000 (16:48 -0800)]
Merge branch 'jc/submittingpatches' into maint
* jc/submittingpatches:
SubmittingPatches: give list and maintainer addresses
SubmittingPatches: remove overlong checklist
SubmittingPatches: mention subsystems with dedicated repositories
SubmittingPatches: who am I and who cares?
Junio C Hamano [Sat, 12 Jan 2013 00:48:30 +0000 (16:48 -0800)]
Merge branch 'os/gitweb-highlight-uncaptured' into maint
"gitweb", when sorting by age to show repositories with new
activities first, used to sort repositories with absolutely nothing
in it early, which was not very useful.
* os/gitweb-highlight-uncaptured:
gitweb: fix error in sanitize when highlight is enabled
Junio C Hamano [Sat, 12 Jan 2013 00:48:03 +0000 (16:48 -0800)]
Merge branch 'jn/less-reconfigure' into maint
When autoconf is used, any build on a different commit always ran
"config.status --recheck" even when unnecessary.
* jn/less-reconfigure:
build: do not automatically reconfigure unless configure.ac changed
Junio C Hamano [Sat, 12 Jan 2013 00:47:56 +0000 (16:47 -0800)]
Merge branch 'kb/maint-bundle-doc' into maint
* kb/maint-bundle-doc:
Documentation: full-ness of a bundle is significant for cloning
Documentation: correct example restore from bundle
Junio C Hamano [Sat, 12 Jan 2013 00:47:34 +0000 (16:47 -0800)]
Merge branch 'as/test-name-alias-uniquely' into maint
* as/test-name-alias-uniquely:
Use longer alias names in subdirectory tests
Junio C Hamano [Sat, 12 Jan 2013 00:47:07 +0000 (16:47 -0800)]
Merge branch 'jn/warn-on-inaccessible-loosen' into maint
When attempting to read the XDG-style $HOME/.config/git/config and
finding that $HOME/.config/git is a file, we gave a wrong error
message, instead of treating the case as "a custom config file does
not exist there" and moving on.
* jn/warn-on-inaccessible-loosen:
config: exit on error accessing any config file
doc: advertise GIT_CONFIG_NOSYSTEM
config: treat user and xdg config permission problems as errors
config, gitignore: failure to access with ENOTDIR is ok
Junio C Hamano [Sat, 12 Jan 2013 00:46:46 +0000 (16:46 -0800)]
Merge branch 'ja/directory-attrs' into maint
The attribute mechanism didn't allow limiting attributes to be
applied to only a single directory itself with "path/" like the
exclude mechanism does.
* ja/directory-attrs:
Add directory pattern matching to attributes
Junio C Hamano [Sat, 12 Jan 2013 00:45:44 +0000 (16:45 -0800)]
Merge branch 'jc/fetch-ignore-symref' into maint
"git fetch --mirror" and fetch that uses other forms of refspec with
wildcard used to attempt to update a symbolic ref that match the
wildcard on the receiving end, which made little sense (the real ref
that is pointed at by the symbolic ref would be updated anyway).
Symbolic refs no longer are affected by such a fetch.
* jc/fetch-ignore-symref:
fetch: ignore wildcarded refspecs that update local symbolic refs
Junio C Hamano [Sat, 12 Jan 2013 00:45:06 +0000 (16:45 -0800)]
Merge branch 'ss/svn-prompt' into maint
The way "git svn" asked for password using SSH_ASKPASS and
GIT_ASKPASS was not in line with the rest of the system.
* ss/svn-prompt:
git-svn, perl/Git.pm: extend and use Git->prompt method for querying users
perl/Git.pm: Honor SSH_ASKPASS as fallback if GIT_ASKPASS is not set
git-svn, perl/Git.pm: add central method for prompting passwords
Junio C Hamano [Thu, 10 Jan 2013 22:38:00 +0000 (14:38 -0800)]
Merge branch 'maint'
* maint:
Prepare for 1.8.1.1
Makefile: detect when PYTHON_PATH changes (cherry-picked)
Junio C Hamano [Thu, 10 Jan 2013 22:36:23 +0000 (14:36 -0800)]
Update draft release notes to 1.8.2
Junio C Hamano [Thu, 10 Jan 2013 22:17:13 +0000 (14:17 -0800)]
Prepare for 1.8.1.1
Christian Couder [Tue, 18 Dec 2012 15:26:38 +0000 (16:26 +0100)]
Makefile: detect when PYTHON_PATH changes
When make is run, the python scripts are created from *.py files that
are changed to use the python given by PYTHON_PATH. And PYTHON_PATH
is set by default to /usr/bin/python on Linux.
However, next time make is run with a different value in PYTHON_PATH,
we failed to regenerate these scripts.
Signed-off-by: Christian Couder <chriscool@tuxfamily.org>
Acked-by: Pete Wyckoff <pw@padd.com>
Signed-off-by: Junio C Hamano <gitster@pobox.com>
Junio C Hamano [Thu, 10 Jan 2013 22:11:18 +0000 (14:11 -0800)]
Merge branch 'ta/remove-stale-translated-tut' into maint
* ta/remove-stale-translated-tut:
Remove Documentation/pt_BR/gittutorial.txt
Junio C Hamano [Thu, 10 Jan 2013 22:10:40 +0000 (14:10 -0800)]
Merge branch 'tb/test-t9810-no-sed-i' into maint
* tb/test-t9810-no-sed-i:
t9810: Do not use sed -i
Junio C Hamano [Thu, 10 Jan 2013 22:10:36 +0000 (14:10 -0800)]
Merge branch 'tb/test-t9020-no-which' into maint
* tb/test-t9020-no-which:
t9020: which is not portable
Junio C Hamano [Thu, 10 Jan 2013 22:04:26 +0000 (14:04 -0800)]
Merge branch 'mh/pthreads-autoconf' into maint
* mh/pthreads-autoconf:
configure.ac: fix pthreads detection on Mac OS X
Junio C Hamano [Thu, 10 Jan 2013 22:04:24 +0000 (14:04 -0800)]
Merge branch 'jc/same-encoding' into maint
* jc/same-encoding:
format_commit_message(): simplify calls to logmsg_reencode()
Junio C Hamano [Thu, 10 Jan 2013 22:04:22 +0000 (14:04 -0800)]
Merge branch 'sp/shortlog-missing-lf' into maint
* sp/shortlog-missing-lf:
strbuf_add_wrapped*(): Remove unused return value
shortlog: fix wrapping lines of wraplen
Junio C Hamano [Thu, 10 Jan 2013 22:04:21 +0000 (14:04 -0800)]
Merge branch 'md/gitweb-sort-by-age' into maint
* md/gitweb-sort-by-age:
gitweb: Sort projects with undefined ages last
Junio C Hamano [Thu, 10 Jan 2013 22:04:19 +0000 (14:04 -0800)]
Merge branch 'nd/invalidate-i-t-a-cache-tree' into maint
* nd/invalidate-i-t-a-cache-tree:
cache-tree: invalidate i-t-a paths after generating trees
cache-tree: fix writing cache-tree when CE_REMOVE is present
cache-tree: replace "for" loops in update_one with "while" loops
cache-tree: remove dead i-t-a code in verify_cache()
Junio C Hamano [Thu, 10 Jan 2013 22:04:17 +0000 (14:04 -0800)]
Merge branch 'jk/repack-ref-racefix' into maint
* jk/repack-ref-racefix:
refs: do not use cached refs in repack_without_ref
Junio C Hamano [Thu, 10 Jan 2013 22:03:54 +0000 (14:03 -0800)]
Merge branch 'rb/http-cert-cred-no-username-prompt' into maint
* rb/http-cert-cred-no-username-prompt:
http.c: Avoid username prompt for certifcate credentials
Junio C Hamano [Thu, 10 Jan 2013 21:47:43 +0000 (13:47 -0800)]
Merge branch 'jc/comment-cygwin-win32api-in-makefile'
* jc/comment-cygwin-win32api-in-makefile:
Makefile: add comment on CYGWIN_V15_WIN32API
Junio C Hamano [Thu, 10 Jan 2013 21:47:40 +0000 (13:47 -0800)]
Merge branch 'as/api-allocation-doc'
* as/api-allocation-doc:
api-allocation-growing.txt: encourage better variable naming
Junio C Hamano [Thu, 10 Jan 2013 21:47:35 +0000 (13:47 -0800)]
Merge branch 'rs/leave-base-name-in-name-field-of-tar'
Improve compatibility with implementations of "tar" that do not
like empty name field in header (with the additional prefix field
holding everything).
* rs/leave-base-name-in-name-field-of-tar:
archive-tar: split long paths more carefully
Junio C Hamano [Thu, 10 Jan 2013 21:47:30 +0000 (13:47 -0800)]
Merge branch 'jl/interrupt-clone-remove-separate-git-dir'
When "git clone --separate-git-dir" is interrupted, we failed to
remove the real location we created the repository.
* jl/interrupt-clone-remove-separate-git-dir:
clone: support atomic operation with --separate-git-dir
Junio C Hamano [Thu, 10 Jan 2013 21:47:25 +0000 (13:47 -0800)]
Merge branch 'as/dir-c-cleanup'
Refactor and generally clean up the directory traversal API
implementation.
* as/dir-c-cleanup:
dir.c: rename free_excludes() to clear_exclude_list()
dir.c: refactor is_path_excluded()
dir.c: refactor is_excluded()
dir.c: refactor is_excluded_from_list()
dir.c: rename excluded() to is_excluded()
dir.c: rename excluded_from_list() to is_excluded_from_list()
dir.c: rename path_excluded() to is_path_excluded()
dir.c: rename cryptic 'which' variable to more consistent name
Improve documentation and comments regarding directory traversal API
api-directory-listing.txt: update to match code
Junio C Hamano [Thu, 10 Jan 2013 21:47:20 +0000 (13:47 -0800)]
Merge branch 'jk/config-uname'
Move the bits to set fallback default based on the platform from
the main Makefile to a separate file, so that it can be included in
Makefiles in subdirectories.
* jk/config-uname:
Makefile: hoist uname autodetection to config.mak.uname
Junio C Hamano [Thu, 10 Jan 2013 21:47:15 +0000 (13:47 -0800)]
Merge branch 'nd/wildmatch'
Allows pathname patterns in .gitignore and .gitattributes files
with double-asterisks "foo/**/bar" to match any number of directory
hierarchies.
* nd/wildmatch:
wildmatch: replace variable 'special' with better named ones
compat/fnmatch: respect NO_FNMATCH* even on glibc
wildmatch: fix "**" special case
t3070: Disable some failing fnmatch tests
test-wildmatch: avoid Windows path mangling
Support "**" wildcard in .gitignore and .gitattributes
wildmatch: make /**/ match zero or more directories
wildmatch: adjust "**" behavior
wildmatch: fix case-insensitive matching
wildmatch: remove static variable force_lower_case
wildmatch: make wildmatch's return value compatible with fnmatch
t3070: disable unreliable fnmatch tests
Integrate wildmatch to git
wildmatch: follow Git's coding convention
wildmatch: remove unnecessary functions
Import wildmatch from rsync
ctype: support iscntrl, ispunct, isxdigit and isprint
ctype: make sane_ctype[] const array
Conflicts:
Makefile
Junio C Hamano [Thu, 10 Jan 2013 21:47:04 +0000 (13:47 -0800)]
Merge branch 'tb/test-shell-lint'
Check for common mistakes in the test scripts, based on simple
pattern-matching.
* tb/test-shell-lint:
test: Add check-non-portable-shell.pl
Junio C Hamano [Thu, 10 Jan 2013 21:46:51 +0000 (13:46 -0800)]
Merge branch 'mz/pick-unborn'
Allow "git cherry-pick $commit" even when you do not have any
history behind HEAD yet.
* mz/pick-unborn:
learn to pick/revert into unborn branch
tests: move test_cmp_rev to test-lib-functions
Junio C Hamano [Thu, 10 Jan 2013 21:46:46 +0000 (13:46 -0800)]
Merge branch 'aw/rebase-am-failure-detection'
Save output from format-patch command in a temporary file, just in
case it aborts, to give a better failure-case behaviour.
* aw/rebase-am-failure-detection:
rebase: Handle cases where format-patch fails
Junio C Hamano [Thu, 10 Jan 2013 21:46:29 +0000 (13:46 -0800)]
Merge branch 'jc/maint-fmt-merge-msg-no-edit-lose-credit'
Stop spending cycles to compute information to be placed on
commented lines in "merge --no-edit", which will be discarded
anyway.
* jc/maint-fmt-merge-msg-no-edit-lose-credit:
merge --no-edit: do not credit people involved in the side branch
John Keeping [Wed, 9 Jan 2013 19:45:29 +0000 (19:45 +0000)]
git-fast-import(1): reorganise options
The options in git-fast-import(1) are not currently arranged in a
logical order, which has caused the '--done' options to be documented
twice (commit
3266de10).
Rearrange them into logical groups under subheadings.
Suggested-by: Jonathan Nieder <jrnieder@gmail.com>
Signed-off-by: John Keeping <john@keeping.me.uk>
Signed-off-by: Junio C Hamano <gitster@pobox.com>
John Keeping [Wed, 9 Jan 2013 19:44:38 +0000 (19:44 +0000)]
git-fast-import(1): combine documentation of --[no-]relative-marks
The descriptions of '--relative-marks' and '--no-relative-marks' make
more sense when read together instead of as two independent options.
Combine them into a single description block.
Signed-off-by: John Keeping <john@keeping.me.uk>
Reviewed-by: Jonathan Nieder <jrnieder@gmail.com>
Signed-off-by: Junio C Hamano <gitster@pobox.com>
John Keeping [Wed, 9 Jan 2013 20:16:45 +0000 (20:16 +0000)]
git-shortlog(1): document behaviour of zero-width wrap
Commit
00d3947 (Teach --wrap to only indent without wrapping) added
special behaviour for a width of zero in the '-w' argument to
'git-shortlog' but this was not documented. Fix this.
Signed-off-by: John Keeping <john@keeping.me.uk>
Signed-off-by: Junio C Hamano <gitster@pobox.com>
Junio C Hamano [Wed, 9 Jan 2013 18:19:49 +0000 (10:19 -0800)]
Update draft release notes to 1.8.2
Signed-off-by: Junio C Hamano <gitster@pobox.com>
Junio C Hamano [Wed, 9 Jan 2013 16:30:45 +0000 (08:30 -0800)]
Merge branch 'master' of git://github.com/git-l10n/git-po
Update German translation.
* 'master' of git://github.com/git-l10n/git-po:
l10n: de.po: address the user formally
Junio C Hamano [Wed, 9 Jan 2013 16:27:09 +0000 (08:27 -0800)]
Merge branch 'nd/maint-branch-desc-doc'
Teach various forms of "format-patch" command line to identify what
branch the patches are taken from, so that the branch description
is picked up in more cases.
* nd/maint-branch-desc-doc:
format-patch: pick up branch description when no ref is specified
format-patch: pick up correct branch name from symbolic ref
t4014: a few more tests on cover letter using branch description
branch: delete branch description if it's empty
config.txt: a few lines about branch.<name>.description
Junio C Hamano [Wed, 9 Jan 2013 16:26:46 +0000 (08:26 -0800)]
Merge branch 'jk/enable-test-lint-by-default'
We have two simple and quick tests to catch common mistakes when
writing test scripts, but we did not run them by default when
running tests.
* jk/enable-test-lint-by-default:
tests: turn on test-lint by default
Junio C Hamano [Wed, 9 Jan 2013 16:26:33 +0000 (08:26 -0800)]
Merge branch 'ap/merge-stop-at-prepare-commit-msg-failure'
"git merge" started calling prepare-commit-msg hook like "git
commit" does some time ago, but forgot to pay attention to the exit
status of the hook. t7505 may want a general clean-up but that is
a different topic.
* ap/merge-stop-at-prepare-commit-msg-failure:
merge: Honor prepare-commit-msg return code
Junio C Hamano [Wed, 9 Jan 2013 16:26:26 +0000 (08:26 -0800)]
Merge branch 'fc/remote-bzr'
New remote helper for bzr, with minimum fix squashed in.
* fc/remote-bzr:
remote-bzr: detect local repositories
remote-bzr: add support for older versions of bzr
remote-bzr: add support to push special modes
remote-bzr: add support for fecthing special modes
remote-bzr: add simple tests
remote-bzr: update working tree upon pushing
remote-bzr: add support for remote repositories
remote-bzr: add support for pushing
Add new remote-bzr transport helper
Junio C Hamano [Wed, 9 Jan 2013 16:26:20 +0000 (08:26 -0800)]
Merge branch 'jc/submittingpatches'
Streamline the document and update with a few e-mail addresses the
patches should be sent to.
* jc/submittingpatches:
SubmittingPatches: give list and maintainer addresses
SubmittingPatches: remove overlong checklist
SubmittingPatches: mention subsystems with dedicated repositories
SubmittingPatches: who am I and who cares?
Junio C Hamano [Wed, 9 Jan 2013 16:26:08 +0000 (08:26 -0800)]
Merge branch 'os/gitweb-highlight-uncaptured'
The code to sanitize control characters before passing it to
"highlight" filter lost known-to-be-safe control characters by
mistake.
* os/gitweb-highlight-uncaptured:
gitweb: fix error in sanitize when highlight is enabled
Junio C Hamano [Wed, 9 Jan 2013 16:25:59 +0000 (08:25 -0800)]
Merge branch 'jn/less-reconfigure'
When autoconf is used, any build on a different commit always ran
"config.status --recheck" even when unnecessary.
* jn/less-reconfigure:
build: do not automatically reconfigure unless configure.ac changed
Junio C Hamano [Wed, 9 Jan 2013 16:25:47 +0000 (08:25 -0800)]
Merge branch 'er/python-version-requirements'
Some python scripts we ship cannot be run with older versions of the
interpreter.
* er/python-version-requirements:
Add checks to Python scripts for version dependencies.
Junio C Hamano [Wed, 9 Jan 2013 16:25:36 +0000 (08:25 -0800)]
Merge branch 'er/stop-recommending-parsecvs'
Stop recommending a defunct third-party software.
* er/stop-recommending-parsecvs:
Remove the suggestion to use parsecvs, which is currently broken.
Junio C Hamano [Tue, 8 Jan 2013 21:23:46 +0000 (13:23 -0800)]
Merge branch 'maint'
* maint:
t1402: work around shell quoting issue on NetBSD
remote-hg: Fix biridectionality -> bidirectionality typos
Junio C Hamano [Tue, 8 Jan 2013 21:23:26 +0000 (13:23 -0800)]
Merge branch 'kb/maint-bundle-doc'
* kb/maint-bundle-doc:
Documentation: full-ness of a bundle is significant for cloning
Documentation: correct example restore from bundle
Junio C Hamano [Tue, 8 Jan 2013 21:23:21 +0000 (13:23 -0800)]
Merge branch 'as/test-name-alias-uniquely'
A few short-and-bland aliases used in the tests were interfering
with git-custom command in user's $PATH.
* as/test-name-alias-uniquely:
Use longer alias names in subdirectory tests
Junio C Hamano [Tue, 8 Jan 2013 21:23:10 +0000 (13:23 -0800)]
Merge branch 'ta/remove-stale-translated-tut'
Remove a translation of a document that was left stale.
* ta/remove-stale-translated-tut:
Remove Documentation/pt_BR/gittutorial.txt
Junio C Hamano [Tue, 8 Jan 2013 21:23:05 +0000 (13:23 -0800)]
Merge branch 'tb/test-t9810-no-sed-i'
* tb/test-t9810-no-sed-i:
t9810: Do not use sed -i
Junio C Hamano [Tue, 8 Jan 2013 21:23:00 +0000 (13:23 -0800)]
Merge branch 'tb/test-t9020-no-which'
* tb/test-t9020-no-which:
t9020: which is not portable
Junio C Hamano [Tue, 8 Jan 2013 21:22:52 +0000 (13:22 -0800)]
Merge branch 'jk/maint-fast-import-doc-dedup-done'
The "logical order" reorganization can come after that is done and
can cook longer in 'next'.
* jk/maint-fast-import-doc-dedup-done:
git-fast-import(1): remove duplicate '--done' option
Junio C Hamano [Tue, 8 Jan 2013 21:22:32 +0000 (13:22 -0800)]
Merge branch 'jk/pathspec-literal'
Finishing touches to fix a test breakage on Windows
* jk/pathspec-literal:
t6130-pathspec-noglob: Windows does not allow a file named "f*"
Junio C Hamano [Tue, 8 Jan 2013 21:21:07 +0000 (13:21 -0800)]
Merge branch 'jk/maint-fast-import-doc-dedup-done'
* jk/maint-fast-import-doc-dedup-done:
git-fast-import(1): remove duplicate '--done' option
John Keeping [Mon, 7 Jan 2013 11:57:09 +0000 (11:57 +0000)]
git-fast-import(1): remove duplicate '--done' option
The '--done' option to git-fast-import is documented twice in its manual
page. Combine the best bits of each description, keeping the location
of the instance that was added first.
Signed-off-by: John Keeping <john@keeping.me.uk>
Signed-off-by: Junio C Hamano <gitster@pobox.com>
René Scharfe [Tue, 8 Jan 2013 20:23:01 +0000 (21:23 +0100)]
t1402: work around shell quoting issue on NetBSD
The test fails for me on NetBSD 6.0.1 and reports:
ok 1 - ref name '' is invalid
ok 2 - ref name '/' is invalid
ok 3 - ref name '/' is invalid with options --allow-onelevel
ok 4 - ref name '/' is invalid with options --normalize
error: bug in the test script: not 2 or 3 parameters to test-expect-success
The alleged bug is in this line:
invalid_ref NOT_MINGW '/' '--allow-onelevel --normalize'
invalid_ref() constructs a test case description using its last argument,
but the shell seems to split it up into two pieces if it contains a
space. Minimal test case:
# on NetBSD with /bin/sh
$ a() { echo $#-$1-$2; }
$ t="x"; a "${t:+$t}"
1-x-
$ t="x y"; a "${t:+$t}"
2-x-y
$ t="x y"; a "${t:+x y}"
1-x y-
# and with bash
$ t="x y"; a "${t:+$t}"
1-x y-
$ t="x y"; a "${t:+x y}"
1-x y-
This may be a bug in the shell, but here's a simple workaround: Construct
the description string first and store it in a variable, and then use
that to call test_expect_success().
Signed-off-by: Rene Scharfe <rene.scharfe@lsrfire.ath.cx>
Signed-off-by: Junio C Hamano <gitster@pobox.com>
Junio C Hamano [Tue, 8 Jan 2013 19:17:10 +0000 (11:17 -0800)]
Merge branch 'ms/subtree-fixlets' into maint
* ms/subtree-fixlets:
git-subtree: fix typo in manpage
git-subtree: ignore git-subtree executable
Junio C Hamano [Tue, 8 Jan 2013 19:17:07 +0000 (11:17 -0800)]
Merge branch 'ss/nedmalloc-compilation' into maint
* ss/nedmalloc-compilation:
nedmalloc: Fix a compile warning (exposed as error) with GCC 4.7.2
Junio C Hamano [Tue, 8 Jan 2013 19:17:05 +0000 (11:17 -0800)]
Merge branch 'jc/maint-fnmatch-old-style-definition' into maint
* jc/maint-fnmatch-old-style-definition:
compat/fnmatch: update old-style definition to ANSI
Junio C Hamano [Tue, 8 Jan 2013 19:17:03 +0000 (11:17 -0800)]
Merge branch 'jc/test-portability' into maint
* jc/test-portability:
t9020: use configured Python to run the test helper
t3600: Avoid "cp -a", which is a GNUism
Junio C Hamano [Tue, 8 Jan 2013 19:17:01 +0000 (11:17 -0800)]
Merge branch 'jc/maint-fbsd-sh-ifs-workaround' into maint
* jc/maint-fbsd-sh-ifs-workaround:
sh-setup: work around "unset IFS" bug in some shells
Junio C Hamano [Tue, 8 Jan 2013 19:16:58 +0000 (11:16 -0800)]
Merge branch 'jc/mkstemp-more-careful-error-reporting' into maint
* jc/mkstemp-more-careful-error-reporting:
xmkstemp(): avoid showing truncated template more carefully
Junio C Hamano [Tue, 8 Jan 2013 19:16:56 +0000 (11:16 -0800)]
Merge branch 'jc/test-cvs-no-init-in-existing-dir' into maint
* jc/test-cvs-no-init-in-existing-dir:
t9200: let "cvs init" create the test repository
Junio C Hamano [Tue, 8 Jan 2013 19:16:52 +0000 (11:16 -0800)]
Merge branch 'jc/maint-test-portability' into maint
* jc/maint-test-portability:
t4014: fix arguments to grep
t9502: do not assume GNU tar
t0200: "locale" may not exist
W. Trevor King [Tue, 8 Jan 2013 15:47:37 +0000 (10:47 -0500)]
remote-hg: Fix biridectionality -> bidirectionality typos
Signed-off-by: W. Trevor King <wking@tremily.us>
Signed-off-by: Junio C Hamano <gitster@pobox.com>
Ralf Thielow [Wed, 26 Dec 2012 15:46:52 +0000 (16:46 +0100)]
l10n: de.po: address the user formally
In the current German translation, the user was
addressed informally ("Du", "Dein") which is unusual
in German software. This commit changes the addressing
to be formal ("Sie", "Ihr").
Suggested-by: Christian Stimming <stimming@tuhh.de>
Suggested-by: Michael J Gruber <git@drmicha.warpmail.net>
Signed-off-by: Ralf Thielow <ralf.thielow@gmail.com>
René Scharfe [Sun, 6 Jan 2013 17:59:39 +0000 (18:59 +0100)]
t5003: check if unzip supports symlinks
Only add a symlink to the repository if both the filesystem and
unzip support symlinks. To check the latter, add a ZIP file
containing a symlink, created like this with InfoZIP zip 3.0:
$ echo sample text >textfile
$ ln -s textfile symlink
$ zip -y infozip-symlinks.zip textfile symlink
If we can extract it successfully, we add a symlink to the test
repository for git archive --format=zip, or otherwise skip that
step. Users can see the skipped test and perhaps run it again
with a different unzip version.
Signed-off-by: Rene Scharfe <rene.scharfe@lsrfire.ath.cx>
Signed-off-by: Junio C Hamano <gitster@pobox.com>
René Scharfe [Sun, 6 Jan 2013 17:51:34 +0000 (18:51 +0100)]
t5000, t5003: move ZIP tests into their own script
This makes ZIP specific tweaks easier.
Signed-off-by: Rene Scharfe <rene.scharfe@lsrfire.ath.cx>
Signed-off-by: Junio C Hamano <gitster@pobox.com>
René Scharfe [Sun, 6 Jan 2013 17:49:00 +0000 (18:49 +0100)]
t0024, t5000: use test_lazy_prereq for UNZIP
This change makes the code smaller and we can put it at the top of
the script, its rightful place as setup code.
Signed-off-by: Rene Scharfe <rene.scharfe@lsrfire.ath.cx>
Reviewed-by: Jonathan Nieder <jrnieder@gmail.com>
Signed-off-by: Junio C Hamano <gitster@pobox.com>
René Scharfe [Sun, 6 Jan 2013 17:47:57 +0000 (18:47 +0100)]
t0024, t5000: clear variable UNZIP, use GIT_UNZIP instead
InfoZIP's unzip takes default parameters from the environment variable
UNZIP. Unset it in the test library and use GIT_UNZIP for specifying
alternate versions of the unzip command instead.
t0024 wasn't even using variable for the actual extraction. t5000
was, but when setting it to InfoZIP's unzip it would try to extract
from itself (because it treats the contents of $UNZIP as parameters),
which failed of course.
Signed-off-by: Rene Scharfe <rene.scharfe@lsrfire.ath.cx>
Reviewed-by: Jonathan Nieder <jrnieder@gmail.com>
Signed-off-by: Junio C Hamano <gitster@pobox.com>
Junio C Hamano [Mon, 7 Jan 2013 06:11:39 +0000 (22:11 -0800)]
Merge branch 'mz/oneway-merge-wo-u-no-lstat'
Optimize "read-tree -m <tree-ish>" without "-u".
* mz/oneway-merge-wo-u-no-lstat:
oneway_merge(): only lstat() when told to update worktree
Junio C Hamano [Mon, 7 Jan 2013 06:11:30 +0000 (22:11 -0800)]
Merge branch 'cc/no-gitk-build-dependency'
Remove leftover bits from an earlier change to move gitk in its own
subdirectory. Reimplementing the dependency tracking rules needs
to be done in gitk history separately.
* cc/no-gitk-build-dependency:
Makefile: replace "echo 1>..." with "echo >..."
Makefile: detect when PYTHON_PATH changes
Makefile: remove tracking of TCLTK_PATH
Junio C Hamano [Mon, 7 Jan 2013 06:11:16 +0000 (22:11 -0800)]
Merge branch 'jn/warn-on-inaccessible-loosen'
Deal with a situation where .config/git is a file and we notice
.config/git/config is not readable due to ENOTDIR, not ENOENT.
* jn/warn-on-inaccessible-loosen:
config: exit on error accessing any config file
doc: advertise GIT_CONFIG_NOSYSTEM
config: treat user and xdg config permission problems as errors
config, gitignore: failure to access with ENOTDIR is ok
Junio C Hamano [Mon, 7 Jan 2013 06:10:23 +0000 (22:10 -0800)]
Merge branch 'jc/apply-trailing-blank-removal'
Fix to update_pre_post_images() that did not take into account the
possibility that whitespace fix could shrink the preimage and
change the number of lines in it.
* jc/apply-trailing-blank-removal:
apply.c:update_pre_post_images(): the preimage can be truncated
Mark Levedahl [Sun, 6 Jan 2013 19:56:33 +0000 (11:56 -0800)]
Makefile: add comment on CYGWIN_V15_WIN32API
There is no documented, reliable, and future-proof method to
determine the installed w32api version on Cygwin. There are many
things that can be done that will work frequently, except when they
won't.
The only sane thing is to follow the guidance of the Cygwin
developers: the only supported configuration is that which the
current setup.exe produces, and in the case of problems, if the
installation is not up to date then updating is the first required
action.
Signed-off-by: Mark Levedahl <mlevedahl@gmail.com>
Signed-off-by: Junio C Hamano <gitster@pobox.com>
Adam Spiers [Sun, 6 Jan 2013 15:35:05 +0000 (15:35 +0000)]
api-allocation-growing.txt: encourage better variable naming
The documentation for the ALLOC_GROW API implicitly encouraged
developers to use "ary" as the variable name for the array which is
dynamically grown. However "ary" is an unusual abbreviation hardly
used anywhere else in the source tree, and it is also better to name
variables based on their contents not on their type.
Signed-off-by: Adam Spiers <git@adamspiers.org>
Signed-off-by: Junio C Hamano <gitster@pobox.com>
René Scharfe [Sun, 6 Jan 2013 15:20:57 +0000 (16:20 +0100)]
archive-zip: write uncompressed size into header even with streaming
We record the uncompressed and compressed sizes and the CRC of streamed
files as zero in the local header of the file. The actual values are
recorded in an extra data descriptor after the file content, and in the
usual ZIP directory entry at the end of the archive.
While we know the compressed size and the CRC only after we processed
the contents, we actually know the uncompressed size right from the
start. And for files that we store uncompressed we also already know
their final size.
Do it like InfoZIP's zip and recored the known values, even though they
can be reconstructed using the ZIP directory and the data descriptors
alone. InfoZIP's unzip worked fine before, but NetBSD's version
actually depends on these fields.
The uncompressed size is already set by sha1_object_info(). We just
need to initialize the compressed size to zero or the uncompressed size
depending on the compression method (0 means storing). The CRC was
propertly initialized already.
Signed-off-by: Rene Scharfe <rene.scharfe@lsrfire.ath.cx>
Signed-off-by: Junio C Hamano <gitster@pobox.com>
Johannes Sixt [Sun, 6 Jan 2013 14:07:43 +0000 (15:07 +0100)]
t6130-pathspec-noglob: Windows does not allow a file named "f*"
Windows disallows file names that contain a star. Arrange the test setup
to insert the file name "f*" in the repository without the corresponding
file in the worktree.
Signed-off-by: Johannes Sixt <j6t@kdbg.org>
Acked-by: Jeff King <peff@peff.net>
Signed-off-by: Junio C Hamano <gitster@pobox.com>
Jonathan Nieder [Sun, 6 Jan 2013 12:01:53 +0000 (04:01 -0800)]
docs: manpage XML depends on asciidoc.conf
When building manual pages, the source text is transformed to XML with
AsciiDoc before the man pages are generated from the XML with xmlto.
Fix the dependencies in the Makefile so that the XML files are rebuilt
when asciidoc.conf changes and not just the manual pages from
unchanged XML, and move the dependencies from a recipeless rule to the
rules with commands that use asciidoc.conf to make the dependencies
easier to understand and maintain.
Reported-by: John Keeping <john@keeping.me.uk>
Signed-off-by: Jonathan Nieder <jrnieder@gmail.com>
Tested-by: John Keeping <john@keeping.me.uk>
Signed-off-by: Junio C Hamano <gitster@pobox.com>
Jeff King [Sat, 5 Jan 2013 14:49:49 +0000 (09:49 -0500)]
run-command: encode signal death as a positive integer
When a sub-command dies due to a signal, we encode the
signal number into the numeric exit status as "signal -
128". This is easy to identify (versus a regular positive
error code), and when cast to an unsigned integer (e.g., by
feeding it to exit), matches what a POSIX shell would return
when reporting a signal death in $? or through its own exit
code.
So we have a negative value inside the code, but once it
passes across an exit() barrier, it looks positive (and any
code we receive from a sub-shell will have the positive
form). E.g., death by SIGPIPE (signal 13) will look like
-115 to us in inside git, but will end up as 141 when we
call exit() with it. And a program killed by SIGPIPE but run
via the shell will come to us with an exit code of 141.
Unfortunately, this means that when the "use_shell" option
is set, we need to be on the lookout for _both_ forms. We
might or might not have actually invoked the shell (because
we optimize out some useless shell calls). If we didn't invoke
the shell, we will will see the sub-process's signal death
directly, and run-command converts it into a negative value.
But if we did invoke the shell, we will see the shell's
128+signal exit status. To be thorough, we would need to
check both, or cast the value to an unsigned char (after
checking that it is not -1, which is a magic error value).
Fortunately, most callsites do not care at all whether the
exit was from a code or from a signal; they merely check for
a non-zero status, and sometimes propagate the error via
exit(). But for the callers that do care, we can make life
slightly easier by just using the consistent positive form.
This actually fixes two minor bugs:
1. In launch_editor, we check whether the editor died from
SIGINT or SIGQUIT. But we checked only the negative
form, meaning that we would fail to notice a signal
death exit code which was propagated through the shell.
2. In handle_alias, we assume that a negative return value
from run_command means that errno tells us something
interesting (like a fork failure, or ENOENT).
Otherwise, we simply propagate the exit code. Negative
signal death codes confuse us, and we print a useless
"unable to run alias 'foo': Success" message. By
encoding signal deaths using the positive form, the
existing code just propagates it as it would a normal
non-zero exit code.
The downside is that callers of run_command can no longer
differentiate between a signal received directly by the
sub-process, and one propagated. However, no caller
currently cares, and since we already optimize out some
calls to the shell under the hood, that distinction is not
something that should be relied upon by callers.
Fix the same logic in t/test-terminal.perl for consistency [jc:
raised by Jonathan in the discussion].
Signed-off-by: Jeff King <peff@peff.net>
Acked-by: Johannes Sixt <j6t@kdbg.org>
Reviewed-by: Jonathan Nieder <jrnieder@gmail.com>
Signed-off-by: Junio C Hamano <gitster@pobox.com>
Junio C Hamano [Sun, 6 Jan 2013 08:17:24 +0000 (00:17 -0800)]
Update draft release notes to 1.8.2
Signed-off-by: Junio C Hamano <gitster@pobox.com>
Junio C Hamano [Sun, 6 Jan 2013 07:42:11 +0000 (23:42 -0800)]
Merge branch 'wk/submodule-update-remote'
The beginning of 'integrate with the tip of the remote branch, not
the commit recorded in the superproject gitlink' support.
* wk/submodule-update-remote:
submodule add: If --branch is given, record it in .gitmodules
submodule update: add --remote for submodule's upstream changes
submodule: add get_submodule_config helper funtion
Junio C Hamano [Sun, 6 Jan 2013 07:42:07 +0000 (23:42 -0800)]
Merge branch 'jk/pathspec-literal'
Allow scripts to feed literal paths to commands that take
pathspecs, by disabling wildcard globbing.
* jk/pathspec-literal:
add global --literal-pathspecs option
Conflicts:
dir.c
Junio C Hamano [Sun, 6 Jan 2013 07:42:00 +0000 (23:42 -0800)]
Merge branch 'jk/error-const-return'
Help compilers' flow analysis by making it more explicit that
error() always returns -1, to reduce false "variable used
uninitialized" warnings. Looks somewhat ugly but not too much.
* jk/error-const-return:
silence some -Wuninitialized false positives
make error()'s constant return value more visible
Junio C Hamano [Sun, 6 Jan 2013 07:41:57 +0000 (23:41 -0800)]
Merge branch 'jc/format-color-auto'
Introduce "log --format=%C(auto,blue)Foo%C(auto,reset)" that does
not color its output when writing to a non-terminal.
* jc/format-color-auto:
log --format: teach %C(auto,black) to respect color config
t6006: clean up whitespace