]> git.ipfire.org Git - thirdparty/git.git/log
thirdparty/git.git
8 years agoMakefile: add $(DEVELOPER_CFLAGS) variable
Matthieu Moy [Wed, 1 Jun 2016 08:00:08 +0000 (10:00 +0200)] 
Makefile: add $(DEVELOPER_CFLAGS) variable

This does not change the behavior, but allows the user to tweak
DEVELOPER_CFLAGS on the command-line or in a config.mak* file if
needed.

This also makes the code somewhat cleaner as it follows the pattern

<initialisation of variables>
<include statements>
<actual build logic>

by specifying which flags to activate in the first part, and actually
activating them in the last one.

Signed-off-by: Matthieu Moy <Matthieu.Moy@imag.fr>
Signed-off-by: Junio C Hamano <gitster@pobox.com>
8 years agoMakefile: move 'ifdef DEVELOPER' after config.mak* inclusion
Matthieu Moy [Tue, 31 May 2016 13:24:43 +0000 (15:24 +0200)] 
Makefile: move 'ifdef DEVELOPER' after config.mak* inclusion

The DEVELOPER knob was introduced in 658df95 (add DEVELOPER makefile
knob to check for acknowledged warnings, 2016-02-25), and works well
when used as "make DEVELOPER=1", and when the configure script was not
used.

However, the advice given in CodingGuidelines to add DEVELOPER=1 to
config.mak does not: config.mak is included after testing for
DEVELOPER in the Makefile, and at least GNU Make's manual specifies
"Conditional directives are parsed immediately", hence the config.mak
declaration is not visible at the time the conditional is evaluated.

Also, when using the configure script to generate a
config.mak.autogen, the later file contained a "CFLAGS = <flags>"
initialization, which overrode the "CFLAGS += -W..." triggered by
DEVELOPER.

This patch fixes both issues.

Signed-off-by: Matthieu Moy <Matthieu.Moy@imag.fr>
Signed-off-by: Junio C Hamano <gitster@pobox.com>
8 years agoStart preparing for 2.8.4
Junio C Hamano [Thu, 26 May 2016 20:21:00 +0000 (13:21 -0700)] 
Start preparing for 2.8.4

Signed-off-by: Junio C Hamano <gitster@pobox.com>
8 years agoMerge branch 'jc/linkgit-fix' into maint
Junio C Hamano [Thu, 26 May 2016 20:17:26 +0000 (13:17 -0700)] 
Merge branch 'jc/linkgit-fix' into maint

Many 'linkgit:<git documentation page>' references were broken,
which are all fixed with this.

* jc/linkgit-fix:
  Documentation: fix linkgit references

8 years agoMerge branch 'ls/travis-build-doc' into maint
Junio C Hamano [Thu, 26 May 2016 20:17:25 +0000 (13:17 -0700)] 
Merge branch 'ls/travis-build-doc' into maint

CI test was taught to build documentation pages.

* ls/travis-build-doc:
  travis-ci: build documentation

8 years agoMerge branch 'jc/fsck-nul-in-commit' into maint
Junio C Hamano [Thu, 26 May 2016 20:17:24 +0000 (13:17 -0700)] 
Merge branch 'jc/fsck-nul-in-commit' into maint

"git fsck" learned to catch NUL byte in a commit object as
potential error and warn.

* jc/fsck-nul-in-commit:
  fsck: detect and warn a commit with embedded NUL
  fsck_commit_buffer(): do not special case the last validation

8 years agoMerge branch 'jk/rebase-interative-eval-fix' into maint
Junio C Hamano [Thu, 26 May 2016 20:17:24 +0000 (13:17 -0700)] 
Merge branch 'jk/rebase-interative-eval-fix' into maint

Portability enhancement for "rebase -i" to help platforms whose
shell does not like "for i in <empty>" (which is not POSIX-kosher).

* jk/rebase-interative-eval-fix:
  rebase--interactive: avoid empty list in shell for-loop

8 years agoMerge branch 'js/windows-dotgit' into maint
Junio C Hamano [Thu, 26 May 2016 20:17:23 +0000 (13:17 -0700)] 
Merge branch 'js/windows-dotgit' into maint

On Windows, .git and optionally any files whose name starts with a
dot are now marked as hidden, with a core.hideDotFiles knob to
customize this behaviour.

* js/windows-dotgit:
  mingw: remove unnecessary definition
  mingw: introduce the 'core.hideDotFiles' setting

8 years agoMerge branch 'kf/gpg-sig-verification-doc' into maint
Junio C Hamano [Thu, 26 May 2016 20:17:22 +0000 (13:17 -0700)] 
Merge branch 'kf/gpg-sig-verification-doc' into maint

Documentation for "git merge --verify-signatures" has been updated
to clarify that the signature of only the commit at the tip is
verified.  Also the phrasing used for signature and key validity is
adjusted to align with that used by OpenPGP.

* kf/gpg-sig-verification-doc:
  Documentation: clarify signature verification

8 years agoMerge branch 'lp/typofixes' into maint
Junio C Hamano [Thu, 26 May 2016 20:17:21 +0000 (13:17 -0700)] 
Merge branch 'lp/typofixes' into maint

Typofixes.

* lp/typofixes:
  typofix: assorted typofixes in comments, documentation and messages

8 years agoMerge branch 'sb/z-is-gnutar-ism' into maint
Junio C Hamano [Thu, 26 May 2016 20:17:21 +0000 (13:17 -0700)] 
Merge branch 'sb/z-is-gnutar-ism' into maint

Test fix.

* sb/z-is-gnutar-ism:
  t6041: do not compress backup tar file
  t3513: do not compress backup tar file

8 years agoMerge branch 'va/i18n-misc-updates' into maint
Junio C Hamano [Thu, 26 May 2016 20:17:20 +0000 (13:17 -0700)] 
Merge branch 'va/i18n-misc-updates' into maint

Mark several messages for translation.

* va/i18n-misc-updates:
  i18n: unpack-trees: avoid substituting only a verb in sentences
  i18n: builtin/pull.c: split strings marked for translation
  i18n: builtin/pull.c: mark placeholders for translation
  i18n: git-parse-remote.sh: mark strings for translation
  i18n: branch: move comment for translators
  i18n: branch: unmark string for translation
  i18n: builtin/rm.c: remove a comma ',' from string
  i18n: unpack-trees: mark strings for translation
  i18n: builtin/branch.c: mark option for translation
  i18n: index-pack: use plural string instead of normal one

8 years agoMerge branch 'bn/config-doc-tt-varnames' into maint
Junio C Hamano [Thu, 26 May 2016 20:17:19 +0000 (13:17 -0700)] 
Merge branch 'bn/config-doc-tt-varnames' into maint

Doc formatting fixes.

* bn/config-doc-tt-varnames:
  config: consistently format $variables in monospaced font
  config: describe 'pathname' value type

8 years agoMerge branch 'nd/remote-plural-ours-plus-theirs' into maint
Junio C Hamano [Thu, 26 May 2016 20:17:18 +0000 (13:17 -0700)] 
Merge branch 'nd/remote-plural-ours-plus-theirs' into maint

Message fix.

* nd/remote-plural-ours-plus-theirs:
  remote.c: specify correct plural form in "commit diverge" message

8 years agoMerge branch 'ak/t4151-ls-files-could-be-empty' into maint
Junio C Hamano [Thu, 26 May 2016 20:17:17 +0000 (13:17 -0700)] 
Merge branch 'ak/t4151-ls-files-could-be-empty' into maint

Test fix.

* ak/t4151-ls-files-could-be-empty:
  t4151: make sure argument to 'test -z' is given

8 years agoMerge branch 'jc/test-seq' into maint
Junio C Hamano [Thu, 26 May 2016 20:17:16 +0000 (13:17 -0700)] 
Merge branch 'jc/test-seq' into maint

Test fix.

* jc/test-seq:
  test-lib-functions.sh: rewrite test_seq without Perl
  test-lib-functions.sh: remove misleading comment on test_seq

8 years agoMerge branch 'tb/t5601-sed-fix' into maint
Junio C Hamano [Thu, 26 May 2016 20:17:15 +0000 (13:17 -0700)] 
Merge branch 'tb/t5601-sed-fix' into maint

Test fix.

* tb/t5601-sed-fix:
  t5601: Remove trailing space in sed expression

8 years agoMerge branch 'va/i18n-remote-comment-to-align' into maint
Junio C Hamano [Thu, 26 May 2016 20:17:14 +0000 (13:17 -0700)] 
Merge branch 'va/i18n-remote-comment-to-align' into maint

Message fix.

* va/i18n-remote-comment-to-align:
  i18n: remote: add comment for translators

8 years agoMerge branch 'va/mailinfo-doc-typofix' into maint
Junio C Hamano [Thu, 26 May 2016 20:17:13 +0000 (13:17 -0700)] 
Merge branch 'va/mailinfo-doc-typofix' into maint

Typofix.

* va/mailinfo-doc-typofix:
  Documentation/git-mailinfo: fix typo

8 years agoMerge branch 'maint-2.7' into maint
Junio C Hamano [Thu, 26 May 2016 20:16:51 +0000 (13:16 -0700)] 
Merge branch 'maint-2.7' into maint

* maint-2.7:
  archive-tar: convert snprintf to xsnprintf

8 years agoMerge branch 'jk/war-on-sprintf' into maint-2.7
Junio C Hamano [Thu, 26 May 2016 17:45:37 +0000 (10:45 -0700)] 
Merge branch 'jk/war-on-sprintf' into maint-2.7

* jk/war-on-sprintf:
  archive-tar: convert snprintf to xsnprintf

8 years agoarchive-tar: convert snprintf to xsnprintf
Jeff King [Thu, 26 May 2016 04:28:08 +0000 (00:28 -0400)] 
archive-tar: convert snprintf to xsnprintf

Commit f2f0267 (archive-tar: use xsnprintf for trivial
formatting, 2015-09-24) converted cases of "sprintf" to
"xsnprintf", but accidentally left one as just "snprintf".
This meant that we could silently truncate the resulting
buffer instead of flagging an error.

In practice, this is impossible to achieve, as we are
formatting a ustar checksum, which can be at most 7
characters. But the point of xsnprintf is to document and
check for "should be impossible" conditions; this site was
just accidentally mis-converted during f2f0267.

Noticed-by: Paul Green <Paul.Green@stratus.com>
Signed-off-by: Jeff King <peff@peff.net>
Signed-off-by: Junio C Hamano <gitster@pobox.com>
8 years agoGit 2.8.3 v2.8.3
Junio C Hamano [Wed, 18 May 2016 21:45:08 +0000 (14:45 -0700)] 
Git 2.8.3

Signed-off-by: Junio C Hamano <gitster@pobox.com>
8 years agoMerge branch 'sb/misc-cleanups' into HEAD
Junio C Hamano [Wed, 18 May 2016 21:40:15 +0000 (14:40 -0700)] 
Merge branch 'sb/misc-cleanups' into HEAD

* sb/misc-cleanups:
  submodule-config: don't shadow `cache`
  config.c: drop local variable
  credential-cache, send_request: close fd when done
  bundle: don't leak an fd in case of early return
  abbrev_sha1_in_line: don't leak memory
  notes: don't leak memory in git_config_get_notes_strategy

8 years agoMerge branch 'ew/doc-split-pack-disables-bitmap' into HEAD
Junio C Hamano [Wed, 18 May 2016 21:40:15 +0000 (14:40 -0700)] 
Merge branch 'ew/doc-split-pack-disables-bitmap' into HEAD

Doc update.

* ew/doc-split-pack-disables-bitmap:
  pack-objects: warn on split packs disabling bitmaps

8 years agoMerge branch 'sb/clean-test-fix' into HEAD
Junio C Hamano [Wed, 18 May 2016 21:40:14 +0000 (14:40 -0700)] 
Merge branch 'sb/clean-test-fix' into HEAD

* sb/clean-test-fix:
  t7300: mark test with SANITY

8 years agoMerge branch 'rn/glossary-typofix' into HEAD
Junio C Hamano [Wed, 18 May 2016 21:40:13 +0000 (14:40 -0700)] 
Merge branch 'rn/glossary-typofix' into HEAD

* rn/glossary-typofix:
  Documentation: fix typo 'In such these cases'

8 years agoMerge branch 'ew/normal-to-e' into HEAD
Junio C Hamano [Wed, 18 May 2016 21:40:12 +0000 (14:40 -0700)] 
Merge branch 'ew/normal-to-e' into HEAD

* ew/normal-to-e:
  .mailmap: update to my shorter email address

8 years agoMerge branch 'sb/config-exit-status-list' into HEAD
Junio C Hamano [Wed, 18 May 2016 21:40:12 +0000 (14:40 -0700)] 
Merge branch 'sb/config-exit-status-list' into HEAD

Doc update.

* sb/config-exit-status-list:
  config doc: improve exit code listing

8 years agoMerge branch 'rt/string-list-lookup-cleanup' into HEAD
Junio C Hamano [Wed, 18 May 2016 21:40:12 +0000 (14:40 -0700)] 
Merge branch 'rt/string-list-lookup-cleanup' into HEAD

Code cleanup.

* rt/string-list-lookup-cleanup:
  string_list: use string-list API in unsorted_string_list_lookup()

8 years agoMerge branch 'jk/fix-attribute-macro-in-2.5' into HEAD
Junio C Hamano [Wed, 18 May 2016 21:40:12 +0000 (14:40 -0700)] 
Merge branch 'jk/fix-attribute-macro-in-2.5' into HEAD

Code fixup.

* jk/fix-attribute-macro-in-2.5:
  remote.c: spell __attribute__ correctly

8 years agoMerge branch 'sg/test-lib-simplify-expr-away' into HEAD
Junio C Hamano [Wed, 18 May 2016 21:40:11 +0000 (14:40 -0700)] 
Merge branch 'sg/test-lib-simplify-expr-away' into HEAD

Code cleanup.

* sg/test-lib-simplify-expr-away:
  test-lib: simplify '--option=value' parsing

8 years agoMerge branch 'nd/remove-unused' into HEAD
Junio C Hamano [Wed, 18 May 2016 21:40:11 +0000 (14:40 -0700)] 
Merge branch 'nd/remove-unused' into HEAD

Code cleanup.

* nd/remove-unused:
  wrapper.c: delete dead function git_mkstemps()
  dir.c: remove dead function fnmatch_icase()

8 years agoMerge branch 'sk/gitweb-highlight-encoding' into HEAD
Junio C Hamano [Wed, 18 May 2016 21:40:10 +0000 (14:40 -0700)] 
Merge branch 'sk/gitweb-highlight-encoding' into HEAD

Some multi-byte encoding can have a backslash byte as a later part
of one letter, which would confuse "highlight" filter used in
gitweb.

* sk/gitweb-highlight-encoding:
  gitweb: apply fallback encoding before highlight

8 years agoMerge branch 'ls/travis-submitting-patches' into HEAD
Junio C Hamano [Wed, 18 May 2016 21:40:09 +0000 (14:40 -0700)] 
Merge branch 'ls/travis-submitting-patches' into HEAD

* ls/travis-submitting-patches:
  Documentation: add setup instructions for Travis CI

8 years agoMerge branch 'js/close-packs-before-gc' into HEAD
Junio C Hamano [Wed, 18 May 2016 21:40:09 +0000 (14:40 -0700)] 
Merge branch 'js/close-packs-before-gc' into HEAD

* js/close-packs-before-gc:
  t5510: run auto-gc in the foreground

8 years agoMerge branch 'ls/p4-lfs' into HEAD
Junio C Hamano [Wed, 18 May 2016 21:40:08 +0000 (14:40 -0700)] 
Merge branch 'ls/p4-lfs' into HEAD

Recent update to Git LFS broke "git p4" by changing the output from
its "lfs pointer" subcommand.

* ls/p4-lfs:
  git-p4: fix Git LFS pointer parsing
  travis-ci: express Linux/OS X dependency versions more clearly
  travis-ci: update Git-LFS and P4 to the latest version

8 years agoMerge branch 'ls/p4-lfs-test-fix-2.7.0' into HEAD
Junio C Hamano [Wed, 18 May 2016 21:40:08 +0000 (14:40 -0700)] 
Merge branch 'ls/p4-lfs-test-fix-2.7.0' into HEAD

Fix a broken test.

* ls/p4-lfs-test-fix-2.7.0:
  t9824: fix wrong reference value
  t9824: fix broken &&-chain in a subshell

8 years agoMerge branch 'nf/mergetool-prompt' into HEAD
Junio C Hamano [Wed, 18 May 2016 21:40:07 +0000 (14:40 -0700)] 
Merge branch 'nf/mergetool-prompt' into HEAD

UI consistency improvements.

* nf/mergetool-prompt:
  difftool/mergetool: make the form of yes/no questions consistent

8 years agoMerge branch 'jd/send-email-to-whom' into HEAD
Junio C Hamano [Wed, 18 May 2016 21:40:07 +0000 (14:40 -0700)] 
Merge branch 'jd/send-email-to-whom' into HEAD

A question by "git send-email" to ask the identity of the sender
has been updated.

* jd/send-email-to-whom:
  send-email: fix grammo in the prompt that asks e-mail recipients

8 years agoMerge branch 'js/win32-mmap' into HEAD
Junio C Hamano [Wed, 18 May 2016 21:40:06 +0000 (14:40 -0700)] 
Merge branch 'js/win32-mmap' into HEAD

mmap emulation on Windows has been optimized and work better without
consuming paging store when not needed.

* js/win32-mmap:
  mmap(win32): avoid expensive fstat() call
  mmap(win32): avoid copy-on-write when it is unnecessary
  win32mmap: set errno appropriately

8 years agoMerge branch 'jk/push-client-deadlock-fix' into HEAD
Junio C Hamano [Wed, 18 May 2016 21:40:06 +0000 (14:40 -0700)] 
Merge branch 'jk/push-client-deadlock-fix' into HEAD

Some Windows SDK lacks pthread_sigmask() implementation and fails
to compile the recently updated "git push" codepath that uses it.

* jk/push-client-deadlock-fix:
  Windows: only add a no-op pthread_sigmask() when needed
  Windows: add pthread_sigmask() that does nothing
  t5504: drop sigpipe=ok from push tests
  fetch-pack: isolate sigpipe in demuxer thread
  send-pack: isolate sigpipe in demuxer thread
  run-command: teach async threads to ignore SIGPIPE
  send-pack: close demux pipe before finishing async process

8 years agoMerge branch 'sb/mv-submodule-fix' into HEAD
Junio C Hamano [Wed, 18 May 2016 21:40:05 +0000 (14:40 -0700)] 
Merge branch 'sb/mv-submodule-fix' into HEAD

"git mv old new" did not adjust the path for a submodule that lives
as a subdirectory inside old/ directory correctly.

* sb/mv-submodule-fix:
  mv: allow moving nested submodules

8 years agoMerge branch 'da/user-useconfigonly' into HEAD
Junio C Hamano [Wed, 18 May 2016 21:40:05 +0000 (14:40 -0700)] 
Merge branch 'da/user-useconfigonly' into HEAD

The "user.useConfigOnly" configuration variable makes it an error
if users do not explicitly set user.name and user.email.  However,
its check was not done early enough and allowed another error to
trigger, reporting that the default value we guessed from the
system setting was unusable.  This was a suboptimal end-user
experience as we want the users to set user.name/user.email without
relying on the auto-detection at all.

* da/user-useconfigonly:
  ident: give "please tell me" message upon useConfigOnly error
  ident: check for useConfigOnly before auto-detection of name/email

8 years agoMerge branch 'ld/p4-test-py3' into HEAD
Junio C Hamano [Wed, 18 May 2016 21:40:04 +0000 (14:40 -0700)] 
Merge branch 'ld/p4-test-py3' into HEAD

The test scripts for "git p4" (but not "git p4" implementation
itself) has been updated so that they would work even on a system
where the installed version of Python is python 3.

* ld/p4-test-py3:
  git-p4 tests: time_in_seconds should use $PYTHON_PATH
  git-p4 tests: work with python3 as well as python2
  git-p4 tests: cd to / before running python

8 years agoDocumentation: clarify signature verification
Keller Fuchs [Fri, 13 May 2016 09:51:01 +0000 (09:51 +0000)] 
Documentation: clarify signature verification

Clarify that "merge --verify-signatures" checks the signature on the
tip commit of the history being merged.

Uniformise the vocabulary used wrt. key/signature validity with OpenPGP:
- a signature is valid if made by a key with a valid uid;
- in the default trust-model, a uid is valid if signed by a trusted key;
- a key is trusted if the (local) user set a trust level for it.

Helped-by: Junio C Hamano <gitster@pobox.com>
Signed-off-by: Keller Fuchs <KellerFuchs@hashbang.sh>
Signed-off-by: Junio C Hamano <gitster@pobox.com>
8 years agoi18n: unpack-trees: avoid substituting only a verb in sentences
Vasco Almeida [Thu, 12 May 2016 23:16:26 +0000 (23:16 +0000)] 
i18n: unpack-trees: avoid substituting only a verb in sentences

Instead of reusing the same set of message templates for checkout
and other actions and substituting the verb with "%s", prepare
separate message templates for each known action. That would make
it easier for translation into languages where the same verb may
conjugate differently depending on the message we are giving.

See gettext documentation for details:
http://www.gnu.org/software/gettext/manual/html_node/Preparing-Strings.html

Helped-by: Junio C Hamano <gitster@pobox.com>
Signed-off-by: Vasco Almeida <vascomalmeida@sapo.pt>
Signed-off-by: Junio C Hamano <gitster@pobox.com>
8 years agoDocumentation/git-mailinfo: fix typo
Vasco Almeida [Wed, 11 May 2016 20:42:54 +0000 (20:42 +0000)] 
Documentation/git-mailinfo: fix typo

Signed-off-by: Vasco Almeida <vascomalmeida@sapo.pt>
Signed-off-by: Junio C Hamano <gitster@pobox.com>
8 years agoWindows: only add a no-op pthread_sigmask() when needed
Johannes Schindelin [Wed, 11 May 2016 15:10:30 +0000 (17:10 +0200)] 
Windows: only add a no-op pthread_sigmask() when needed

In f924b52 (Windows: add pthread_sigmask() that does nothing,
2016-05-01), we introduced a no-op for Windows. However, this breaks
building Git in Git for Windows' SDK because pthread_sigmask() is
already a no-op there, #define'd in the pthread_signal.h header in
/mingw64/x86_64-w64-mingw32/include/.

Let's wrap the definition of pthread_sigmask() in a guard that skips
it when compiling with MinGW-w64' headers.

Signed-off-by: Johannes Schindelin <johannes.schindelin@gmx.de>
Signed-off-by: Junio C Hamano <gitster@pobox.com>
8 years agomingw: remove unnecessary definition
Johannes Schindelin [Wed, 11 May 2016 08:43:41 +0000 (10:43 +0200)] 
mingw: remove unnecessary definition

For some reason, the definition of the MINGW version of
`mark_as_git_dir()` slipped into this developer's patch series to
support building Git for Windows.

As the `mark_as_git_dir()` function is not needed at all anymore (it was
used originally to support the core.hideDotFiles = gitDirOnly setting,
but we now use a different method to support that case), let's just
remove it.

Signed-off-by: Johannes Schindelin <johannes.schindelin@gmx.de>
Signed-off-by: Junio C Hamano <gitster@pobox.com>
8 years agomingw: introduce the 'core.hideDotFiles' setting
Johannes Schindelin [Wed, 11 May 2016 08:43:37 +0000 (10:43 +0200)] 
mingw: introduce the 'core.hideDotFiles' setting

On Unix (and Linux), files and directories whose names start with a dot
are usually not shown by default. This convention is used by Git: the
.git/ directory should be left alone by regular users, and only accessed
through Git itself.

On Windows, no such convention exists. Instead, there is an explicit flag
to mark files or directories as hidden.

In the early days, Git for Windows did not mark the .git/ directory (or
for that matter, any file or directory whose name starts with a dot)
hidden. This lead to quite a bit of confusion, and even loss of data.

Consequently, Git for Windows introduced the core.hideDotFiles setting,
with three possible values: true, false, and dotGitOnly, defaulting to
marking only the .git/ directory as hidden.

The rationale: users do not need to access .git/ directly, and indeed (as
was demonstrated) should not really see that directory, either. However,
not all dot files should be hidden by default, as e.g. Eclipse does not
show them (and the user would therefore be unable to see, say, a
.gitattributes file).

In over five years since the last attempt to bring this patch into core
Git, a slightly buggy version of this patch has served Git for Windows'
users well: no single report indicated problems with the hidden .git/
directory, and the stream of problems caused by the previously non-hidden
.git/ directory simply stopped. The bugs have been fixed during the
process of getting this patch upstream.

Note that there is a funny quirk we have to pay attention to when
creating hidden files: we use Win32's _wopen() function which
transmogrifies its arguments and hands off to Win32's CreateFile()
function. That latter function errors out with ERROR_ACCESS_DENIED (the
equivalent of EACCES) when the equivalent of the O_CREAT flag was passed
and the file attributes (including the hidden flag) do not match an
existing file's. And _wopen() accepts no parameter that would be
transmogrified into said hidden flag. Therefore, we simply try again
without O_CREAT.

A slightly different method is required for our fopen()/freopen()
function as we cannot even *remove* the implicit O_CREAT flag.
Therefore, we briefly mark existing files as unhidden when opening them
via fopen()/freopen().

The ERROR_ACCESS_DENIED error can also be triggered by opening a file
that is marked as a system file (which is unlikely to be tracked in
Git), and by trying to create a file that has *just* been deleted and is
awaiting the last open handles to be released (which would be handled
better by the "Try again?" logic, a story for a different patch series,
though). In both cases, it does not matter much if we try again without
the O_CREAT flag, read: it does not hurt, either.

For details how ERROR_ACCESS_DENIED can be triggered, see
https://msdn.microsoft.com/en-us/library/windows/desktop/aa363858

Original-patch-by: Erik Faye-Lund <kusmabite@gmail.com>
Initial-Test-By: Pat Thoyts <patthoyts@users.sourceforge.net>
Signed-off-by: Johannes Schindelin <johannes.schindelin@gmx.de>
Signed-off-by: Junio C Hamano <gitster@pobox.com>
8 years agorebase--interactive: avoid empty list in shell for-loop
Jeff King [Tue, 10 May 2016 21:07:10 +0000 (17:07 -0400)] 
rebase--interactive: avoid empty list in shell for-loop

The $strategy_opts variable contains a space-separated list
of strategy options, each individually shell-quoted. To loop
over each, we "unwrap" them by doing an eval like:

  eval '
    for opt in '"$strategy_opts"'
    do
       ...
    done
  '

Note the quoting that means we expand $strategy_opts inline
in the code to be evaluated (which is the right thing
because we want the IFS-split and de-quoting). If the
variable is empty, however, we ask the shell to eval the
following code:

  for opt in
  do
     ...
  done

without anything between "in" and "do".  Most modern shells
are happy to treat that like a noop, but reportedly ksh88 on
AIX considers it a syntax error. So let's catch the case
that the variable is empty and skip the eval altogether
(since we know the loop would be a noop anyway).

Reported-by: Armin Kunaschik <megabreit@googlemail.com>
Signed-off-by: Jeff King <peff@peff.net>
Signed-off-by: Junio C Hamano <gitster@pobox.com>
8 years agotravis-ci: build documentation
Lars Schneider [Wed, 4 May 2016 08:38:36 +0000 (10:38 +0200)] 
travis-ci: build documentation

Build documentation as separate Travis CI job to check for
documentation errors.

Signed-off-by: Lars Schneider <larsxschneider@gmail.com>
Signed-off-by: Junio C Hamano <gitster@pobox.com>
8 years agofsck: detect and warn a commit with embedded NUL
Junio C Hamano [Thu, 14 Apr 2016 17:58:22 +0000 (10:58 -0700)] 
fsck: detect and warn a commit with embedded NUL

Even though a Git commit object is designed to be capable of storing
any binary data as its payload, in practice people use it to describe
the changes in textual form, and tools like "git log" are designed to
treat the payload as text.

Detect and warn when we see any commit object with a NUL byte in
it.

Note that a NUL byte in the header part is already detected as a
grave error.  This change is purely about the message part.

Signed-off-by: Junio C Hamano <gitster@pobox.com>
8 years agoDocumentation: fix linkgit references
Junio C Hamano [Wed, 4 May 2016 17:36:24 +0000 (10:36 -0700)] 
Documentation: fix linkgit references

There are a handful of incorrect "linkgit:<page>[<section>]"
instances in our documentation set.

 * Some have an extra colon after "linkgit:"; fix them by removing
   the extra colon;

 * Some refer to a page outside the Git suite, namely curl(1); fix
   them by using the `curl(1)` that already appears on the same page
   for the same purpose of referring the readers to its manual page.

 * Some spell the name of the page incorrectly, e.g. "rev-list" when
   they mean "git-rev-list"; fix them.

 * Some list the manual section incorrectly; fix them to make sure
   they match what is at the top of the target of the link.

Signed-off-by: Junio C Hamano <gitster@pobox.com>
8 years agotest-lib-functions.sh: rewrite test_seq without Perl
Junio C Hamano [Mon, 9 May 2016 19:37:01 +0000 (12:37 -0700)] 
test-lib-functions.sh: rewrite test_seq without Perl

Rewrite the 'seq' imitation using only commands and features that
are typically found built into modern POSIX shells, instead of
relying on Perl to run a single-liner script.

Signed-off-by: Junio C Hamano <gitster@pobox.com>
8 years agot4151: make sure argument to 'test -z' is given
Armin Kunaschik [Mon, 9 May 2016 18:57:25 +0000 (11:57 -0700)] 
t4151: make sure argument to 'test -z' is given

88d50724 (am --skip: revert changes introduced by failed 3way merge,
2015-06-06), unlike all the other patches in the series, forgot to
quote the output from "$(git ls-files -u)" when using it as the
argument to "test -z", leading to a syntax error on platforms whose
test does not interpret "test -z" (no other arguments) as testing if
a string "-z" is the null string (which GNU test and test that is
built into bash and dash seem to do).

Note that $(git ls-files -u | wc -l) is deliberately left unquoted,
as some implementations of "wc -l" includes extra blank characters
in its output and cannot be compared as string, i.e. "test 0 = $(...)".

Signed-off-by: Armin Kunaschik <megabreit@googlemail.com>
Signed-off-by: Junio C Hamano <gitster@pobox.com>
8 years agotest-lib-functions.sh: remove misleading comment on test_seq
Junio C Hamano [Mon, 9 May 2016 18:36:09 +0000 (11:36 -0700)] 
test-lib-functions.sh: remove misleading comment on test_seq

We never used the "letters" form since we came up with "test_seq" to
replace use of non-portable "seq" in our test script, which we
introduced it at d17cf5f3 (tests: Introduce test_seq, 2012-08-04).

We use this helper to either iterate for N times (i.e. the values on
the lines do not even matter), or just to get N distinct strings
(i.e. the values on the lines themselves do not really matter, but
we care that they are different from each other and reproducible).

Stop promising that we may allow using "letters"; this would open an
easier reimplementation that does not rely on $PERL, if somebody
later wants to.

Signed-off-by: Junio C Hamano <gitster@pobox.com>
8 years agoi18n: remote: add comment for translators
Vasco Almeida [Sun, 8 May 2016 20:00:18 +0000 (20:00 +0000)] 
i18n: remote: add comment for translators

Add comment drawing translator attention in order to align "Push
URL:" and "Fetch URL:" fields translation of git remote show output.

Aligning both fields makes the output more appealing and easier to
grasp.

Signed-off-by: Vasco Almeida <vascomalmeida@sapo.pt>
Signed-off-by: Junio C Hamano <gitster@pobox.com>
8 years agot6041: do not compress backup tar file
Stefan Beller [Mon, 9 May 2016 17:09:08 +0000 (10:09 -0700)] 
t6041: do not compress backup tar file

The test uses the 'z' option, i.e. "compress the output while at
it", which is GNUism and not portable.

Reported-by: Armin Kunaschik <megabreit@googlemail.com>
Signed-off-by: Stefan Beller <sbeller@google.com>
Signed-off-by: Junio C Hamano <gitster@pobox.com>
8 years agot3513: do not compress backup tar file
Stefan Beller [Fri, 6 May 2016 18:37:05 +0000 (11:37 -0700)] 
t3513: do not compress backup tar file

The test uses the 'z' option, i.e. "compress the output while at
it", which is GNUism and not portable.

Reported-by: Armin Kunaschik <megabreit@googlemail.com>
Signed-off-by: Stefan Beller <sbeller@google.com>
Signed-off-by: Junio C Hamano <gitster@pobox.com>
8 years agot5601: Remove trailing space in sed expression
Torsten Bögershausen [Mon, 9 May 2016 17:53:12 +0000 (19:53 +0200)] 
t5601: Remove trailing space in sed expression

The sed expression for IPv6, "Tested User And Host" or "tuah" used a wrong
sed expression, which doesn't work under all versions of sed.

Reported-By: Armin Kunaschik <megabreit@googlemail.com>
Signed-off-by: Torsten Bögershausen <tboegi@web.de>
Signed-off-by: Junio C Hamano <gitster@pobox.com>
8 years agoAlmost ready for 2.8.3
Junio C Hamano [Fri, 6 May 2016 21:53:36 +0000 (14:53 -0700)] 
Almost ready for 2.8.3

Signed-off-by: Junio C Hamano <gitster@pobox.com>
8 years agoMerge branch 'sb/submodule-path-misc-bugs' into maint
Junio C Hamano [Fri, 6 May 2016 21:53:24 +0000 (14:53 -0700)] 
Merge branch 'sb/submodule-path-misc-bugs' into maint

"git submodule" reports the paths of submodules the command
recurses into, but this was incorrect when the command was not run
from the root level of the superproject.

* sb/submodule-path-misc-bugs:
  t7407: make expectation as clear as possible
  submodule update: test recursive path reporting from subdirectory
  submodule update: align reporting path for custom command execution
  submodule status: correct path handling in recursive submodules
  submodule update --init: correct path handling in recursive submodules
  submodule foreach: correct path display in recursive submodules

8 years agoMerge branch 'ky/imap-send-openssl-1.1.0' into maint
Junio C Hamano [Fri, 6 May 2016 21:53:24 +0000 (14:53 -0700)] 
Merge branch 'ky/imap-send-openssl-1.1.0' into maint

Upcoming OpenSSL 1.1.0 will break compilation b updating a few APIs
we use in imap-send, which has been adjusted for the change.

* ky/imap-send-openssl-1.1.0:
  configure: remove checking for HMAC_CTX_cleanup
  imap-send: avoid deprecated TLSv1_method()
  imap-send: check NULL return of SSL_CTX_new()
  imap-send: use HMAC() function provided by OpenSSL

8 years agoMerge branch 'js/replace-edit-use-editor-configuration' into maint
Junio C Hamano [Fri, 6 May 2016 21:53:24 +0000 (14:53 -0700)] 
Merge branch 'js/replace-edit-use-editor-configuration' into maint

"git replace -e" did not honour "core.editor" configuration.

* js/replace-edit-use-editor-configuration:
  replace --edit: respect core.editor

8 years agoMerge branch 'cc/apply' into maint
Junio C Hamano [Fri, 6 May 2016 21:53:23 +0000 (14:53 -0700)] 
Merge branch 'cc/apply' into maint

Minor code clean-up.

* cc/apply:
  builtin/apply: free patch when parse_chunk() fails
  builtin/apply: handle parse_binary() failure
  apply: remove unused call to free() in gitdiff_{old,new}name()
  builtin/apply: get rid of useless 'name' variable

8 years agoMerge branch 'kn/for-each-tag-branch' into maint
Junio C Hamano [Fri, 6 May 2016 21:53:23 +0000 (14:53 -0700)] 
Merge branch 'kn/for-each-tag-branch' into maint

A minor documentation update.

* kn/for-each-tag-branch:
  for-each-ref: fix description of '--contains' in manpage

8 years agotypofix: assorted typofixes in comments, documentation and messages
Li Peng [Fri, 6 May 2016 12:36:46 +0000 (20:36 +0800)] 
typofix: assorted typofixes in comments, documentation and messages

Many instances of duplicate words (e.g. "the the path") and
a few typoes are fixed, originally in multiple patches.

    wildmatch: fix duplicate words of "the"
    t: fix duplicate words of "output"
    transport-helper: fix duplicate words of "read"
    Git.pm: fix duplicate words of "return"
    path: fix duplicate words of "look"
    pack-protocol.txt: fix duplicate words of "the"
    precompose-utf8: fix typo of "sequences"
    split-index: fix typo
    worktree.c: fix typo
    remote-ext: fix typo
    utf8: fix duplicate words of "the"
    git-cvsserver: fix duplicate words

Signed-off-by: Li Peng <lip@dtdream.com>
Signed-off-by: Junio C Hamano <gitster@pobox.com>
8 years agoremote.c: specify correct plural form in "commit diverge" message
Nguyễn Thái Ngọc Duy [Tue, 3 May 2016 00:12:30 +0000 (07:12 +0700)] 
remote.c: specify correct plural form in "commit diverge" message

We need to count both "ours" and "theirs" commits when selecting plural
form for this message. Note that even though in this block, both ours
and theirs must be positive (i.e. can't be in singular form), we still
keep Q_(singular, plural) because languages other than English may have
more than one plural form.

Reported-by: Alfonsogonzalez, Ernesto (GE Digital) <ernesto.alfonsogonzalez@ge.com>
Signed-off-by: Nguyễn Thái Ngọc Duy <pclouds@gmail.com>
Signed-off-by: Junio C Hamano <gitster@pobox.com>
8 years agoconfig: consistently format $variables in monospaced font
Brian Norris [Wed, 4 May 2016 19:24:48 +0000 (12:24 -0700)] 
config: consistently format $variables in monospaced font

We don't consistently use `backticks` for formatting shell variables.
This patch improves the consistency on shell variables (and a few nearby
mentions of "gpg" commands), though it still doesn't straighten out the
use of "quotes."

Signed-off-by: Brian Norris <computersforpeace@gmail.com>
Signed-off-by: Junio C Hamano <gitster@pobox.com>
8 years agoconfig: describe 'pathname' value type
Junio C Hamano [Fri, 29 Apr 2016 17:43:55 +0000 (10:43 -0700)] 
config: describe 'pathname' value type

We have a dedicated section for various value-types used in the
configuration variables already, because we needed to describe how
booleans and scaled integers can be spelled, and the pathname type
would fit there.

Adjust the description of `include.path`, `core.excludesFile` and
`commit.template` variables slightly to clarify that these variables
are of this type.

Signed-off-by: Junio C Hamano <gitster@pobox.com>
8 years agogit-multimail: update to release 1.3.0
Matthieu Moy [Tue, 3 May 2016 08:31:42 +0000 (10:31 +0200)] 
git-multimail: update to release 1.3.0

The changes are described in CHANGES.

Contributions-by: Matthieu Moy <Matthieu.Moy@imag.fr>
Contributions-by: Stefan Tatschner <rumpelsepp@sevenbyte.org>
Contributions-by: Simon P <simon.git@le-huit.fr>
Contributions-by: Leander Hasty <leander@1stplayable.com>
Signed-off-by: Matthieu Moy <Matthieu.Moy@imag.fr>
Signed-off-by: Junio C Hamano <gitster@pobox.com>
8 years agot7300: mark test with SANITY
Stefan Beller [Tue, 3 May 2016 18:54:32 +0000 (11:54 -0700)] 
t7300: mark test with SANITY

The test runs `chmod 0` on a file to test a case where Git fails to
read it, but that would not work if it is run as root.

Reported-by: Jan Keromnes <janx@linux.com>
Fix-proposed-by: Junio C Hamano <gitster@pobox.com>
Signed-off-by: Stefan Beller <sbeller@google.com>
Signed-off-by: Junio C Hamano <gitster@pobox.com>
8 years agogitweb: apply fallback encoding before highlight
Shin Kojima [Tue, 3 May 2016 13:00:51 +0000 (22:00 +0900)] 
gitweb: apply fallback encoding before highlight

Some multi-byte character encodings (such as Shift_JIS and GBK) have
characters whose final bytes is an ASCII '\' (0x5c), and they
will be displayed as funny-characters even if $fallback_encoding is
correct.  This is because `highlight` command always expects UTF-8
encoded strings from STDIN.

    $ echo 'my $v = "申";' | highlight --syntax perl | w3m -T text/html -dump
    my $v = "申";

    $ echo 'my $v = "申";' | iconv -f UTF-8 -t Shift_JIS | highlight \
        --syntax perl | iconv -f Shift_JIS -t UTF-8 | w3m -T text/html -dump

    iconv: (stdin):9:135: cannot convert
    my $v = "

This patch prepare git blob objects to be encoded into UTF-8 before
highlighting in the manner of `to_utf8` subroutine.

Signed-off-by: Shin Kojima <shin@kojima.org>
Reviewed-by: Jakub Narębski <jnareb@gmail.com>
Signed-off-by: Junio C Hamano <gitster@pobox.com>
8 years agoStart preparing for 2.8.3
Junio C Hamano [Mon, 2 May 2016 21:23:48 +0000 (14:23 -0700)] 
Start preparing for 2.8.3

Signed-off-by: Junio C Hamano <gitster@pobox.com>
8 years agoMerge branch 'jk/use-write-script-more' into maint
Junio C Hamano [Mon, 2 May 2016 21:24:14 +0000 (14:24 -0700)] 
Merge branch 'jk/use-write-script-more' into maint

Code clean-up.

* jk/use-write-script-more:
  t3404: use write_script
  t1020: do not overuse printf and use write_script
  t5532: use write_script

8 years agoMerge branch 'jc/xstrfmt-null-with-prec-0' into maint
Junio C Hamano [Mon, 2 May 2016 21:24:14 +0000 (14:24 -0700)] 
Merge branch 'jc/xstrfmt-null-with-prec-0' into maint

Code cleanup.

* jc/xstrfmt-null-with-prec-0:
  setup.c: do not feed NULL to "%.*s" even with precision 0

8 years agoMerge branch 'ew/send-email-drop-data-dumper' into maint
Junio C Hamano [Mon, 2 May 2016 21:24:13 +0000 (14:24 -0700)] 
Merge branch 'ew/send-email-drop-data-dumper' into maint

Code clean-up.

* ew/send-email-drop-data-dumper:
  send-email: do not load Data::Dumper

8 years agoMerge branch 'ad/cygwin-wants-rename' into maint
Junio C Hamano [Mon, 2 May 2016 21:24:11 +0000 (14:24 -0700)] 
Merge branch 'ad/cygwin-wants-rename' into maint

On Cygwin, object creation uses the "create a temporary and then
rename it to the final name" pattern, not "create a temporary,
hardlink it to the final name and then unlink the temporary"
pattern.

This is necessary to use Git on Windows shared directories, and is
already enabled for the MinGW and plain Windows builds.  It also
has been used in Cygwin packaged versions of Git for quite a while.
See http://thread.gmane.org/gmane.comp.version-control.git/291853
($gmane/275680, $gmane/291853).

* ad/cygwin-wants-rename:
  config.mak.uname: Cygwin needs OBJECT_CREATION_USES_RENAMES

8 years agoMerge branch 'jk/do-not-printf-NULL' into maint
Junio C Hamano [Mon, 2 May 2016 21:24:10 +0000 (14:24 -0700)] 
Merge branch 'jk/do-not-printf-NULL' into maint

"git config" had a codepath that tried to pass a NULL to
printf("%s"), which nobody seems to have noticed.

* jk/do-not-printf-NULL:
  git_config_set_multivar_in_file: handle "unset" errors
  git_config_set_multivar_in_file: all non-zero returns are errors
  config: lower-case first word of error strings

8 years agoMerge branch 'jc/http-socks5h' into maint
Junio C Hamano [Mon, 2 May 2016 21:24:10 +0000 (14:24 -0700)] 
Merge branch 'jc/http-socks5h' into maint

The socks5:// proxy support added back in 2.6.4 days was not aware
that socks5h:// proxies behave differently.

* jc/http-socks5h:
  http: differentiate socks5:// and socks5h://

8 years agoMerge branch 'ky/imap-send' into maint
Junio C Hamano [Mon, 2 May 2016 21:24:09 +0000 (14:24 -0700)] 
Merge branch 'ky/imap-send' into maint

Support for CRAM-MD5 authentication method in "git imap-send" did
not work well.

* ky/imap-send:
  imap-send: fix CRAM-MD5 response calculation
  imap-send: check for NOLOGIN capability only when using LOGIN command

8 years agoMerge branch 'ad/commit-have-m-option' into maint
Junio C Hamano [Mon, 2 May 2016 21:24:09 +0000 (14:24 -0700)] 
Merge branch 'ad/commit-have-m-option' into maint

"git commit" misbehaved in a few minor ways when an empty message
is given via -m '', all of which has been corrected.

* ad/commit-have-m-option:
  commit: do not ignore an empty message given by -m ''
  commit: --amend -m '' silently fails to wipe message

8 years agoMerge branch 'sb/submodule-helper-clone-regression-fix' into maint
Junio C Hamano [Mon, 2 May 2016 21:24:08 +0000 (14:24 -0700)] 
Merge branch 'sb/submodule-helper-clone-regression-fix' into maint

A partial rewrite of "git submodule" in the 2.7 timeframe changed
the way the gitdir: pointer in the submodules point at the real
repository location to use absolute paths by accident.  This has
been corrected.

* sb/submodule-helper-clone-regression-fix:
  submodule--helper, module_clone: catch fprintf failure
  submodule--helper: do not borrow absolute_path() result for too long
  submodule--helper, module_clone: always operate on absolute paths
  submodule--helper clone: create the submodule path just once
  submodule--helper: fix potential NULL-dereference
  recursive submodules: test for relative paths

8 years agoMerge branch 'jk/branch-shortening-funny-symrefs' into maint
Junio C Hamano [Mon, 2 May 2016 21:24:07 +0000 (14:24 -0700)] 
Merge branch 'jk/branch-shortening-funny-symrefs' into maint

A change back in version 2.7 to "git branch" broke display of a
symbolic ref in a non-standard place in the refs/ hierarchy (we
expect symbolic refs to appear in refs/remotes/*/HEAD to point at
the primary branch the remote has, and as .git/HEAD to point at the
branch we locally checked out).

* jk/branch-shortening-funny-symrefs:
  branch: fix shortening of non-remote symrefs

8 years agoMerge branch 'es/format-patch-doc-hide-no-patch' into maint
Junio C Hamano [Mon, 2 May 2016 21:24:06 +0000 (14:24 -0700)] 
Merge branch 'es/format-patch-doc-hide-no-patch' into maint

"git format-patch --help" showed `-s` and `--no-patch` as if these
are valid options to the command.  We already hide `--patch` option
from the documentation, because format-patch is about showing the
diff, and the documentation now hides these options as well.

* es/format-patch-doc-hide-no-patch:
  git-format-patch.txt: don't show -s as shorthand for multiple options

8 years agoMerge branch 'ky/branch-m-worktree' into maint
Junio C Hamano [Mon, 2 May 2016 21:24:05 +0000 (14:24 -0700)] 
Merge branch 'ky/branch-m-worktree' into maint

When "git worktree" feature is in use, "git branch -m" renamed a
branch that is checked out in another worktree without adjusting
the HEAD symbolic ref for the worktree.

* ky/branch-m-worktree:
  set_worktree_head_symref(): fix error message
  branch -m: update all per-worktree HEADs
  refs: add a new function set_worktree_head_symref

8 years agoMerge branch 'ky/branch-d-worktree' into maint
Junio C Hamano [Mon, 2 May 2016 21:24:05 +0000 (14:24 -0700)] 
Merge branch 'ky/branch-d-worktree' into maint

When "git worktree" feature is in use, "git branch -d" allowed
deletion of a branch that is checked out in another worktree

* ky/branch-d-worktree:
  branch -d: refuse deleting a branch which is currently checked out

8 years agoMerge branch 'jk/check-repository-format' into maint
Junio C Hamano [Mon, 2 May 2016 21:24:04 +0000 (14:24 -0700)] 
Merge branch 'jk/check-repository-format' into maint

The repository set-up sequence has been streamlined (the biggest
change is that there is no longer git_config_early()), so that we
do not attempt to look into refs/* when we know we do not have a
Git repository.

* jk/check-repository-format:
  verify_repository_format: mark messages for translation
  setup: drop repository_format_version global
  setup: unify repository version callbacks
  init: use setup.c's repo version verification
  setup: refactor repo format reading and verification
  config: drop git_config_early
  check_repository_format_gently: stop using git_config_early
  lazily load core.sharedrepository
  wrap shared_repository global in get/set accessors
  setup: document check_repository_format()

8 years agoMerge branch 'ew/send-email-readable-message-id' into maint
Junio C Hamano [Mon, 2 May 2016 21:24:04 +0000 (14:24 -0700)] 
Merge branch 'ew/send-email-readable-message-id' into maint

"git send-email" now uses a more readable timestamps when
formulating a message ID.

* ew/send-email-readable-message-id:
  send-email: more meaningful Message-ID

8 years ago.mailmap: update to my shorter email address
Eric Wong [Mon, 2 May 2016 19:31:21 +0000 (19:31 +0000)] 
.mailmap: update to my shorter email address

Following f916ab0ccc ("send-email: more meaningful Message-ID"),
my own email address is too long :x

While I could have an even shorter address by one character with
"yhbt.net", "80x24.org" is more representative of my
hacking-related pursuits.

Signed-off-by: Eric Wong <e@80x24.org>
Signed-off-by: Eric Wong <normalperson@yhbt.net>
Signed-off-by: Junio C Hamano <gitster@pobox.com>
8 years agoDocumentation: fix typo 'In such these cases'
René Nyffenegger [Mon, 2 May 2016 07:38:20 +0000 (09:38 +0200)] 
Documentation: fix typo 'In such these cases'

Signed-off-by: René Nyffenegger <mail@renenyffenegger.ch>
Signed-off-by: Junio C Hamano <gitster@pobox.com>
8 years agoDocumentation: add setup instructions for Travis CI
Lars Schneider [Mon, 2 May 2016 08:12:12 +0000 (10:12 +0200)] 
Documentation: add setup instructions for Travis CI

Also change UK english "behaviour" to US english "behavior".

Signed-off-by: Lars Schneider <larsxschneider@gmail.com>
Signed-off-by: Junio C Hamano <gitster@pobox.com>
8 years agot5510: run auto-gc in the foreground
SZEDER Gábor [Sun, 1 May 2016 15:37:43 +0000 (17:37 +0200)] 
t5510: run auto-gc in the foreground

The last test added to 't5510-fetch' in 0898c9628104 (fetch: release
pack files before garbage-collecting, 2016-01-13) may sporadically
trigger following error message from the test harness:

  rm: cannot remove 'trash directory.t5510-fetch/auto-gc/.git': Directory not empty

The test in question forces an auto-gc, which, if the system supports
it, runs in the background by default, and occasionally takes long
enough for the test to finish and for 'test_done' to start
housekeeping.  This can lead to the test's 'git gc --auto' in the
background and 'test_done's 'rm -rf $trash' in the foreground racing
each other to create and delete files and directories.  It might just
happen that 'git gc' re-creates a directory that 'rm -rf' already
visited and removed, which ultimately triggers the above error.

Disable detaching the auto-gc process to ensure that it finishes
before the test can continue, thus avoiding this racy situation.

Signed-off-by: SZEDER Gábor <szeder@ira.uka.de>
Reviewed-by: Johannes Schindelin <johannes.schindelin@gmx.de>
Signed-off-by: Junio C Hamano <gitster@pobox.com>
8 years agoWindows: add pthread_sigmask() that does nothing
Johannes Sixt [Sun, 1 May 2016 19:08:21 +0000 (21:08 +0200)] 
Windows: add pthread_sigmask() that does nothing

A previous change introduced a call to pthread_sigmask() in order to block
SIGPIPE in a thread. Since there are no signal facilities on Windows that
are similar to POSIX signals, just ignore the request to block the signal.
In the particular case, the effect of blocking SIGPIPE on POSIX is that
write() calls return EPIPE when the reader closes the pipe. This is how
write() behaves on Windows.

Signed-off-by: Johannes Sixt <j6t@kdbg.org>
Signed-off-by: Junio C Hamano <gitster@pobox.com>
8 years agoGit 2.8.2 v2.8.2
Junio C Hamano [Fri, 29 Apr 2016 21:18:16 +0000 (14:18 -0700)] 
Git 2.8.2

Signed-off-by: Junio C Hamano <gitster@pobox.com>
8 years agoMerge branch 'js/mingw-tests-2.8' into maint
Junio C Hamano [Fri, 29 Apr 2016 21:16:01 +0000 (14:16 -0700)] 
Merge branch 'js/mingw-tests-2.8' into maint

Code clean-up.

* js/mingw-tests-2.8:
  Windows: shorten code by re-using convert_slashes()

8 years agoMerge branch 'ep/trace-doc-sample-fix' into maint
Junio C Hamano [Fri, 29 Apr 2016 21:16:00 +0000 (14:16 -0700)] 
Merge branch 'ep/trace-doc-sample-fix' into maint

Fix a typo in an example in the trace API documentation.

* ep/trace-doc-sample-fix:
  api-trace.txt: fix typo

8 years agoMerge branch 'jc/makefile-redirection-stderr' into maint
Junio C Hamano [Fri, 29 Apr 2016 21:15:59 +0000 (14:15 -0700)] 
Merge branch 'jc/makefile-redirection-stderr' into maint

A minor fix in the Makefile.

* jc/makefile-redirection-stderr:
  Makefile: fix misdirected redirections