]> Kevux Git Server - rit/log
rit
13 years agoMerge branch 'rr/maint-tilde-markup-in-doc'
Junio C Hamano [Wed, 31 Jul 2013 19:38:15 +0000 (12:38 -0700)]
Merge branch 'rr/maint-tilde-markup-in-doc'

* rr/maint-tilde-markup-in-doc:
  config doc: quote paths, fixing tilde-interpretation

13 years agoMerge branch 'mh/packed-refs-do-one-ref-recursion'
Junio C Hamano [Wed, 31 Jul 2013 19:38:11 +0000 (12:38 -0700)]
Merge branch 'mh/packed-refs-do-one-ref-recursion'

Fix a NULL-pointer dereference during nested iterations over
references (for example, when replace references are being used).

* mh/packed-refs-do-one-ref-recursion:
  do_one_ref(): save and restore value of current_ref

13 years agohttp.c: fix parsing of http.sslCertPasswordProtected variable
Junio C Hamano [Fri, 12 Jul 2013 18:52:47 +0000 (11:52 -0700)]
http.c: fix parsing of http.sslCertPasswordProtected variable

The existing code triggers only when the configuration variable is
set to true.  Once the variable is set to true in a more generic
configuration file (e.g. ~/.gitconfig), it cannot be overriden to
false in the repository specific one (e.g. .git/config).

Signed-off-by: Junio C Hamano <gitster@pobox.com>
13 years agosubmodule.c: add .gitmodules staging helper functions
Jens Lehmann [Tue, 30 Jul 2013 19:50:34 +0000 (21:50 +0200)]
submodule.c: add .gitmodules staging helper functions

Add the new is_staging_gitmodules_ok() and stage_updated_gitmodules()
functions to submodule.c. The first makes it possible for call sites to
see if the .gitmodules file did contain any unstaged modifications they
would accidentally stage in addition to those they intend to stage
themselves. The second function stages all modifications to the
.gitmodules file, both will be used by subsequent patches for the mv
and rm commands.

Signed-off-by: Jens Lehmann <Jens.Lehmann@web.de>
Signed-off-by: Junio C Hamano <gitster@pobox.com>
13 years agomv: move submodules using a gitfile
Jens Lehmann [Tue, 30 Jul 2013 19:50:03 +0000 (21:50 +0200)]
mv: move submodules using a gitfile

When moving a submodule which uses a gitfile to point to the git directory
stored in .git/modules/<name> of the superproject two changes must be made
to make the submodule work: the .git file and the core.worktree setting
must be adjusted to point from work tree to git directory and back.

Achieve that by remembering which submodule uses a gitfile by storing the
result of read_gitfile() of each submodule. If that is not NULL the new
function connect_work_tree_and_git_dir() is called after renaming the
submodule's work tree which updates the two settings to the new values.

Extend the man page to inform the user about that feature (and while at it
change the description to not talk about a script anymore, as mv is a
builtin for quite some time now).

Signed-off-by: Jens Lehmann <Jens.Lehmann@web.de>
Signed-off-by: Junio C Hamano <gitster@pobox.com>
13 years agomv: move submodules together with their work trees
Jens Lehmann [Tue, 30 Jul 2013 19:49:25 +0000 (21:49 +0200)]
mv: move submodules together with their work trees

Currently the attempt to use "git mv" on a submodule errors out with:

  fatal: source directory is empty, source=<src>, destination=<dest>

The reason is that mv searches for the submodule with a trailing slash in
the index, which it doesn't find (because it is stored without a trailing
slash). As it doesn't find any index entries inside the submodule it
claims the directory would be empty even though it isn't.

Fix that by searching for the name without a trailing slash and continue
if it is a submodule. Then rename() will move the submodule work tree just
like it moves a file.

Signed-off-by: Jens Lehmann <Jens.Lehmann@web.de>
Signed-off-by: Junio C Hamano <gitster@pobox.com>
13 years agotag: use OPT_CMDMODE
Junio C Hamano [Tue, 30 Jul 2013 19:31:27 +0000 (12:31 -0700)]
tag: use OPT_CMDMODE

This is just a demonstration of how the code would look like; I do
not think it is particularly easier to read than before myself.

Signed-off-by: Junio C Hamano <gitster@pobox.com>
13 years agoparse-options: add OPT_CMDMODE()
Junio C Hamano [Tue, 30 Jul 2013 19:06:01 +0000 (12:06 -0700)]
parse-options: add OPT_CMDMODE()

This can be used to define a set of mutually exclusive "command
mode" options, and automatically catch use of more than one from
that set as an error.

Signed-off-by: Junio C Hamano <gitster@pobox.com>
13 years agohttp: add http.savecookies option to write out HTTP cookies
Dave Borowitz [Tue, 23 Jul 2013 22:40:17 +0000 (15:40 -0700)]
http: add http.savecookies option to write out HTTP cookies

HTTP servers may send Set-Cookie headers in a response and expect them
to be set on subsequent requests. By default, libcurl behavior is to
store such cookies in memory and reuse them across requests within a
single session. However, it may also make sense, depending on the
server and the cookies, to store them across sessions. Provide users
an option to enable this behavior, writing cookies out to the same
file specified in http.cookiefile.

Signed-off-by: Dave Borowitz <dborowitz@google.com>
Signed-off-by: Junio C Hamano <gitster@pobox.com>
13 years agoMerge branch 'jk/capabilities-doc'
Junio C Hamano [Tue, 30 Jul 2013 16:16:42 +0000 (09:16 -0700)]
Merge branch 'jk/capabilities-doc'

* jk/capabilities-doc:
  document 'allow-tip-sha1-in-want' capability
  document 'quiet' receive-pack capability
  document 'agent' protocol capability
  docs: note that receive-pack knows side-band-64k capability
  docs: fix 'report-status' protocol capability thinko

13 years agoMerge branch 'sb/mailmap-updates'
Junio C Hamano [Tue, 30 Jul 2013 16:16:39 +0000 (09:16 -0700)]
Merge branch 'sb/mailmap-updates'

* sb/mailmap-updates:
  .mailmap: combine more (email, name) to individual persons

13 years agoMerge branch 'bc/completion-for-bash-3.0'
Junio C Hamano [Tue, 30 Jul 2013 16:16:36 +0000 (09:16 -0700)]
Merge branch 'bc/completion-for-bash-3.0'

* bc/completion-for-bash-3.0:
  git-completion.bash: replace zsh notation that breaks bash 3.X

13 years agoimap-send: use Apple's Security framework for base64 encoding
Jeremy Huddleston [Tue, 30 Jul 2013 01:28:30 +0000 (18:28 -0700)]
imap-send: use Apple's Security framework for base64 encoding

Use Apple's supported functions for base64 encoding instead
of the deprecated OpenSSL functions.

Signed-off-by: Jeremy Huddleston <jeremyhu@apple.com>
Signed-off-by: David Aguilar <davvid@gmail.com>
Signed-off-by: Junio C Hamano <gitster@pobox.com>
13 years agoquote: remove sq_quote_print()
Ramkumar Ramachandra [Tue, 30 Jul 2013 08:31:27 +0000 (14:01 +0530)]
quote: remove sq_quote_print()

Remove sq_quote_print() since it has no callers.

Signed-off-by: Ramkumar Ramachandra <artagnon@gmail.com>
Signed-off-by: Nguyễn Thái Ngọc Duy <pclouds@gmail.com>
Signed-off-by: Junio C Hamano <gitster@pobox.com>
13 years agotar-tree: remove dependency on sq_quote_print()
Ramkumar Ramachandra [Tue, 30 Jul 2013 08:31:26 +0000 (14:01 +0530)]
tar-tree: remove dependency on sq_quote_print()

By rewriting the loop that formats the argv[] in cmd_tar_tree()
function using sq_quote_argv() for code simplicity, the last use of
sq_quote_print() goes away.

Signed-off-by: Ramkumar Ramachandra <artagnon@gmail.com>
Signed-off-by: Nguyễn Thái Ngọc Duy <pclouds@gmail.com>
Signed-off-by: Junio C Hamano <gitster@pobox.com>
13 years agofor-each-ref, quote: convert *_quote_print -> *_quote_buf
Nguyễn Thái Ngọc Duy [Tue, 30 Jul 2013 08:31:25 +0000 (14:01 +0530)]
for-each-ref, quote: convert *_quote_print -> *_quote_buf

The print_value() function in for-each-ref.c prints values to stdout
immediately using {sq|perl|python|tcl}_quote_print().  Change these
lower-level quote functions to instead leave their results in strbuf
so that we can later add post-processing to the results of them.

Signed-off-by: Nguyễn Thái Ngọc Duy <pclouds@gmail.com>
Signed-off-by: Ramkumar Ramachandra <artagnon@gmail.com>
Signed-off-by: Junio C Hamano <gitster@pobox.com>
13 years agocontrib/subtree: Fix make install target
Michal Sojka [Tue, 30 Jul 2013 08:16:09 +0000 (10:16 +0200)]
contrib/subtree: Fix make install target

If the libexec directory doesn't exist, git-subtree gets installed as
$prefix/share/libexec/git-core file. This patch creates the directory
before installing git-subtree file into it.

Signed-off-by: Michal Sojka <sojkam1@fel.cvut.cz>
Signed-off-by: Junio C Hamano <gitster@pobox.com>
13 years agomany small typofixes
Ondřej Bílka [Mon, 29 Jul 2013 08:18:21 +0000 (10:18 +0200)]
many small typofixes

Signed-off-by: Ondřej Bílka <neleai@seznam.cz>
Reviewed-by: Marc Branchaud <marcnarc@xiplink.com>
Signed-off-by: Junio C Hamano <gitster@pobox.com>
13 years agoeditor: use canonicalized absolute path
Ramkumar Ramachandra [Sun, 28 Jul 2013 16:59:42 +0000 (22:29 +0530)]
editor: use canonicalized absolute path

By improving the relative_path() algorithm, e02ca72 (path.c:
refactor relative_path(), not only strip prefix, 2013-06-25)
uncovered a latent bug in Emacs.  While most editor applications
like cat and vim handle non-canonicalized relative paths fine, emacs
does not.  This is due to a long-standing bug in emacs, where it
refuses to resolve symlinks in the supplied path:

  #!/bin/sh
  cd /tmp
  mkdir z z/a z/b
  echo moodle >z/a/file
  ln -s z/b
  cd b
  emacs ../a/file # fail: attempts to open /tmp/a/file

Even if emacs were to be patched to fix this bug, it may be nicer to
help users running older versions.

Note that this can potentially regress for users of all editors,
when they ask "what file am I editing?" to the editor, as it is
likely to answer with an unsightly long full path.

Co-authored-by: Nguyễn Thái Ngọc Duy <pclouds@gmail.com>
Signed-off-by: Ramkumar Ramachandra <artagnon@gmail.com>
Signed-off-by: Junio C Hamano <gitster@pobox.com>
13 years agogit-rebase: fix typo
Ralf Thielow [Mon, 29 Jul 2013 04:24:43 +0000 (06:24 +0200)]
git-rebase: fix typo

Signed-off-by: Ralf Thielow <ralf.thielow@gmail.com>
Signed-off-by: Junio C Hamano <gitster@pobox.com>
13 years agoAvoid using `echo -n` anywhere
Lukas Fleischer [Sat, 27 Jul 2013 12:11:33 +0000 (14:11 +0200)]
Avoid using `echo -n` anywhere

`echo -n` is non-portable. The POSIX specification says:

    Conforming applications that wish to do prompting without <newline>
    characters or that could possibly be expecting to echo a -n, should
    use the printf utility derived from the Ninth Edition system.

Since all of the affected shell scripts use a POSIX shell shebang,
replace `echo -n` invocations with printf.

Signed-off-by: Lukas Fleischer <git@cryptocrack.de>
Signed-off-by: Junio C Hamano <gitster@pobox.com>
13 years agocommit-slab.h: Fix memory allocation and addressing
Ramsay Jones [Sat, 27 Jul 2013 19:00:07 +0000 (20:00 +0100)]
commit-slab.h: Fix memory allocation and addressing

The slab initialization code includes the calculation of the
slab 'elem_size', which is in turn used to determine the size
(capacity) of the slab. Each element of the slab represents an
array, of length 'stride', of 'elemtype'. (Note that it may be
clearer if the define_commit_slab macro parameter was called
'basetype' rather than 'elemtype'). However, the 'elem_size'
calculation incorrectly uses 'sizeof(struct slabname)' in the
expression, rather than 'sizeof(elemtype)'.

Within the slab access routine, <slabname>_at(), the given commit
'index' is transformed into an (slab#, slot#) pair used to address
the required element (a pointer to the first element of the array
of 'elemtype' associated with that commit). The current code to
calculate these address coordinates multiplies the commit index
by the 'stride' which, at least for the slab#, produces the wrong
result. Using the commit index directly, without scaling by the
'stride', produces the correct 'logical' address.

Also, when allocating a new slab, the size of the allocation only
allows for a slab containing elements of single element arrays of
'elemtype'. This should allow for elements of an array of length
'stride' of 'elemtype'. In order to fix this, we need to change
the element size parameter to xcalloc() by multiplying the current
element size (sizeof(**s->slab)) by the s->stride.

Having changed the calculation of the slot#, we now need to convert
the logical 'nth_slot', by scaling with s->stride, into the correct
physical address.

Signed-off-by: Ramsay Jones <ramsay@ramsay1.demon.co.uk>
Signed-off-by: Junio C Hamano <gitster@pobox.com>
13 years agocommit: tweak empty cherry pick advice for sequencer
Jeff King [Fri, 26 Jul 2013 23:39:28 +0000 (19:39 -0400)]
commit: tweak empty cherry pick advice for sequencer

When we refuse to make an empty commit, we check whether we
are in a cherry-pick in order to give better advice on how
to proceed. We instruct the user to repeat the commit with
"--allow-empty" to force the commit, or to use "git reset"
to skip it and abort the cherry-pick.

In the case of a single cherry-pick, the distinction between
skipping and aborting is not important, as there is no more
work to be done afterwards.  When we are using the sequencer
to cherry pick a series of commits, though, the instruction
is confusing: does it skip this commit, or does it abort the
rest of the cherry-pick?

It does skip, after which the user can continue the
cherry-pick. This is the right thing to be advising the user
to do, but let's make it more clear what will happen, both
by using the word "skip", and by mentioning that the rest of
the sequence can be continued via "cherry-pick --continue"
(whether we skip or take the commit).

Noticed-by: Ramkumar Ramachandra <artagnon@gmail.com>
Helped-by: Jonathan Nieder <jrnieder@gmail.com>
Signed-off-by: Jeff King <peff@peff.net>
Signed-off-by: Junio C Hamano <gitster@pobox.com>
13 years agodocs/git-tag: explain lightweight versus annotated tags
Daniele Segato [Fri, 26 Jul 2013 19:06:02 +0000 (15:06 -0400)]
docs/git-tag: explain lightweight versus annotated tags

Stress the difference between the two with a suggestion on
when the user should use one in place of the other.

Signed-off-by: Daniele Segato <daniele.segato@gmail.com>
Signed-off-by: Jeff King <peff@peff.net>
Reviewed-by: Jonathan Nieder <jrnieder@gmail.com>
Signed-off-by: Junio C Hamano <gitster@pobox.com>
13 years agol10n: vi.po (2133t)
Tran Ngoc Quan [Sat, 27 Jul 2013 01:46:06 +0000 (08:46 +0700)]
l10n: vi.po (2133t)

Signed-off-by: Tran Ngoc Quan <vnwildman@gmail.com>
13 years agoconfig doc: quote paths, fixing tilde-interpretation
Ramkumar Ramachandra [Fri, 26 Jul 2013 10:42:02 +0000 (16:12 +0530)]
config doc: quote paths, fixing tilde-interpretation

The --global section of git-config(1) currently reads like:

  For writing options: write to global /.gitconfig file rather than the
                                       ^
       start tilde

  repository .git/config, write to $XDG_CONFIG_HOME/git/config file if
  this file exists and the/.gitconfig file doesn’t.
                          ^
  end tilde

Instead of tilde (~) being interpreted literally, asciidoc subscripts
the text between the two tildes.  To fix this problem, use backticks (`)
to quote all the paths in the file uniformly, just like config.txt does.

Signed-off-by: Ramkumar Ramachandra <artagnon@gmail.com>
Signed-off-by: Junio C Hamano <gitster@pobox.com>
13 years agodocument 'allow-tip-sha1-in-want' capability
Nguyễn Thái Ngọc Duy [Fri, 26 Jul 2013 11:01:54 +0000 (18:01 +0700)]
document 'allow-tip-sha1-in-want' capability

See 390eb36 (upload-pack: optionally allow fetching from the tips of
hidden refs - 2013-01-28) for more information.

Signed-off-by: Nguyễn Thái Ngọc Duy <pclouds@gmail.com>
Signed-off-by: Junio C Hamano <gitster@pobox.com>
13 years agol10n: git.pot: v1.8.4 round 1 (99 new, 46 removed)
Jiang Xin [Fri, 26 Jul 2013 00:56:45 +0000 (08:56 +0800)]
l10n: git.pot: v1.8.4 round 1 (99 new, 46 removed)

Generate po/git.pot from v1.8.4-rc0 for git v1.8.4 l10n round 1.

Signed-off-by: Jiang Xin <worldhello.net@gmail.com>
13 years agobuiltin/rm.c: consolidate error reporting for removing submodules
Junio C Hamano [Fri, 26 Jul 2013 06:05:17 +0000 (23:05 -0700)]
builtin/rm.c: consolidate error reporting for removing submodules

We have two (not identical) copies of error reporting when
attempting to remove submodules that have their repositories
embedded within them.  Add a helper function so that we do not have
to repeat similar error messages with subtly different wording
without a good reason.

Noticed by Jiang Xin.

Signed-off-by: Junio C Hamano <gitster@pobox.com>
13 years agocommit.h: drop redundant comment
Jeff King [Thu, 25 Jul 2013 20:01:00 +0000 (16:01 -0400)]
commit.h: drop redundant comment

We mention twice that the from_ident field of struct
pretty_print_context is internal.

The first comment was added by 10f2fbf, which prepares the
struct for internal fields, and then the second by a908047,
which actually adds such a field. This was a mistake made
when re-rolling the series on the list; the comment should
have been removed from the latter commit.

Signed-off-by: Jeff King <peff@peff.net>
Signed-off-by: Junio C Hamano <gitster@pobox.com>
13 years agoGit 1.8.4-rc0
Junio C Hamano [Thu, 25 Jul 2013 02:29:07 +0000 (19:29 -0700)]
Git 1.8.4-rc0

Signed-off-by: Junio C Hamano <gitster@pobox.com>
13 years agoMerge branch 'mh/multimail'
Junio C Hamano [Thu, 25 Jul 2013 02:23:03 +0000 (19:23 -0700)]
Merge branch 'mh/multimail'

An enhanced "post-receive" hook to send e-mail messages.

* mh/multimail:
  post-receive-email: deprecate script in favor of git-multimail
  git-multimail: an improved replacement for post-receive-email

13 years agoMerge branch 'ob/typofixes'
Junio C Hamano [Thu, 25 Jul 2013 02:23:00 +0000 (19:23 -0700)]
Merge branch 'ob/typofixes'

* ob/typofixes:
  typofix: in-code comments
  typofix: documentation
  typofix: release notes

13 years agoMerge branch 'es/contacts'
Junio C Hamano [Thu, 25 Jul 2013 02:22:57 +0000 (19:22 -0700)]
Merge branch 'es/contacts'

A helper to read from a set of format-patch output files or a range
of commits and find those who may have insights to the code that
the changes touch by running a series of "git blame" commands.

* es/contacts:
  contrib: contacts: add documentation
  contrib: contacts: add mailmap support
  contrib: contacts: interpret committish akin to format-patch
  contrib: contacts: add ability to parse from committish
  contrib: add git-contacts helper

13 years agoMerge branch 'ml/cygwin-updates'
Junio C Hamano [Thu, 25 Jul 2013 02:22:49 +0000 (19:22 -0700)]
Merge branch 'ml/cygwin-updates'

The tip one does _not_ revert c869753e (Force core.filemode to
false on Cygwin., 2006-12-30) on purpose, so that people can
still retain the old behaviour if they wanted to.

* ml/cygwin-updates:
  cygwin: stop forcing core.filemode=false
  Cygwin 1.7 supports mmap
  Cygwin 1.7 has thread-safe pread
  Cygwin 1.7 needs compat/regex

13 years agoMerge branch 'rj/sparse'
Junio C Hamano [Thu, 25 Jul 2013 02:21:30 +0000 (19:21 -0700)]
Merge branch 'rj/sparse'

* rj/sparse:
  Revert "compat/unsetenv.c: Fix a sparse warning"

13 years agoMerge branch 'sb/traverse-trees-bitmask-variable-name'
Junio C Hamano [Thu, 25 Jul 2013 02:21:25 +0000 (19:21 -0700)]
Merge branch 'sb/traverse-trees-bitmask-variable-name'

* sb/traverse-trees-bitmask-variable-name:
  traverse_trees(): clarify return value of the callback

13 years agoMerge branch 'jk/cat-file-batch-optim'
Junio C Hamano [Thu, 25 Jul 2013 02:21:21 +0000 (19:21 -0700)]
Merge branch 'jk/cat-file-batch-optim'

If somebody wants to only know on-disk footprint of an object
without having to know its type or payload size, we can bypass a
lot of code to cheaply learn it.

* jk/cat-file-batch-optim:
  Fix some sparse warnings
  sha1_object_info_extended: pass object_info to helpers
  sha1_object_info_extended: make type calculation optional
  packed_object_info: make type lookup optional
  packed_object_info: hoist delta type resolution to helper
  sha1_loose_object_info: make type lookup optional
  sha1_object_info_extended: rename "status" to "type"
  cat-file: disable object/refname ambiguity check for batch mode

13 years agoMerge branch 'ml/avoid-using-grep-on-crlf-files'
Junio C Hamano [Thu, 25 Jul 2013 02:21:18 +0000 (19:21 -0700)]
Merge branch 'ml/avoid-using-grep-on-crlf-files'

On systems that understand a CRLF as a line ending, tests in this
script that worked on files with CRLF line endings using "grep" to
extract matching lines may lose the CR at the end of lines that
match, causing the actual output not to match the expected output.

* ml/avoid-using-grep-on-crlf-files:
  test-lib.sh - define and use GREP_STRIPS_CR

13 years agoMerge branch 'jm/doc-ref-prune'
Junio C Hamano [Thu, 25 Jul 2013 02:21:15 +0000 (19:21 -0700)]
Merge branch 'jm/doc-ref-prune'

* jm/doc-ref-prune:
  Documentation: fix git-prune example usage
  Documentation: remove --prune from pack-refs examples

13 years agoMerge branch 'rh/template-updates'
Junio C Hamano [Thu, 25 Jul 2013 02:21:07 +0000 (19:21 -0700)]
Merge branch 'rh/template-updates'

* rh/template-updates:
  templates: spell ASCII in uppercase in pre-commit hook
  templates: Reformat pre-commit hook's message
  templates: Use heredoc in pre-commit hook

13 years agoMerge branch 'mh/ref-races-optim-invalidate-cached'
Junio C Hamano [Thu, 25 Jul 2013 02:21:02 +0000 (19:21 -0700)]
Merge branch 'mh/ref-races-optim-invalidate-cached'

* mh/ref-races-optim-invalidate-cached:
  refs: do not invalidate the packed-refs cache unnecessarily

13 years agoMerge branch 'sb/misc-fixes'
Junio C Hamano [Thu, 25 Jul 2013 02:20:58 +0000 (19:20 -0700)]
Merge branch 'sb/misc-fixes'

Assorted code cleanups and a minor fix.

* sb/misc-fixes:
  diff.c: Do not initialize a variable, which gets reassigned anyway.
  commit: Fix a memory leak in determine_author_info
  daemon.c:handle: Remove unneeded check for null pointer.

13 years agoMerge branch 'tr/line-log'
Junio C Hamano [Thu, 25 Jul 2013 02:19:24 +0000 (19:19 -0700)]
Merge branch 'tr/line-log'

Fix "log -L" command line parsing bugs.

* tr/line-log:
  t4211: fix incorrect rebase at f8395edc (range-set: satisfy non-empty ranges invariant)
  line-log: fix "log -LN" crash when N is last line of file
  range-set: satisfy non-empty ranges invariant
  t4211: demonstrate crash when first -L encountered is empty range
  t4211: demonstrate empty -L range crash
  range-set: fix sort_and_merge_range_set() corner case bug

13 years agogit-clean: implement partial matching for selection
Jiang Xin [Wed, 24 Jul 2013 02:22:04 +0000 (10:22 +0800)]
git-clean: implement partial matching for selection

Document for interactive git-clean says: "You also could say `c` or
`clean` above as long as the choice is unique". But it's not true,
because only hotkey `c` and full match (`clean`) could work.

Implement partial matching via find_unique function to make the
document right.

Signed-off-by: Jiang Xin <worldhello.net@gmail.com>
Signed-off-by: Junio C Hamano <gitster@pobox.com>
13 years agoDocumentation/git-clean: fix description for range
Jiang Xin [Tue, 23 Jul 2013 22:22:43 +0000 (06:22 +0800)]
Documentation/git-clean: fix description for range

The descriptions of "select by numbers" section for interactive
git-clean are borrowed from git-add, and one sentence should be
replaced.

Signed-off-by: Jiang Xin <worldhello.net@gmail.com>
Signed-off-by: Junio C Hamano <gitster@pobox.com>
13 years ago.mailmap: combine more (email, name) to individual persons
Stefan Beller [Wed, 24 Jul 2013 17:55:18 +0000 (19:55 +0200)]
.mailmap: combine more (email, name) to individual persons

I got more responses from people regarding the .mailmap file.
All added persons gave permission to add them to the .mailmap file.

Signed-off-by: Stefan Beller <stefanbeller@googlemail.com>
Signed-off-by: Junio C Hamano <gitster@pobox.com>
13 years agodocument 'quiet' receive-pack capability
Jeff King [Wed, 24 Jul 2013 08:03:43 +0000 (04:03 -0400)]
document 'quiet' receive-pack capability

This was added in c207e34 (fix push --quiet: add 'quiet'
capability to receive-pack, 2012-01-08) but never
documented.

Signed-off-by: Jeff King <peff@peff.net>
Signed-off-by: Junio C Hamano <gitster@pobox.com>
13 years agodocument 'agent' protocol capability
Jeff King [Wed, 24 Jul 2013 08:03:13 +0000 (04:03 -0400)]
document 'agent' protocol capability

This was added in ff5effd (include agent identifier in
capability string, 2012-08-03), but neither the syntax nor
the semantics were ever documented outside of the commit
message.

Signed-off-by: Jeff King <peff@peff.net>
Signed-off-by: Junio C Hamano <gitster@pobox.com>
13 years agodocs: note that receive-pack knows side-band-64k capability
Jeff King [Wed, 24 Jul 2013 08:01:59 +0000 (04:01 -0400)]
docs: note that receive-pack knows side-band-64k capability

The protocol-capabilities documentation notes that any
capabilities not explicitly mentioned for receive-pack work
only for upload-pack.

Receive-pack has advertised and understood side-band-64k
since 38a81b4 (receive-pack: Wrap status reports inside
side-band-64k, 2010-02-05), but we do not mention it
explicitly. Let's do so.

Note that receive-pack does not understand side-band, which
was obsolete by that point.

Signed-off-by: Jeff King <peff@peff.net>
Signed-off-by: Junio C Hamano <gitster@pobox.com>
13 years agodocs: fix 'report-status' protocol capability thinko
Jeff King [Wed, 24 Jul 2013 08:01:21 +0000 (04:01 -0400)]
docs: fix 'report-status' protocol capability thinko

The report-status capability is understood by receive-pack,
not upload-pack.

Signed-off-by: Jeff King <peff@peff.net>
Signed-off-by: Junio C Hamano <gitster@pobox.com>
13 years agogit-completion.bash: replace zsh notation that breaks bash 3.X
Brandon Casey [Fri, 18 Jan 2013 19:24:01 +0000 (11:24 -0800)]
git-completion.bash: replace zsh notation that breaks bash 3.X

50c5885e (git-completion.bash: replace zsh notation that breaks bash
3.X, 2013-01-18) fixed a zsh-ism introduced earlier to append to an
array, which older versions of bash (3.0) did not grok.  This was
again broken by 734b2f05 (completion: synchronize zsh wrapper,
2013-05-08).

Cherry-pick the fix again to let those with older bash use the
completion script.

Signed-off-by: Brandon Casey <drafnel@gmail.com>
Signed-off-by: Junio C Hamano <gitster@pobox.com>
13 years agot4211: fix incorrect rebase at f8395edc (range-set: satisfy non-empty ranges invariant)
Junio C Hamano [Wed, 24 Jul 2013 14:53:25 +0000 (07:53 -0700)]
t4211: fix incorrect rebase at f8395edc (range-set: satisfy non-empty ranges invariant)

Wnen I rewrote "cat b.c | wc -l" into "wc -l <b.c" to squash in a
suggestion on the list to this series, I screwed up subsequent
rebase.  Fix it up.

Signed-off-by: Junio C Hamano <gitster@pobox.com>
13 years agosmart http: use the same connectivity check on cloning
Nguyễn Thái Ngọc Duy [Sun, 21 Jul 2013 08:18:05 +0000 (15:18 +0700)]
smart http: use the same connectivity check on cloning

This is an extension of c6807a4 (clone: open a shortcut for
connectivity check - 2013-05-26) to reduce the cost of connectivity
check at clone time, this time with smart http protocol.

Signed-off-by: Nguyễn Thái Ngọc Duy <pclouds@gmail.com>
Signed-off-by: Junio C Hamano <gitster@pobox.com>
13 years agohg-to-git: --allow-empty-message in git commit
Maurício C Antunes [Sat, 20 Jul 2013 16:33:20 +0000 (13:33 -0300)]
hg-to-git: --allow-empty-message in git commit

Do not fail to import mercurial commits with empty commit messages.

Signed-off-by: Maurício C Antunes <mauricio.antunes@gmail.com>
Signed-off-by: Junio C Hamano <gitster@pobox.com>
13 years agoMerge branch 'es/line-log-further-fixes' into tr/line-log
Junio C Hamano [Tue, 23 Jul 2013 19:10:06 +0000 (12:10 -0700)]
Merge branch 'es/line-log-further-fixes' into tr/line-log

* es/line-log-further-fixes:
  line-log: fix "log -LN" crash when N is last line of file
  range-set: satisfy non-empty ranges invariant
  t4211: demonstrate crash when first -L encountered is empty range
  t4211: demonstrate empty -L range crash
  range-set: fix sort_and_merge_range_set() corner case bug
  range_set: fix coalescing bug when range is a subset of another
  t4211: fix broken test when one -L range is subset of another

13 years agoline-log: fix "log -LN" crash when N is last line of file
Eric Sunshine [Tue, 23 Jul 2013 14:28:08 +0000 (10:28 -0400)]
line-log: fix "log -LN" crash when N is last line of file

range-set invariants are: ranges must be (1) non-empty, (2) disjoint,
(3) sorted in ascending order.

line_log_data_insert() breaks the non-empty invariant under the
following conditions: the incoming range is empty and the pathname
attached to the range has not yet been encountered. In this case,
line_log_data_insert() assigns the empty range to a new line_log_data
record without taking any action to ensure that the empty range is
eventually folded out.  Subsequent range-set functions crash or throw an
assertion failure upon encountering such an anomaly.  Fix this bug.

Signed-off-by: Eric Sunshine <sunshine@sunshineco.com>
Acked-by: Thomas Rast <trast@inf.ethz.ch>
Signed-off-by: Junio C Hamano <gitster@pobox.com>
13 years agorange-set: satisfy non-empty ranges invariant
Eric Sunshine [Tue, 23 Jul 2013 14:28:06 +0000 (10:28 -0400)]
range-set: satisfy non-empty ranges invariant

range-set invariants are: ranges must be (1) non-empty, (2) disjoint,
(3) sorted in ascending order.

During processing, various range-set utility functions break the
invariants (for instance, by adding empty ranges), with the
expectation that a finalizing sort_and_merge_range_set() will restore
sanity.

sort_and_merge_range_set(), however, neglects to fold out empty
ranges, thus it fails to satisfy the non-empty constraint. Subsequent
range-set functions crash or throw an assertion failure upon
encountering such an anomaly. Rectify the situation by having
sort_and_merge_range_set() fold out empty ranges.

Signed-off-by: Eric Sunshine <sunshine@sunshineco.com>
Acked-by: Thomas Rast <trast@inf.ethz.ch>
Signed-off-by: Junio C Hamano <gitster@pobox.com>
13 years agot4211: demonstrate crash when first -L encountered is empty range
Eric Sunshine [Tue, 23 Jul 2013 14:28:07 +0000 (10:28 -0400)]
t4211: demonstrate crash when first -L encountered is empty range

Signed-off-by: Eric Sunshine <sunshine@sunshineco.com>
Acked-by: Thomas Rast <trast@inf.ethz.ch>
Helped-by: SZEDER Gábor <szeder@ira.uka.de>
Signed-off-by: Junio C Hamano <gitster@pobox.com>
13 years agot4211: demonstrate empty -L range crash
Eric Sunshine [Tue, 23 Jul 2013 14:28:05 +0000 (10:28 -0400)]
t4211: demonstrate empty -L range crash

Signed-off-by: Eric Sunshine <sunshine@sunshineco.com>
Acked-by: Thomas Rast <trast@inf.ethz.ch>
Helped-by: SZEDER Gábor <szeder@ira.uka.de>
Signed-off-by: Junio C Hamano <gitster@pobox.com>
13 years agorange-set: fix sort_and_merge_range_set() corner case bug
Eric Sunshine [Tue, 23 Jul 2013 14:28:04 +0000 (10:28 -0400)]
range-set: fix sort_and_merge_range_set() corner case bug

When handed an empty range_set (range_set.nr == 0),
sort_and_merge_range_set() incorrectly sets range_set.nr to 1 at exit.
Subsequent range_set functions then access the bogus range at element
zero and crash or throw an assertion failure. Fix this bug.

Signed-off-by: Eric Sunshine <sunshine@sunshineco.com>
Acked-by: Thomas Rast <trast@inf.ethz.ch>
Signed-off-by: Junio C Hamano <gitster@pobox.com>
13 years agoopen_istream: remove unneeded check for null pointer
Stefan Beller [Tue, 23 Jul 2013 13:16:04 +0000 (15:16 +0200)]
open_istream: remove unneeded check for null pointer

'st' is allocated via xmalloc a few lines before and passed to
the stream opening functions.
The xmalloc function is written in a way that either 'st' is allocated
valid memory or xmalloc already dies.
The function calls to open_istream_* do not change 'st', as the pointer is
passed by reference and not a pointer of a pointer.

Hence 'st' cannot be null at that part of the code.

Signed-off-by: Stefan Beller <stefanbeller@googlemail.com>
Signed-off-by: Junio C Hamano <gitster@pobox.com>
13 years agorm: do not set a variable twice without intermediate reading.
Stefan Beller [Tue, 23 Jul 2013 09:19:22 +0000 (11:19 +0200)]
rm: do not set a variable twice without intermediate reading.

Just the next line assigns a non-null value to seen.

Signed-off-by: Stefan Beller <stefanbeller@googlemail.com>
Signed-off-by: Junio C Hamano <gitster@pobox.com>
13 years agoMerge branch 'mv/merge-ff-tristate'
Junio C Hamano [Tue, 23 Jul 2013 17:09:49 +0000 (10:09 -0700)]
Merge branch 'mv/merge-ff-tristate'

* mv/merge-ff-tristate:
  t7600: fix typo in test title

13 years agot7600: fix typo in test title
Junio C Hamano [Tue, 23 Jul 2013 17:08:40 +0000 (10:08 -0700)]
t7600: fix typo in test title

Spotted by Ram, confirmed by Miklos.

Signed-off-by: Junio C Hamano <gitster@pobox.com>
13 years agot5533: test "push --force-with-lease"
Junio C Hamano [Tue, 9 Jul 2013 19:09:28 +0000 (12:09 -0700)]
t5533: test "push --force-with-lease"

Prepare two repositories, src and dst, the latter of which is a
clone of the former (with tracking branches), and push from the
latter into the former, with various --force-with-lease options.

Signed-off-by: Junio C Hamano <gitster@pobox.com>
13 years agopush --force-with-lease: tie it all together
Junio C Hamano [Mon, 8 Jul 2013 21:42:40 +0000 (14:42 -0700)]
push --force-with-lease: tie it all together

This teaches the deepest part of the callchain for "git push" (and
"git send-pack") to enforce "the old value of the ref must be this,
otherwise fail this push" (aka "compare-and-swap" / "--lockref").

Signed-off-by: Junio C Hamano <gitster@pobox.com>
13 years agopush --force-with-lease: implement logic to populate old_sha1_expect[]
Junio C Hamano [Tue, 9 Jul 2013 18:01:06 +0000 (11:01 -0700)]
push --force-with-lease: implement logic to populate old_sha1_expect[]

This plugs the push_cas_option data collected by the command line
option parser to the transport system with a new function
apply_push_cas(), which is called after match_push_refs() has
already been called.

At this point, we know which remote we are talking to, and what
remote refs we are going to update, so we can fill in the details
that may have been missing from the command line, such as

 (1) what abbreviated refname the user gave us matches the actual
     refname at the remote; and

 (2) which remote-tracking branch in our local repository to read
     the value of the object to expect at the remote.

to populate the old_sha1_expect[] field of each of the remote ref.
As stated in the documentation, the use of remote-tracking branch
as the default is a tentative one, and we may come up with a better
logic as we gain experience.

Still nobody uses this information, which is the topic of the next
patch.

Signed-off-by: Junio C Hamano <gitster@pobox.com>
13 years agoremote.c: add command line option parser for "--force-with-lease"
Junio C Hamano [Mon, 8 Jul 2013 22:34:36 +0000 (15:34 -0700)]
remote.c: add command line option parser for "--force-with-lease"

Update "git push" and "git send-pack" to parse this commnd line
option.

The intended sematics is:

 * "--force-with-lease" alone, without specifying the details, will
   protect _all_ remote refs that are going to be updated by
   requiring their current value to be the same as some reasonable
   default, unless otherwise specified;

 * "--force-with-lease=refname", without specifying the expected
   value, will protect that refname, if it is going to be updated,
   by requiring its current value to be the same as some reasonable
   default.

 * "--force-with-lease=refname:value" will protect that refname, if
   it is going to be updated, by requiring its current value to be
   the same as the specified value; and

 * "--no-force-with-lease" will cancel all the previous --force-with-lease on the
   command line.

For now, "some reasonable default" is tentatively defined as "the
value of the remote-tracking branch we have for the ref of the
remote being updated", and it is an error if we do not have such a
remote-tracking branch.  But this is known to be fragile, its use is
not yet recommended, and hopefully we will find more reasonable
default as we gain experience with this feature.  The manual marks
the feature as experimental unless the expected value is specified
explicitly for this reason.

Because the command line options are parsed _before_ we know which
remote we are pushing to, there needs further processing to the
parsed data after we instantiate the transport object to:

 * expand "refname" given by the user to a full refname to be
   matched with the list of "struct ref" used in match_push_refs()
   and set_ref_status_for_push(); and

 * learning the actual local ref that is the remote-tracking branch
   for the specified remote ref.

Further, some processing need to be deferred until we find the set
of remote refs and match_push_refs() returns in order to find the
ones that need to be checked after explicit ones have been processed
for "--force-with-lease" (no specific details).

These post-processing will be the topic of the next patch.

This option was originally called "cas" (for "compare and swap"),
the name which nobody liked because it was too technical.  The
second attempt called it "lockref" (because it is conceptually like
pushing after taking a lock) but the word "lock" was hated because
it implied that it may reject push by others, which is not the way
this option works.  This round calls it "force-with-lease".  You
assume you took the lease on the ref when you fetched to decide what
the rebased history should be, and you can push back only if the
lease has not been broken.

Signed-off-by: Junio C Hamano <gitster@pobox.com>
13 years agopost-receive-email: deprecate script in favor of git-multimail
Michael Haggerty [Sun, 14 Jul 2013 08:09:03 +0000 (10:09 +0200)]
post-receive-email: deprecate script in favor of git-multimail

Add a notice to the top of post-receive-email explaining that the
script is no longer under active development and pointing the user to
git-multimail.

Signed-off-by: Michael Haggerty <mhagger@alum.mit.edu>
Signed-off-by: Junio C Hamano <gitster@pobox.com>
13 years agotypofix: in-code comments
Ondřej Bílka [Mon, 22 Jul 2013 21:02:23 +0000 (23:02 +0200)]
typofix: in-code comments

Signed-off-by: Ondřej Bílka <neleai@seznam.cz>
Signed-off-by: Junio C Hamano <gitster@pobox.com>
13 years agotypofix: documentation
Ondřej Bílka [Mon, 22 Jul 2013 21:02:23 +0000 (23:02 +0200)]
typofix: documentation

Signed-off-by: Ondřej Bílka <neleai@seznam.cz>
Signed-off-by: Junio C Hamano <gitster@pobox.com>
13 years agotypofix: release notes
Ondřej Bílka [Mon, 22 Jul 2013 21:02:23 +0000 (23:02 +0200)]
typofix: release notes

Signed-off-by: Ondřej Bílka <neleai@seznam.cz>
Signed-off-by: Junio C Hamano <gitster@pobox.com>
13 years agoSync with Git 1.8.3.4
Junio C Hamano [Mon, 22 Jul 2013 18:34:25 +0000 (11:34 -0700)]
Sync with Git 1.8.3.4

13 years agoUpdate draft release notes to 1.8.4
Junio C Hamano [Mon, 22 Jul 2013 18:34:10 +0000 (11:34 -0700)]
Update draft release notes to 1.8.4

Signed-off-by: Junio C Hamano <gitster@pobox.com>
13 years agoMerge branch 'jc/name-rev-exact-ref'
Junio C Hamano [Mon, 22 Jul 2013 18:24:19 +0000 (11:24 -0700)]
Merge branch 'jc/name-rev-exact-ref'

Corrects the longstanding sloppiness in the implementation of
name-rev that conflated "we take commit-ish" and "differences
between tags and commits do not matter".

* jc/name-rev-exact-ref:
  describe: fix --contains when a tag is given as input
  name-rev: differentiate between tags and commits they point at
  describe: use argv-array
  name-rev: allow converting the exact object name at the tip of a ref
  name-ref: factor out name shortening logic from name_ref()

13 years agoMerge branch 'rr/send-email-ssl-verify'
Junio C Hamano [Mon, 22 Jul 2013 18:24:17 +0000 (11:24 -0700)]
Merge branch 'rr/send-email-ssl-verify'

Newer Net::SMTP::SSL module does not want the user programs to use
the default behaviour to let server certificate go without
verification, so by default enable the verification with a
mechanism to turn it off if needed.

* rr/send-email-ssl-verify:
  send-email: be explicit with SSL certificate verification

13 years agoMerge branch 'es/check-mailmap'
Junio C Hamano [Mon, 22 Jul 2013 18:24:14 +0000 (11:24 -0700)]
Merge branch 'es/check-mailmap'

A new command to allow scripts to query the mailmap information.

* es/check-mailmap:
  t4203: test check-mailmap command invocation
  builtin: add git-check-mailmap command

13 years agoMerge branch 'jx/clean-interactive'
Junio C Hamano [Mon, 22 Jul 2013 18:24:11 +0000 (11:24 -0700)]
Merge branch 'jx/clean-interactive'

Add "interactive" mode to "git clean".

The early part to refactor relative path related helper functions
looked sensible.

* jx/clean-interactive:
  test: run testcases with POSIX absolute paths on Windows
  test: add t7301 for git-clean--interactive
  git-clean: add documentation for interactive git-clean
  git-clean: add ask each interactive action
  git-clean: add select by numbers interactive action
  git-clean: add filter by pattern interactive action
  git-clean: use a git-add-interactive compatible UI
  git-clean: add colors to interactive git-clean
  git-clean: show items of del_list in columns
  git-clean: add support for -i/--interactive
  git-clean: refactor git-clean into two phases
  write_name{_quoted_relative,}(): remove redundant parameters
  quote_path_relative(): remove redundant parameter
  quote.c: substitute path_relative with relative_path
  path.c: refactor relative_path(), not only strip prefix
  test: add test cases for relative_path

13 years agoMerge branch 'hv/config-from-blob'
Junio C Hamano [Mon, 22 Jul 2013 18:24:09 +0000 (11:24 -0700)]
Merge branch 'hv/config-from-blob'

Allow configuration data to be read from in-tree blob objects,
which would help working in a bare repository and submodule
updates.

* hv/config-from-blob:
  do not die when error in config parsing of buf occurs
  teach config --blob option to parse config from database
  config: make parsing stack struct independent from actual data source
  config: drop cf validity check in get_next_char()
  config: factor out config file stack management

13 years agoMerge branch 'mk/upload-pack-off-by-one-dead-code-removal'
Junio C Hamano [Mon, 22 Jul 2013 18:24:05 +0000 (11:24 -0700)]
Merge branch 'mk/upload-pack-off-by-one-dead-code-removal'

* mk/upload-pack-off-by-one-dead-code-removal:
  upload-pack: remove a piece of dead code

13 years agoMerge branch 'jk/t0008-sigpipe-fix'
Junio C Hamano [Mon, 22 Jul 2013 18:24:02 +0000 (11:24 -0700)]
Merge branch 'jk/t0008-sigpipe-fix'

Fix for recent test breakage on 'master'.

* jk/t0008-sigpipe-fix:
  t0008: avoid SIGPIPE race condition on fifo

13 years agoMerge branch 'nd/const-struct-cache-entry'
Junio C Hamano [Mon, 22 Jul 2013 18:24:00 +0000 (11:24 -0700)]
Merge branch 'nd/const-struct-cache-entry'

* nd/const-struct-cache-entry:
  Convert "struct cache_entry *" to "const ..." wherever possible

13 years agoMerge branch 'jk/gcc-function-attributes'
Junio C Hamano [Mon, 22 Jul 2013 18:23:59 +0000 (11:23 -0700)]
Merge branch 'jk/gcc-function-attributes'

Use the function attributes extension to catch mistakes in use of
our own variadic functions that use NULL sentinel at the end
(i.e. like execl(3)) and format strings (i.e. like printf(3)).

* jk/gcc-function-attributes:
  Add the LAST_ARG_MUST_BE_NULL macro
  wt-status: use "format" function attribute for status_printf
  use "sentinel" function attribute for variadic lists
  add missing "format" function attributes

13 years agoMerge branch 'db/show-ref-head'
Junio C Hamano [Mon, 22 Jul 2013 18:23:56 +0000 (11:23 -0700)]
Merge branch 'db/show-ref-head'

The "--head" option to "git show-ref" was only to add "HEAD" to the
list of candidate refs to be filtered by the usual rules
(e.g. "--heads" that only show refs under refs/heads).  Change the
meaning of the option to always show "HEAD" regardless of what
filtering will be applied to any other ref (this is a backward
incompatible change, so I may need to add an entry to the Release
Notes).

* db/show-ref-head:
  show-ref: make --head always show the HEAD ref

13 years agoMerge branch 'es/blame-L-breakage'
Junio C Hamano [Mon, 22 Jul 2013 18:23:53 +0000 (11:23 -0700)]
Merge branch 'es/blame-L-breakage'

The refactoring made for parsing "-L" option recently to support
"git log -L" seems to have broken "git blame -L X,-5" to show 5
lines leading to X.

* es/blame-L-breakage:
  blame-options.txt: explain that -L <start> and <end> are optional
  blame-options.txt: place each -L option variation on its own line
  t8001/t8002 (blame): add blame -L :funcname tests
  t8001/t8002 (blame): add blame -L tests
  t8001/t8002 (blame): modernize style
  line-range: fix "blame -L X,-N" regression

13 years agoMerge branch 'tr/protect-low-3-fds'
Junio C Hamano [Mon, 22 Jul 2013 18:23:35 +0000 (11:23 -0700)]
Merge branch 'tr/protect-low-3-fds'

When "git" is spawned in such a way that any of the low 3 file
descriptors is closed, our first open() may yield file descriptor 2,
and writing error message to it would screw things up in a big way.

* tr/protect-low-3-fds:
  git: ensure 0/1/2 are open in main()
  daemon/shell: refactor redirection of 0/1/2 from /dev/null

13 years agoMerge branch 'sb/parse-object-buffer-eaten'
Junio C Hamano [Mon, 22 Jul 2013 18:23:32 +0000 (11:23 -0700)]
Merge branch 'sb/parse-object-buffer-eaten'

* sb/parse-object-buffer-eaten:
  parse_object_buffer: correct freeing the buffer

13 years agoMerge branch 'tr/do-not-call-submodules-subprojects'
Junio C Hamano [Mon, 22 Jul 2013 18:23:30 +0000 (11:23 -0700)]
Merge branch 'tr/do-not-call-submodules-subprojects'

* tr/do-not-call-submodules-subprojects:
  show-branch: fix description of --date-order
  apply, entry: speak of submodules instead of subprojects

13 years agoMerge branch 'mm/diff-no-patch-synonym-to-s'
Junio C Hamano [Mon, 22 Jul 2013 18:23:27 +0000 (11:23 -0700)]
Merge branch 'mm/diff-no-patch-synonym-to-s'

"git show -s" was less discoverable than it should be.

* mm/diff-no-patch-synonym-to-s:
  Documentation/git-log.txt: capitalize section names
  Documentation: move description of -s, --no-patch to diff-options.txt
  Documentation/git-show.txt: include common diff options, like git-log.txt
  diff: allow --patch & cie to override -s/--no-patch
  diff: allow --no-patch as synonym for -s
  t4000-diff-format.sh: modernize style

13 years agoMerge branch 'dw/request-pull-diag'
Junio C Hamano [Mon, 22 Jul 2013 18:23:24 +0000 (11:23 -0700)]
Merge branch 'dw/request-pull-diag'

* dw/request-pull-diag:
  request-pull: improve error message for invalid revision args

13 years agoMerge branch 'jc/mailmap-case-insensitivity'
Junio C Hamano [Mon, 22 Jul 2013 18:23:16 +0000 (11:23 -0700)]
Merge branch 'jc/mailmap-case-insensitivity'

The mailmap mechanism unnecessarily downcased the e-mail addresses
in the output, and also ignored the human name when it is a single
character name.

This now has become Eric Sunshine's series, even though it still is
under jc/ hierarchy.

* jc/mailmap-case-insensitivity:
  mailmap: style fixes
  mailmap: debug: avoid passing NULL to fprintf() '%s' conversion specification
  mailmap: debug: eliminate -Wformat field precision type warning
  mailmap: debug: fix malformed fprintf() format conversion specification
  mailmap: debug: fix out-of-order fprintf() arguments
  mailmap: do not downcase mailmap entries
  t4203: demonstrate loss of uppercase characters in canonical email
  mailmap: do not lose single-letter names
  t4203: demonstrate loss of single-character name in mailmap entry

13 years agoMerge branch 'tr/fd-gotcha-fixes'
Junio C Hamano [Mon, 22 Jul 2013 18:23:12 +0000 (11:23 -0700)]
Merge branch 'tr/fd-gotcha-fixes'

Two places we did not check return value (expected to be a file
descriptor) correctly.

* tr/fd-gotcha-fixes:
  run-command: dup_devnull(): guard against syscalls failing
  git_mkstemps: correctly test return value of open()

13 years agoMerge branch 'mm/color-auto-default'
Junio C Hamano [Mon, 22 Jul 2013 18:23:10 +0000 (11:23 -0700)]
Merge branch 'mm/color-auto-default'

A finishing touch to fix breakage to "add -e" caused by defaulting
ui.color to "auto".

* mm/color-auto-default:
  git add -e: Explicitly specify that patch should have no color

13 years agoMerge branch 'jc/simple-add-must-be-a-no-op'
Junio C Hamano [Mon, 22 Jul 2013 18:23:06 +0000 (11:23 -0700)]
Merge branch 'jc/simple-add-must-be-a-no-op'

This detected a mismerge of one of "add-2.0" topics to the 'jch'
and 'pu' branches.

* jc/simple-add-must-be-a-no-op:
  t2202: make sure "git add" (no args) stays a no-op

13 years agoGit 1.8.3.4
Junio C Hamano [Mon, 22 Jul 2013 18:21:34 +0000 (11:21 -0700)]
Git 1.8.3.4

Signed-off-by: Junio C Hamano <gitster@pobox.com>
13 years agorev-parse(1): logically group options
John Keeping [Sun, 21 Jul 2013 12:49:27 +0000 (13:49 +0100)]
rev-parse(1): logically group options

The options section of the git-rev-parse manual page has grown
organically so that there now does not seem to be much logic behind the
ordering of the options.  It also does not make it clear that certain
options must appear first on the command line.

Address this by reorganising the options into groups with subheadings.
The text of option descriptions does not change.

Signed-off-by: John Keeping <john@keeping.me.uk>
Signed-off-by: Junio C Hamano <gitster@pobox.com>
13 years agorev-parse: remove restrictions on some options
John Keeping [Sun, 21 Jul 2013 12:49:26 +0000 (13:49 +0100)]
rev-parse: remove restrictions on some options

The "--local-env-vars" and "--resolve-git-dir" arguments to
git-rev-parse are currently only handled if they appear first on the
command line (in the case of "--local-env-vars", only if it is the only
argument).  While it may not make sense to use these options when any
others are specified, there is no reason for this restriction and it
might confuse users if these arguments appear to be ignored.

There is no need for any documentation change here as the restrictions
on these options are not documented.

Signed-off-by: John Keeping <john@keeping.me.uk>
Signed-off-by: Junio C Hamano <gitster@pobox.com>
13 years agoupdate URL to the marc.info mail archive
Ondřej Bílka [Mon, 22 Jul 2013 08:02:17 +0000 (10:02 +0200)]
update URL to the marc.info mail archive

The name marc.theaimsgroup.com is no longer active, and has
migrated to marc.info.

Signed-off-by: Ondřej Bílka <neleai@seznam.cz>
Signed-off-by: Junio C Hamano <gitster@pobox.com>
13 years agoSync with maint
Junio C Hamano [Mon, 22 Jul 2013 06:03:46 +0000 (23:03 -0700)]
Sync with maint

* maint:
  Update draft release notes to 1.8.3.4
  t9801: git-p4: check ignore files with client spec