git/git.git
7 years agogit p4 doc: use two-line style for options with multiple spellings
Pete Wyckoff [Tue, 21 Jan 2014 23:16:48 +0000 (18:16 -0500)]
git p4 doc: use two-line style for options with multiple spellings

Thomas Rast noticed the docs have a mix of styles when
it comes to options with multiple spellings.  Standardize
the couple in git-p4.txt that are odd.

Instead of:
  -n, --dry-run::

Do this:
  -n::
  --dry-run::

See
http://thread.gmane.org/gmane.comp.version-control.git/219936/focus=219945

Signed-off-by: Pete Wyckoff <pw@padd.com>
Signed-off-by: Junio C Hamano <gitster@pobox.com>
7 years agogit p4 test: examine behavior with locked (+l) files
Pete Wyckoff [Tue, 21 Jan 2014 23:16:47 +0000 (18:16 -0500)]
git p4 test: examine behavior with locked (+l) files

The p4 server can enforce file locking, so that only one user
can edit a file at a time.  Git p4 is unable to submit changes
to locked files.  Currently it exits poorly.  Ideally it would
notice the locked condition and clean up nicely.

Add a bunch of tests that describe the problem, hoping that
fixes appear in the future.

Signed-off-by: Pete Wyckoff <pw@padd.com>
Signed-off-by: Junio C Hamano <gitster@pobox.com>
7 years agogit p4: fix an error message when "p4 where" fails
Pete Wyckoff [Tue, 21 Jan 2014 23:16:46 +0000 (18:16 -0500)]
git p4: fix an error message when "p4 where" fails

When "p4 where" fails, for whatever reason, the error message tries to
show an undefined variable.  This minor bug applies only when using a
client spec, and was introduced recently in 9d57c4a (git p4: implement
view spec wildcards with "p4 where", 2013-08-30).

Signed-off-by: Pete Wyckoff <pw@padd.com>
Signed-off-by: Junio C Hamano <gitster@pobox.com>
7 years agogit p4: handle files with wildcards when doing RCS scrubbing
Pete Wyckoff [Tue, 21 Jan 2014 23:16:45 +0000 (18:16 -0500)]
git p4: handle files with wildcards when doing RCS scrubbing

Commit 9d7d446 (git p4: submit files with wildcards, 2012-04-29)
fixed problems with handling files that had p4 wildcard
characters, like "@" and "*".  But it missed one case, that of
RCS keyword scrubbing, which uses "p4 fstat" to extract type
information.  Fix it by calling wildcard_encode() on the raw
filename.

Signed-off-by: Pete Wyckoff <pw@padd.com>
Signed-off-by: Junio C Hamano <gitster@pobox.com>
7 years agogit p4 test: do not pollute /tmp
Pete Wyckoff [Tue, 21 Jan 2014 23:16:44 +0000 (18:16 -0500)]
git p4 test: do not pollute /tmp

Generating the submit template for p4 uses tempfile.mkstemp(),
which by default puts files in /tmp.  For a test that fails,
possibly on purpose, this is not cleaned up.  Run with TMPDIR
pointing into the trash directory so the temp files go away
with the test results.

To do this required some other minor changes.  First, the editor
is launched using system(editor + " " + template_file), using
shell expansion to build the command string.  This doesn't work
if editor has a space in it.  And is generally unwise as it's
easy to fool the shell into doing extra work.  Exec the args
directly, without shell expansion.

Second, without shell expansion, the trick of "P4EDITOR=:" used
in the tests doesn't work.  Use a real command, true, as the
non-interactive editor for testing.

Signed-off-by: Pete Wyckoff <pw@padd.com>
Signed-off-by: Junio C Hamano <gitster@pobox.com>
7 years agogit p4 test: run as user "author"
Pete Wyckoff [Tue, 21 Jan 2014 23:16:43 +0000 (18:16 -0500)]
git p4 test: run as user "author"

The tests use author@example.com as the canonical submitter,
but he does not have an entry in the p4 users database.
This causes the generated change description to complain
that the git and p4 users disagree.  The complaint message
is still valid, but isn't useful in tests.  It was introduced
in 848de9c (git-p4: warn if git authorship won't be retained,
2011-05-13).

Fix t9813 to use @example.com instead of @localhost due to
change in p4_add_user().  Move the function into the git p4
test library so author can be added at initialization time.

Signed-off-by: Pete Wyckoff <pw@padd.com>
Signed-off-by: Junio C Hamano <gitster@pobox.com>
7 years agogit p4 test: is_cli_file_writeable succeeds
Pete Wyckoff [Tue, 21 Jan 2014 23:16:42 +0000 (18:16 -0500)]
git p4 test: is_cli_file_writeable succeeds

Commit e9df0f9 (git p4: cygwin p4 client does not mark read-only,
2013-01-26) fixed a problem with "test -w" on cygwin, but mistakenly
marked the new test as failing.  Fix this.

Signed-off-by: Pete Wyckoff <pw@padd.com>
Signed-off-by: Junio C Hamano <gitster@pobox.com>
7 years agogit p4 test: explicitly check p4 wildcard delete
Pete Wyckoff [Tue, 21 Jan 2014 23:16:41 +0000 (18:16 -0500)]
git p4 test: explicitly check p4 wildcard delete

There was no test where p4 deleted a file with a wildcard
character.  Make sure git p4 applies the wildcard decoding
properly when importing a delete that includes a wildcard.

Signed-off-by: Pete Wyckoff <pw@padd.com>
Signed-off-by: Junio C Hamano <gitster@pobox.com>
7 years agogit p4: work around p4 bug that causes empty symlinks
Pete Wyckoff [Tue, 21 Jan 2014 23:16:40 +0000 (18:16 -0500)]
git p4: work around p4 bug that causes empty symlinks

Damien Gérard highlights an interesting problem.  Some p4
repositories end up with symlinks that have an empty target.  It
is not possible to create this with current p4, but they do
indeed exist.

The effect in git p4 is that "p4 print" on the symlink returns an
empty string, confusing the curret symlink-handling code.

Such broken repositories cause problems in p4 as well, even with
no git involved.  In p4, syncing to a change that includes a
bogus symlink causes errors:

    //depot/empty-symlink - updating /home/me/p4/empty-symlink
    rename: /home/me/p4/empty-symlink: No such file or directory

and leaves no symlink.

In git, replicate the p4 behavior by ignoring these bad symlinks.
If, in a later p4 revision, the symlink happens to point to
something non-null, the symlink will be replaced properly.

Add a big test for all this too.

This happens to be a regression introduced by 1292df1 (git-p4:
Fix occasional truncation of symlink contents., 2013-08-08) and
appeared first in 1.8.5.  But it shows up only in p4 repositories
of dubious character, so can wait for a proper release.

Tested-by: Damien Gérard <damien@iwi.me>
Signed-off-by: Pete Wyckoff <pw@padd.com>
Signed-off-by: Junio C Hamano <gitster@pobox.com>
7 years agogit p4 test: ensure p4 symlink parsing works
Pete Wyckoff [Tue, 21 Jan 2014 23:16:39 +0000 (18:16 -0500)]
git p4 test: ensure p4 symlink parsing works

While this happens to work, there was no test to make sure
that the basic importing of a symlink from p4 to git functioned.

Add a simple test to create a symlink in p4 and import it into git,
then verify that the symlink exists and has the correct target.

Signed-off-by: Pete Wyckoff <pw@padd.com>
Signed-off-by: Junio C Hamano <gitster@pobox.com>
7 years agogit p4 test: wildcards are supported
Pete Wyckoff [Tue, 21 Jan 2014 23:16:38 +0000 (18:16 -0500)]
git p4 test: wildcards are supported

Since 9d57c4a (git p4: implement view spec wildcards with "p4
where", 2013-08-30), all the wildcard types should be supported.
Change must-fail tests to mark that they now pass.

Signed-off-by: Pete Wyckoff <pw@padd.com>
Signed-off-by: Junio C Hamano <gitster@pobox.com>
7 years agoMerge branch 'cl/p4-use-diff-tree'
Junio C Hamano [Thu, 12 Dec 2013 22:18:20 +0000 (14:18 -0800)]
Merge branch 'cl/p4-use-diff-tree'

* cl/p4-use-diff-tree:
  git p4: Use git diff-tree instead of format-patch

7 years agoMerge branch 'tr/config-multivalue-lift-max'
Junio C Hamano [Thu, 12 Dec 2013 22:18:09 +0000 (14:18 -0800)]
Merge branch 'tr/config-multivalue-lift-max'

* tr/config-multivalue-lift-max:
  config: arbitrary number of matches for --unset and --replace-all

7 years agoMerge branch 'mh/fetch-tags-in-addition-to-normal-refs'
Junio C Hamano [Thu, 12 Dec 2013 22:14:10 +0000 (14:14 -0800)]
Merge branch 'mh/fetch-tags-in-addition-to-normal-refs'

The "--tags" option to "git fetch" used to be literally a synonym to
a "refs/tags/*:refs/tags/*" refspec, which meant that (1) as an
explicit refspec given from the command line, it silenced the lazy
"git fetch" default that is configured, and (2) also as an explicit
refspec given from the command line, it interacted with "--prune"
to remove any tag that the remote we are fetching from does not
have.

This demotes it to an option; with it, we fetch all tags in
addition to what would be fetched without the option, and it does
not interact with the decision "--prune" makes to see what
remote-tracking refs the local has are missing the remote
counterpart.

* mh/fetch-tags-in-addition-to-normal-refs: (23 commits)
  fetch: improve the error messages emitted for conflicting refspecs
  handle_duplicate(): mark error message for translation
  ref_remote_duplicates(): extract a function handle_duplicate()
  ref_remove_duplicates(): simplify loop logic
  t5536: new test of refspec conflicts when fetching
  ref_remove_duplicates(): avoid redundant bisection
  git-fetch.txt: improve description of tag auto-following
  fetch-options.txt: simplify ifdef/ifndef/endif usage
  fetch, remote: properly convey --no-prune options to subprocesses
  builtin/remote.c:update(): use struct argv_array
  builtin/remote.c: reorder function definitions
  query_refspecs(): move some constants out of the loop
  fetch --prune: prune only based on explicit refspecs
  fetch --tags: fetch tags *in addition to* other stuff
  fetch: only opportunistically update references based on command line
  get_expanded_map(): avoid memory leak
  get_expanded_map(): add docstring
  builtin/fetch.c: reorder function definitions
  get_ref_map(): rename local variables
  api-remote.txt: correct section "struct refspec"
  ...

7 years agoMerge git://repo.or.cz/git-gui
Junio C Hamano [Mon, 9 Dec 2013 22:57:00 +0000 (14:57 -0800)]
Merge git://repo.or.cz/git-gui

* git://repo.or.cz/git-gui:
  git-gui: correct spelling errors in comments
  git-gui: add menu item to launch a bash shell on Windows.
  git-gui: corrected setup of git worktree under cygwin.
  git-gui: right half window is paned
  git-gui: Add gui.displayuntracked option
  git-gui: show the maxrecentrepo config option in the preferences dialog
  git-gui: added gui.maxrecentrepo to extend the number of remembered repos
  git-gui: Improve font rendering on retina macbooks

7 years agoMerge git://ozlabs.org/~paulus/gitk
Junio C Hamano [Mon, 9 Dec 2013 22:55:41 +0000 (14:55 -0800)]
Merge git://ozlabs.org/~paulus/gitk

* git://ozlabs.org/~paulus/gitk:
  gitk: Recognize -L option
  gitk: Support showing the gathered inline diffs
  gitk: Split out diff part in $commitinfo
  gitk: Refactor per-line part of getblobdiffline and its support
  gitk: Support -G option from the command line
  gitk: Tag display improvements

7 years agoconfig: arbitrary number of matches for --unset and --replace-all
Thomas Rast [Wed, 13 Nov 2013 10:19:00 +0000 (11:19 +0100)]
config: arbitrary number of matches for --unset and --replace-all

git-config used a static match array to hold the matches we want to
unset/replace when using --unset or --replace-all.  Use a
variable-sized array instead.

This in particular fixes the symptoms git-svn had when storing large
numbers of svn-remote.*.added-placeholder entries in the config file.

While the tests are rather more paranoid than just --unset and
--replace-all, the other operations already worked.  Indeed git-svn's
usage only breaks the first time *after* creating so many entries,
when it wants to unset and re-add them all.

Reported-by: Jess Hottenstein <jess.hottenstein@gmail.com>
Signed-off-by: Thomas Rast <tr@thomasrast.ch>
Signed-off-by: Junio C Hamano <gitster@pobox.com>
7 years agoStart 1.9 cycle
Junio C Hamano [Fri, 6 Dec 2013 19:20:04 +0000 (11:20 -0800)]
Start 1.9 cycle

Signed-off-by: Junio C Hamano <gitster@pobox.com>
7 years agoMerge branch 'jk/remove-experimental-loose-object-support'
Junio C Hamano [Fri, 6 Dec 2013 19:09:42 +0000 (11:09 -0800)]
Merge branch 'jk/remove-experimental-loose-object-support'

* jk/remove-experimental-loose-object-support:
  drop support for "experimental" loose objects

7 years agoMerge branch 'nd/magic-pathspec'
Junio C Hamano [Fri, 6 Dec 2013 19:08:03 +0000 (11:08 -0800)]
Merge branch 'nd/magic-pathspec'

"git diff -- ':(icase)makefile'" were rejected unnecessarily.
This needs to be merged to 'maint' later.

* nd/magic-pathspec:
  diff: restrict pathspec limitations to diff b/f case only

7 years agoMerge branch 'rr/for-each-ref-decoration'
Junio C Hamano [Fri, 6 Dec 2013 19:07:20 +0000 (11:07 -0800)]
Merge branch 'rr/for-each-ref-decoration'

Add a few formatting directives to "git for-each-ref --format=...",
to paint them in color, etc.

* rr/for-each-ref-decoration:
  for-each-ref: avoid color leakage
  for-each-ref: introduce %(color:...) for color
  for-each-ref: introduce %(upstream:track[short])
  for-each-ref: introduce %(HEAD) asterisk marker
  t6300 (for-each-ref): don't hardcode SHA-1 hexes
  t6300 (for-each-ref): clearly demarcate setup

7 years agoMerge branch 'jc/bundle'
Junio C Hamano [Fri, 6 Dec 2013 19:07:14 +0000 (11:07 -0800)]
Merge branch 'jc/bundle'

Code clean-up.

* jc/bundle:
  bundle: use argv-array

7 years agoMerge branch 'rh/remote-hg-bzr-updates'
Junio C Hamano [Fri, 6 Dec 2013 19:06:52 +0000 (11:06 -0800)]
Merge branch 'rh/remote-hg-bzr-updates'

Updates to remote-bzr and remote-hg in contrib.

* rh/remote-hg-bzr-updates:
  remote-bzr, remote-hg: fix email address regular expression
  test-hg.sh: help user correlate verbose output with email test
  test-hg.sh: fix duplicate content strings in author tests
  test-hg.sh: avoid obsolete 'test' syntax
  test-hg.sh: eliminate 'local' bashism
  test-bzr.sh, test-hg.sh: prepare for change to push.default=simple
  test-bzr.sh, test-hg.sh: allow running from any dir
  test-lib.sh: convert $TEST_DIRECTORY to an absolute path

7 years agoMerge branch 'jn/perl-lib-extra'
Junio C Hamano [Fri, 6 Dec 2013 19:05:38 +0000 (11:05 -0800)]
Merge branch 'jn/perl-lib-extra'

Allow customizing the paths to Perl modules with the new
PERLLIB_EXTRA makefile variable.

* jn/perl-lib-extra:
  Makefile: add PERLLIB_EXTRA variable that adds to default perl path
  Makefile: rebuild perl scripts when perl paths change

7 years agoMerge branch 'gj/push-more-verbose-advice' (early part)
Junio C Hamano [Thu, 5 Dec 2013 22:03:32 +0000 (14:03 -0800)]
Merge branch 'gj/push-more-verbose-advice' (early part)

* 'gj/push-more-verbose-advice' (early part):
  push: enhance unspecified push default warning

7 years agoMerge branch 'jn/mediawiki-makefile-updates'
Junio C Hamano [Thu, 5 Dec 2013 21:00:23 +0000 (13:00 -0800)]
Merge branch 'jn/mediawiki-makefile-updates'

Build and installation procedure clean-up.

* jn/mediawiki-makefile-updates:
  git-remote-mediawiki build: handle DESTDIR/INSTLIBDIR with whitespace
  git-remote-mediawiki build: make 'install' command configurable
  git-remote-mediawiki: honor DESTDIR in "make install"
  git-remote-mediawiki: do not remove installed files in "clean" target

7 years agoMerge branch 'jl/submodule-update-retire-orig-flags'
Junio C Hamano [Thu, 5 Dec 2013 21:00:20 +0000 (13:00 -0800)]
Merge branch 'jl/submodule-update-retire-orig-flags'

Code clean-up.

* jl/submodule-update-retire-orig-flags:
  submodule update: remove unnecessary orig_flags variable

7 years agoMerge branch 'nd/wt-status-align-i18n'
Junio C Hamano [Thu, 5 Dec 2013 21:00:16 +0000 (13:00 -0800)]
Merge branch 'nd/wt-status-align-i18n'

An attempt to automatically align the names in the "git status"
output, taking the display width of (translated) section labels
into account.

* nd/wt-status-align-i18n:
  wt-status: take the alignment burden off translators

7 years agoMerge branch 'sb/sha1-loose-object-info-check-existence'
Junio C Hamano [Thu, 5 Dec 2013 21:00:11 +0000 (13:00 -0800)]
Merge branch 'sb/sha1-loose-object-info-check-existence'

"git cat-file --batch-check=ok" did not check the existence of the
named object.

* sb/sha1-loose-object-info-check-existence:
  sha1_loose_object_info(): do not return success on missing object

7 years agoMerge branch 'jk/two-way-merge-corner-case-fix'
Junio C Hamano [Thu, 5 Dec 2013 20:59:25 +0000 (12:59 -0800)]
Merge branch 'jk/two-way-merge-corner-case-fix'

Fix a rather longstanding corner-case bug in twoway "reset to
there" merge, which is most often seen in "git am --abort".

* jk/two-way-merge-corner-case-fix:
  t1005: add test for "read-tree --reset -u A B"
  t1005: reindent
  unpack-trees: fix "read-tree -u --reset A B" with conflicted index

7 years agoMerge branch 'jc/ref-excludes'
Junio C Hamano [Thu, 5 Dec 2013 20:59:09 +0000 (12:59 -0800)]
Merge branch 'jc/ref-excludes'

People often wished a way to tell "git log --branches" (and "git
log --remotes --not --branches") to exclude some local branches
from the expansion of "--branches" (similarly for "--tags", "--all"
and "--glob=<pattern>").  Now they have one.

* jc/ref-excludes:
  rev-parse: introduce --exclude=<glob> to tame wildcards
  rev-list --exclude: export add/clear-ref-exclusion and ref-excluded API
  rev-list --exclude: tests
  document --exclude option
  revision: introduce --exclude=<glob> to tame wildcards

7 years agoMerge branch 'nv/parseopt-opt-arg'
Junio C Hamano [Thu, 5 Dec 2013 20:59:03 +0000 (12:59 -0800)]
Merge branch 'nv/parseopt-opt-arg'

Enhance "rev-parse --parseopt" mode to help parsing options with
an optional parameter.

* nv/parseopt-opt-arg:
  rev-parse --parseopt: add the --stuck-long mode
  Use the word 'stuck' instead of 'sticked'

7 years agoMerge branch 'bc/http-100-continue'
Junio C Hamano [Thu, 5 Dec 2013 20:58:58 +0000 (12:58 -0800)]
Merge branch 'bc/http-100-continue'

Issue "100 Continue" responses to help use of GSS-Negotiate
authentication scheme over HTTP transport when needed.

* bc/http-100-continue:
  remote-curl: fix large pushes with GSSAPI
  remote-curl: pass curl slot_results back through run_slot
  http: return curl's AUTHAVAIL via slot_results

7 years agoMerge branch 'jc/merge-base-reflog'
Junio C Hamano [Thu, 5 Dec 2013 20:58:27 +0000 (12:58 -0800)]
Merge branch 'jc/merge-base-reflog'

Code the logic in "pull --rebase" that figures out a fork point
from reflog entries in C.

* jc/merge-base-reflog:
  merge-base: teach "--fork-point" mode
  merge-base: use OPT_CMDMODE and clarify the command line parsing

7 years agoMerge branch 'jk/replace-perl-in-built-scripts'
Junio C Hamano [Thu, 5 Dec 2013 20:58:21 +0000 (12:58 -0800)]
Merge branch 'jk/replace-perl-in-built-scripts'

* jk/replace-perl-in-built-scripts:
  use @@PERL@@ in built scripts

7 years agoMerge branch 'jh/loose-object-dirs-creation-race'
Junio C Hamano [Thu, 5 Dec 2013 20:54:14 +0000 (12:54 -0800)]
Merge branch 'jh/loose-object-dirs-creation-race'

When two processes created one loose object file each, which fell
into the same fan-out bucket that previously did not have any
objects, they both tried to do an equivalent of

    mkdir .git/objects/$fanout &&
    chmod $shared_perm .git/objects/$fanout

before writing into their file .git/objects/$fanout/$remainder,
one of which could have failed unnecessarily when the second
invocation of mkdir found that the directory already has been
created by the first one.

* jh/loose-object-dirs-creation-race:
  sha1_file.c:create_tmpfile(): Fix race when creating loose object dirs

7 years agoMerge branch 'jk/robustify-parse-commit'
Junio C Hamano [Thu, 5 Dec 2013 20:54:01 +0000 (12:54 -0800)]
Merge branch 'jk/robustify-parse-commit'

* jk/robustify-parse-commit:
  checkout: do not die when leaving broken detached HEAD
  use parse_commit_or_die instead of custom message
  use parse_commit_or_die instead of segfaulting
  assume parse_commit checks for NULL commit
  assume parse_commit checks commit->object.parsed
  log_tree_diff: die when we fail to parse a commit

7 years agoMerge branch 'ak/submodule-foreach-quoting'
Junio C Hamano [Thu, 5 Dec 2013 20:53:17 +0000 (12:53 -0800)]
Merge branch 'ak/submodule-foreach-quoting'

A behavior change, but a worthwhile one: "git submodule foreach"
was treating its arguments as part of a single command to be
concatenated and passed to a shell, making writing buggy
scripts too easy.

This patch preserves the old "just pass it to the shell" behavior
when a single argument is passed to 'git submodule foreach' and
moves to a new "skip the shell and use the arguments passed
unmolested" behavior when more than one argument is passed.

The old behavior (always concatenating and passing to the shell)
was similar to the 'ssh' command, while the new behavior (switching
on the number of arguments) is what 'xterm -e' does.

May need more thought to make sure this change is advertised well
so that scripts that used multiple arguments but added their own
extra layer of quoting are not broken.

* ak/submodule-foreach-quoting:
  submodule foreach: skip eval for more than one argument

7 years agoSync with 1.8.5.1
Junio C Hamano [Tue, 3 Dec 2013 19:42:03 +0000 (11:42 -0800)]
Sync with 1.8.5.1

* maint:
  Git 1.8.5.1
  ref-iteration doc: add_submodule_odb() returns 0 for success

7 years agoMerge branch 'nd/glossary-content-pathspec-markup'
Junio C Hamano [Tue, 3 Dec 2013 19:41:52 +0000 (11:41 -0800)]
Merge branch 'nd/glossary-content-pathspec-markup'

* nd/glossary-content-pathspec-markup:
  glossary-content.txt: fix documentation of "**" patterns

7 years agoMerge branch 'jj/doc-markup-gitcli'
Junio C Hamano [Tue, 3 Dec 2013 19:41:46 +0000 (11:41 -0800)]
Merge branch 'jj/doc-markup-gitcli'

* jj/doc-markup-gitcli:
  Documentation/gitcli.txt: fix double quotes

7 years agoMerge branch 'jj/doc-markup-hints-in-coding-guidelines'
Junio C Hamano [Tue, 3 Dec 2013 19:41:43 +0000 (11:41 -0800)]
Merge branch 'jj/doc-markup-hints-in-coding-guidelines'

* jj/doc-markup-hints-in-coding-guidelines:
  State correct usage of literal examples in man pages in the coding standards

7 years agoMerge branch 'jj/log-doc'
Junio C Hamano [Tue, 3 Dec 2013 19:41:40 +0000 (11:41 -0800)]
Merge branch 'jj/log-doc'

Mark-up fixes.

* jj/log-doc:
  Documentation/git-log.txt: mark-up fix and minor rephasing
  Documentation/git-log: update "--log-size" description

7 years agoMerge branch 'jj/rev-list-options-doc'
Junio C Hamano [Tue, 3 Dec 2013 19:41:37 +0000 (11:41 -0800)]
Merge branch 'jj/rev-list-options-doc'

Mark-up and grammo fixes.

* jj/rev-list-options-doc:
  Documentation/rev-list-options.txt: fix some grammatical issues and typos
  Documentation/rev-list-options.txt: fix mark-up

7 years agoMerge branch 'mi/typofixes'
Junio C Hamano [Tue, 3 Dec 2013 19:41:33 +0000 (11:41 -0800)]
Merge branch 'mi/typofixes'

* mi/typofixes:
  contrib: typofixes
  Documentation/technical/http-protocol.txt: typofixes
  typofixes: fix misspelt comments

7 years agoMerge branch 'tb/doc-fetch-pack-url'
Junio C Hamano [Tue, 3 Dec 2013 19:41:31 +0000 (11:41 -0800)]
Merge branch 'tb/doc-fetch-pack-url'

* tb/doc-fetch-pack-url:
  git-fetch-pack uses URLs like git-fetch

7 years agoGit 1.8.5.1 v1.8.5.1
Junio C Hamano [Tue, 3 Dec 2013 19:16:56 +0000 (11:16 -0800)]
Git 1.8.5.1

Signed-off-by: Junio C Hamano <gitster@pobox.com>
7 years agoref-iteration doc: add_submodule_odb() returns 0 for success
Nick Townsend [Mon, 25 Nov 2013 23:31:09 +0000 (15:31 -0800)]
ref-iteration doc: add_submodule_odb() returns 0 for success

The usage sample of add_submodule_odb() function in the Submodules
section expects non-zero return value for success, but the function
actually reports success with zero.

Helped-by: René Scharfe <l.s.r@web.de>
Reviewed-by: Heiko Voigt <hvoigt@hvoigt.net>
Signed-off-by: Nick Townsend <nick.townsend@mac.com>
Signed-off-by: Junio C Hamano <gitster@pobox.com>
7 years agoSync with 1.8.4.5
Junio C Hamano [Mon, 2 Dec 2013 23:34:44 +0000 (15:34 -0800)]
Sync with 1.8.4.5

7 years agoGit 1.8.4.5 v1.8.4.5
Junio C Hamano [Mon, 2 Dec 2013 23:33:30 +0000 (15:33 -0800)]
Git 1.8.4.5

Signed-off-by: Junio C Hamano <gitster@pobox.com>
7 years agosubmodule: do not copy unknown update mode from .gitmodules
Junio C Hamano [Mon, 2 Dec 2013 21:31:55 +0000 (13:31 -0800)]
submodule: do not copy unknown update mode from .gitmodules

When submodule.$name.update is given as hint from the upstream in
the .gitmodules file, we used to blindly copy it to .git/config,
unless there already is a value defined for the submodule.

However, there is no reason to expect that the update mode hinted by
the upstream is available in the version of Git the user is using,
and a really custom "!cmd" prepared by an upstream person running on
Linux may not even be available to a user on Windows.  It is simply
irresponsible to copy the setting blindly and to attempt to use it
during a later "submodule update" without validating it first.

Just show the suggested value to the diagnostic output, and set the
value to 'none' in the configuration, if it is not one of the ones
that are known to be supported by this version of Git.

Helped-by: Jens Lehmann <Jens.Lehmann@web.de>
Helped-by: Jeff King <peff@peff.net>
Signed-off-by: Junio C Hamano <gitster@pobox.com>
7 years agogitk: Recognize -L option
Thomas Rast [Sat, 16 Nov 2013 17:37:44 +0000 (18:37 +0100)]
gitk: Recognize -L option

This gives line-log support to gitk, by exploiting the new support for
processing and showing "inline" diffs straight from the git-log
output.

Note that we 'set allknown 0', which is a bit counterintuitive since
this is a "known" option.  But that flag prevents gitk from thinking
it can optimize the view by running rev-list to see the topology; in
the -L case that doesn't work.

Signed-off-by: Thomas Rast <trast@inf.ethz.ch>
Signed-off-by: Paul Mackerras <paulus@samba.org>
7 years agogitk: Support showing the gathered inline diffs
Thomas Rast [Sat, 16 Nov 2013 17:37:43 +0000 (18:37 +0100)]
gitk: Support showing the gathered inline diffs

The previous commit split the diffs into a separate field.  Now we
actually want to show them.

To that end we use the stored diff, and

- process it once to build a fake "tree diff", i.e., a list of all
  changed files;

- feed it through parseblobdiffline to actually format it into the
  $ctext field, like the existing diff machinery would.

Signed-off-by: Thomas Rast <trast@inf.ethz.ch>
Signed-off-by: Paul Mackerras <paulus@samba.org>
7 years agogitk: Split out diff part in $commitinfo
Thomas Rast [Sat, 16 Nov 2013 17:37:42 +0000 (18:37 +0100)]
gitk: Split out diff part in $commitinfo

So far we just parsed everything after the headers into the "comment"
bit of $commitinfo, including notes and -- if you gave weird options
-- the diff.

Split out the diff, if any, into a separate field.  It's easy to
recognize, since it always starts with /^diff/ and is preceded by an
empty line.

We take care to snip away said empty line.  The display code already
properly spaces the end of the message from the first diff, and
leaving another empty line at the end looks ugly.

Signed-off-by: Thomas Rast <trast@inf.ethz.ch>
Signed-off-by: Paul Mackerras <paulus@samba.org>
7 years agogitk: Refactor per-line part of getblobdiffline and its support
Thomas Rast [Sat, 16 Nov 2013 17:37:41 +0000 (18:37 +0100)]
gitk: Refactor per-line part of getblobdiffline and its support

For later use with data sources other than a pipe, refactor the big
worker part of getblobdiffline to a separate function
parseblobdiffline.  Also refactor its initialization and wrap-up to
separate routines.

Signed-off-by: Thomas Rast <trast@inf.ethz.ch>
Signed-off-by: Paul Mackerras <paulus@samba.org>
7 years agogitk: Support -G option from the command line
Thomas Rast [Sat, 16 Nov 2013 17:37:40 +0000 (18:37 +0100)]
gitk: Support -G option from the command line

The -G option's usage is exactly analogous to that of -S, so
supporting it is easy.

Signed-off-by: Thomas Rast <trast@inf.ethz.ch>
Signed-off-by: Paul Mackerras <paulus@samba.org>
7 years agoGit 1.8.5 v1.8.5
Junio C Hamano [Wed, 27 Nov 2013 20:14:45 +0000 (12:14 -0800)]
Git 1.8.5

Signed-off-by: Junio C Hamano <gitster@pobox.com>
7 years agoSync with maint
Junio C Hamano [Wed, 27 Nov 2013 20:13:29 +0000 (12:13 -0800)]
Sync with maint

* maint:
  remote-hg: don't decode UTF-8 paths into Unicode objects

7 years agoremote-hg: don't decode UTF-8 paths into Unicode objects
Richard Hansen [Mon, 18 Nov 2013 04:12:42 +0000 (23:12 -0500)]
remote-hg: don't decode UTF-8 paths into Unicode objects

The internal mercurial API expects ordinary 8-bit string objects, not
Unicode string objects.  With this change, the test-hg.sh unit tests
pass again.

Signed-off-by: Richard Hansen <rhansen@bbn.com>
Reviewed-by: Felipe Contreras <felipe.contreras@gmail.com>
Signed-off-by: Junio C Hamano <gitster@pobox.com>
7 years agoMerge branch 'rh/remote-hg-bzr-updates' (early part)
Junio C Hamano [Mon, 25 Nov 2013 16:20:02 +0000 (08:20 -0800)]
Merge branch 'rh/remote-hg-bzr-updates' (early part)

Unbreaks a recent breakage due to use of unquote-c-style.

This may need to be cherry-picked down to 1.8.4.x series.

* 'rh/remote-hg-bzr-updates' (early part):
  remote-hg: don't decode UTF-8 paths into Unicode objects

7 years agogit p4: Use git diff-tree instead of format-patch
Crestez Dan Leonard [Thu, 21 Nov 2013 15:19:03 +0000 (17:19 +0200)]
git p4: Use git diff-tree instead of format-patch

The output of git format-patch can vary with user preferences. In
particular setting diff.noprefix will break the "git apply" that
is done as part of "git p4 submit".

Acked-by: Pete Wyckoff <pw@padd.com>
Signed-off-by: Crestez Dan Leonard <cdleonard@gmail.com>
Signed-off-by: Junio C Hamano <gitster@pobox.com>
7 years agodrop support for "experimental" loose objects
Jeff King [Thu, 21 Nov 2013 11:48:37 +0000 (06:48 -0500)]
drop support for "experimental" loose objects

In git v1.4.3, we introduced a new loose object format that
encoded some object information outside of the zlib stream.
Ultimately the format was dropped in v1.5.3, but we kept the
reading side around to help people migrate objects. Each
time we open a loose object, we use a heuristic to check
whether it is in the normal loose format, or the
experimental one.

This heuristic is robust in the face of valid data, but it
tends to treat corrupted or garbage data as an experimental
object. With the regular format, we would notice quickly
that zlib's crc does not check out and complain. With the
experimental object, we are likely to extract a nonsensical
object size and try to allocate a huge buffer, resulting in
xmalloc calling "die".

This latter behavior is much worse, for two reasons. One,
git reports an allocation error when the real error is
corruption. And two, the program dies unconditionally, so
you cannot even run fsck (which would otherwise ignore the
broken object and keep going).

We could try to improve the heuristic to err on the side of
normal objects in the face of corruption, but there is
really little point. The experimental format is long-dead,
and was never enabled by default to begin with. We can
instead simply remove it. The only affected repository would
be one that explicitly set core.legacyheaders in 2007, and
then never repacked in the intervening 6 years.

Signed-off-by: Jeff King <peff@peff.net>
Signed-off-by: Junio C Hamano <gitster@pobox.com>
7 years agoglossary-content.txt: fix documentation of "**" patterns
Nguyễn Thái Ngọc Duy [Thu, 21 Nov 2013 06:44:20 +0000 (13:44 +0700)]
glossary-content.txt: fix documentation of "**" patterns

"**" means bold in ASCIIDOC, so we need to escape it. This is similar
to 8447dc8 (gitignore.txt: fix documentation of "**" patterns -
2013-11-07)

Signed-off-by: Nguyễn Thái Ngọc Duy <pclouds@gmail.com>
Signed-off-by: Junio C Hamano <gitster@pobox.com>
7 years agoDocumentation/gitcli.txt: fix double quotes
Jason St. John [Wed, 20 Nov 2013 01:34:40 +0000 (20:34 -0500)]
Documentation/gitcli.txt: fix double quotes

Replace double quotes around literal examples with backticks

Signed-off-by: Jason St. John <jstjohn@purdue.edu>
Signed-off-by: Junio C Hamano <gitster@pobox.com>
7 years agodiff: restrict pathspec limitations to diff b/f case only
Nguyễn Thái Ngọc Duy [Wed, 20 Nov 2013 01:26:41 +0000 (08:26 +0700)]
diff: restrict pathspec limitations to diff b/f case only

builtin_diff_b_f() needs a path, not pathspec. Other modes in diff
can deal with pathspec just fine. But because of the current
GUARD_PATHSPEC() location, other modes also reject :(glob) and
:(icase).

Move GUARD_PATHSPEC(), and the "path" assignment statement, which is
the reason of this GUARD_PATHSPEC(), inside builtin_diff_b_f().

Signed-off-by: Nguyễn Thái Ngọc Duy <pclouds@gmail.com>
Signed-off-by: Junio C Hamano <gitster@pobox.com>
7 years agoGit 1.8.5-rc3 v1.8.5-rc3
Junio C Hamano [Wed, 20 Nov 2013 19:18:25 +0000 (11:18 -0800)]
Git 1.8.5-rc3

Signed-off-by: Junio C Hamano <gitster@pobox.com>
7 years agoSync with 1.8.4.4
Junio C Hamano [Wed, 20 Nov 2013 19:26:59 +0000 (11:26 -0800)]
Sync with 1.8.4.4

7 years agoGit 1.8.4.4 v1.8.4.4
Junio C Hamano [Wed, 20 Nov 2013 19:26:08 +0000 (11:26 -0800)]
Git 1.8.4.4

Signed-off-by: Junio C Hamano <gitster@pobox.com>
7 years agoMerge branch 'mb/relnotes-1.8.5-fix'
Junio C Hamano [Wed, 20 Nov 2013 19:15:25 +0000 (11:15 -0800)]
Merge branch 'mb/relnotes-1.8.5-fix'

* mb/relnotes-1.8.5-fix:
  RelNotes: spelling & grammar fixes

7 years agofor-each-ref: avoid color leakage
Ramkumar Ramachandra [Mon, 18 Nov 2013 17:39:13 +0000 (23:09 +0530)]
for-each-ref: avoid color leakage

To make sure that an invocation like the following doesn't leak color,

  $ git for-each-ref --format='%(subject)%(color:green)'

auto-reset at the end of the format string when the last color token
seen in the format string isn't a color-reset.

Signed-off-by: Ramkumar Ramachandra <artagnon@gmail.com>
Signed-off-by: Junio C Hamano <gitster@pobox.com>
7 years agofor-each-ref: introduce %(color:...) for color
Ramkumar Ramachandra [Mon, 18 Nov 2013 17:39:12 +0000 (23:09 +0530)]
for-each-ref: introduce %(color:...) for color

Enhance 'git for-each-ref' with color formatting options.  You can now
use the following format in for-each-ref:

  %(color:green)%(refname:short)%(color:reset)

where color names are described in color.branch.*.

Signed-off-by: Ramkumar Ramachandra <artagnon@gmail.com>
Signed-off-by: Junio C Hamano <gitster@pobox.com>
7 years agofor-each-ref: introduce %(upstream:track[short])
Ramkumar Ramachandra [Mon, 18 Nov 2013 17:39:11 +0000 (23:09 +0530)]
for-each-ref: introduce %(upstream:track[short])

Introduce %(upstream:track) to display "[ahead M, behind N]" and
%(upstream:trackshort) to display "=", ">", "<", or "<>"
appropriately (inspired by contrib/completion/git-prompt.sh).

Now you can use the following format in for-each-ref:

  %(refname:short)%(upstream:trackshort)

to display refs with terse tracking information.

Note that :track and :trackshort only work with "upstream", and error
out when used with anything else.

Signed-off-by: Ramkumar Ramachandra <artagnon@gmail.com>
Signed-off-by: Junio C Hamano <gitster@pobox.com>
7 years agoRelNotes: spelling & grammar fixes
Marc Branchaud [Thu, 14 Nov 2013 17:01:13 +0000 (12:01 -0500)]
RelNotes: spelling & grammar fixes

Signed-off-by: Marc Branchaud <marcnarc@xiplink.com>
Signed-off-by: Junio C Hamano <gitster@pobox.com>
7 years agoMerge branch 'nd/literal-pathspecs'
Junio C Hamano [Mon, 18 Nov 2013 22:31:29 +0000 (14:31 -0800)]
Merge branch 'nd/literal-pathspecs'

Fixes a regression on 'master' since v1.8.4.

* nd/literal-pathspecs:
  pathspec: stop --*-pathspecs impact on internal parse_pathspec() uses

7 years agoMakefile: add PERLLIB_EXTRA variable that adds to default perl path
Jonathan Nieder [Fri, 15 Nov 2013 21:10:28 +0000 (13:10 -0800)]
Makefile: add PERLLIB_EXTRA variable that adds to default perl path

Some platforms ship Perl modules used by git scripts outside the
default perl path (e.g., on Mac OS X, Subversion's perl bindings live
in a separate xcode perl path).  Add an PERLLIB_EXTRA variable to hold
a colon-separated list of extra directories to add to the perl path in
git's scripts, as a convenience for packagers.

Requested-by: Dave Borowitz <dborowitz@google.com>
Signed-off-by: Jonathan Nieder <jrnieder@gmail.com>
Signed-off-by: Junio C Hamano <gitster@pobox.com>
7 years agoMakefile: rebuild perl scripts when perl paths change
Jonathan Nieder [Mon, 18 Nov 2013 22:23:11 +0000 (14:23 -0800)]
Makefile: rebuild perl scripts when perl paths change

Signed-off-by: Jonathan Nieder <jrnieder@gmail.com>
Signed-off-by: Junio C Hamano <gitster@pobox.com>
7 years agofor-each-ref: introduce %(HEAD) asterisk marker
Ramkumar Ramachandra [Mon, 18 Nov 2013 17:39:10 +0000 (23:09 +0530)]
for-each-ref: introduce %(HEAD) asterisk marker

'git branch' shows which branch you are currently on with an '*', but
'git for-each-ref' misses this feature.  So, extend its format with
%(HEAD) for the same effect.

Now you can use the following format in for-each-ref:

  %(HEAD) %(refname:short)

to display an asterisk next to the current ref.

Signed-off-by: Ramkumar Ramachandra <artagnon@gmail.com>
Signed-off-by: Junio C Hamano <gitster@pobox.com>
7 years agot6300 (for-each-ref): don't hardcode SHA-1 hexes
Ramkumar Ramachandra [Mon, 18 Nov 2013 17:39:09 +0000 (23:09 +0530)]
t6300 (for-each-ref): don't hardcode SHA-1 hexes

Use rev-parse in its place, making it easier for future patches to
modify the test script.

Signed-off-by: Ramkumar Ramachandra <artagnon@gmail.com>
Signed-off-by: Junio C Hamano <gitster@pobox.com>
7 years agot6300 (for-each-ref): clearly demarcate setup
Ramkumar Ramachandra [Mon, 18 Nov 2013 17:39:08 +0000 (23:09 +0530)]
t6300 (for-each-ref): clearly demarcate setup

Condense the two-step setup into one step, and give it an appropriate
name.

Signed-off-by: Ramkumar Ramachandra <artagnon@gmail.com>
Signed-off-by: Junio C Hamano <gitster@pobox.com>
7 years agoremote-bzr, remote-hg: fix email address regular expression
Richard Hansen [Mon, 18 Nov 2013 04:12:50 +0000 (23:12 -0500)]
remote-bzr, remote-hg: fix email address regular expression

Before, strings like "foo.bar@example.com" would be converted to
"foo. <bar@example.com>" when they should be "unknown
<foo.bar@example.com>".

Signed-off-by: Richard Hansen <rhansen@bbn.com>
Reviewed-by: Felipe Contreras <felipe.contreras@gmail.com>
Signed-off-by: Junio C Hamano <gitster@pobox.com>
7 years agotest-hg.sh: help user correlate verbose output with email test
Richard Hansen [Mon, 18 Nov 2013 04:12:49 +0000 (23:12 -0500)]
test-hg.sh: help user correlate verbose output with email test

It's hard to tell which author conversion test failed when the email
addresses look similar.

Signed-off-by: Richard Hansen <rhansen@bbn.com>
Reviewed-by: Felipe Contreras <felipe.contreras@gmail.com>
Signed-off-by: Junio C Hamano <gitster@pobox.com>
7 years agotest-hg.sh: fix duplicate content strings in author tests
Richard Hansen [Mon, 18 Nov 2013 04:12:48 +0000 (23:12 -0500)]
test-hg.sh: fix duplicate content strings in author tests

"beta" was used twice.  Change the second copy to "gamma" and
increment the remaining content strings.

Signed-off-by: Richard Hansen <rhansen@bbn.com>
Reviewed-by: Felipe Contreras <felipe.contreras@gmail.com>
Signed-off-by: Junio C Hamano <gitster@pobox.com>
7 years agotest-hg.sh: avoid obsolete 'test' syntax
Richard Hansen [Mon, 18 Nov 2013 04:12:47 +0000 (23:12 -0500)]
test-hg.sh: avoid obsolete 'test' syntax

The POSIX spec says that the '-a', '-o', and parentheses operands to
the 'test' utility are obsolete extensions due to the potential for
ambiguity.  Replace '-o' with '|| test' to avoid unspecified behavior.

Signed-off-by: Richard Hansen <rhansen@bbn.com>
Reviewed-by: Felipe Contreras <felipe.contreras@gmail.com>
Signed-off-by: Junio C Hamano <gitster@pobox.com>
7 years agotest-hg.sh: eliminate 'local' bashism
Richard Hansen [Mon, 18 Nov 2013 04:12:46 +0000 (23:12 -0500)]
test-hg.sh: eliminate 'local' bashism

Unlike bash, POSIX shell does not specify a 'local' command for
declaring function-local variable scope.  Except for IFS, the variable
names are not used anywhere else in the script so simply remove the
'local'.  For IFS, move the assignment to the 'read' command to
prevent it from affecting code outside the function.

Signed-off-by: Richard Hansen <rhansen@bbn.com>
Reviewed-by: Felipe Contreras <felipe.contreras@gmail.com>
Signed-off-by: Junio C Hamano <gitster@pobox.com>
7 years agotest-bzr.sh, test-hg.sh: prepare for change to push.default=simple
Richard Hansen [Mon, 18 Nov 2013 04:12:45 +0000 (23:12 -0500)]
test-bzr.sh, test-hg.sh: prepare for change to push.default=simple

Change 'git push <remote>' to 'git push <remote> <branch>' in one of
the test-bzr.sh tests to ensure that the test continues to pass when
the default value of push.default changes to simple.

Signed-off-by: Richard Hansen <rhansen@bbn.com>
Reviewed-by: Felipe Contreras <felipe.contreras@gmail.com>
Signed-off-by: Junio C Hamano <gitster@pobox.com>
7 years agotest-bzr.sh, test-hg.sh: allow running from any dir
Felipe Contreras [Mon, 18 Nov 2013 04:12:44 +0000 (23:12 -0500)]
test-bzr.sh, test-hg.sh: allow running from any dir

Set TEST_DIRECTORY to the t/ directory (if TEST_DIRECTORY is not
already set) so that the user doesn't already have to be in the test
directory to run these test scripts.

Signed-off-by: Felipe Contreras <felipe.contreras@gmail.com>
Based-on-patch-by: Richard Hansen <rhansen@bbn.com>
Reviewed-by: Richard Hansen <rhansen@bbn.com>
Signed-off-by: Richard Hansen <rhansen@bbn.com>
Signed-off-by: Junio C Hamano <gitster@pobox.com>
7 years agoremote-hg: don't decode UTF-8 paths into Unicode objects
Richard Hansen [Mon, 18 Nov 2013 04:12:42 +0000 (23:12 -0500)]
remote-hg: don't decode UTF-8 paths into Unicode objects

The internal mercurial API expects ordinary 8-bit string objects, not
Unicode string objects.  With this change, the test-hg.sh unit tests
pass again.

Signed-off-by: Richard Hansen <rhansen@bbn.com>
Reviewed-by: Felipe Contreras <felipe.contreras@gmail.com>
Signed-off-by: Junio C Hamano <gitster@pobox.com>
7 years agotest-lib.sh: convert $TEST_DIRECTORY to an absolute path
Felipe Contreras [Mon, 18 Nov 2013 04:12:43 +0000 (23:12 -0500)]
test-lib.sh: convert $TEST_DIRECTORY to an absolute path

If $TEST_DIRECTORY is specified in the environment, convert the value
to an absolute path to ensure that it remains valid even when 'cd' is
used.

Signed-off-by: Felipe Contreras <felipe.contreras@gmail.com>
Reviewed-by: Richard Hansen <rhansen@bbn.com>
Signed-off-by: Richard Hansen <rhansen@bbn.com>
Signed-off-by: Junio C Hamano <gitster@pobox.com>
7 years agoDocumentation/rev-list-options.txt: fix some grammatical issues and typos
Jason St. John [Fri, 15 Nov 2013 01:34:02 +0000 (20:34 -0500)]
Documentation/rev-list-options.txt: fix some grammatical issues and typos

Various fixes:

 - fix typos (e.g. "show" -> "shown")
 - use "regular expression(s)" instead of "regexp" where appropriate
 - reword some sentences for easier reading
 - fix/improve some grammatical issues (e.g. comma usage)
 - add missing articles (e.g. "the")
 - change "E-mail" to "email"

Signed-off-by: Jason St. John <jstjohn@purdue.edu>
Signed-off-by: Junio C Hamano <gitster@pobox.com>
7 years agoDocumentation/rev-list-options.txt: fix mark-up
Jason St. John [Fri, 15 Nov 2013 01:34:01 +0000 (20:34 -0500)]
Documentation/rev-list-options.txt: fix mark-up

Some the labeled list entries have a blank line between the label
and the body text, and some don't.  Use the latter style for
consistency; incidentally, syntax highlighting in Vim works better
if there is no blank line there.

Typeset literal options, commands, and path names in monospace.
When using `literal string` mark-up to do so, there is no need to
escape AsciiDoc special characters with backslashes, so make sure we
don't do so.

Replace some double quotes with proper AsciiDoc quotes
(e.g. ``foo'').

Signed-off-by: Jason St. John <jstjohn@purdue.edu>
Signed-off-by: Junio C Hamano <gitster@pobox.com>
7 years agoState correct usage of literal examples in man pages in the coding standards
Jason St. John [Thu, 14 Nov 2013 23:08:45 +0000 (18:08 -0500)]
State correct usage of literal examples in man pages in the coding standards

The man pages contain inconsistent usage of backticks vs. single quotes
around options, commands, etc. that are in paragraphs. This commit states
that backticks should always be used around literal examples.

This commit states that "--" and friends should not be escaped
(e.g. use `--pretty=oneline` instead of `\--pretty=oneline`).

This commit also states correct usage for typesetting command usage
examples with inline substitutions.

Thanks-to: Ramkumar Ramachandra <artagnon@gmail.com>
Thanks-to: Stuart Rackham <srackham@gmail.com>
Thanks-to: Junio C Hamano <gitster@pobox.com>
Signed-off-by: Jason St. John <jstjohn@purdue.edu>
Signed-off-by: Junio C Hamano <gitster@pobox.com>
7 years agoMerge branch 'maint'
Junio C Hamano [Mon, 18 Nov 2013 20:25:28 +0000 (12:25 -0800)]
Merge branch 'maint'

Hotfix for recent regression while talking to upload-pack
in a repository with many symbolic refs.

* maint:
  Revert "upload-pack: send non-HEAD symbolic refs"

7 years agoMerge branch 'jx/branch-vv-always-compare-with-upstream'
Junio C Hamano [Mon, 18 Nov 2013 20:24:49 +0000 (12:24 -0800)]
Merge branch 'jx/branch-vv-always-compare-with-upstream'

Hot-fix for a regression.

* jx/branch-vv-always-compare-with-upstream:
  branch: fix --verbose output column alignment

7 years agobranch: fix --verbose output column alignment
Torstein Hegge [Thu, 14 Nov 2013 18:18:01 +0000 (19:18 +0100)]
branch: fix --verbose output column alignment

Commit f2e0873 (branch: report invalid tracking branch as gone) removed
an early return from fill_tracking_info() in the path taken when 'git
branch -v' lists a branch in sync with its upstream. This resulted in an
unconditionally added space in front of the subject line:

    $ git branch -v
    * master f5eb3da  commit pushed to upstream
      topic  f935eb6 unpublished topic

Instead, only add the trailing space if a decoration have been added.

To catch this kind of whitespace breakage in the tests, be a bit less
smart when filtering the output through sed.

Signed-off-by: Torstein Hegge <hegge@resisty.net>
Signed-off-by: Junio C Hamano <gitster@pobox.com>
7 years agoRevert "upload-pack: send non-HEAD symbolic refs"
Junio C Hamano [Mon, 18 Nov 2013 18:15:45 +0000 (10:15 -0800)]
Revert "upload-pack: send non-HEAD symbolic refs"

This reverts commit 5e7dcad771cb873e278a0571b46910d7c32e2f6c; there
may be unbounded number of symbolic refs in the repository, but the
capability header line in the on-wire protocol has a rather low
length limit.

7 years agogit-gui: correct spelling errors in comments
Masanari Iida [Tue, 12 Nov 2013 15:17:44 +0000 (00:17 +0900)]
git-gui: correct spelling errors in comments

Signed-off-by: Masanari Iida <standby24x7@gmail.com>
Signed-off-by: Pat Thoyts <patthoyts@users.sourceforge.net>
7 years agopush: enhance unspecified push default warning
Greg Jacobson [Fri, 4 Oct 2013 14:20:07 +0000 (10:20 -0400)]
push: enhance unspecified push default warning

When the unset push.default warning message is displayed this may be
the first time many users encounter push.default.

Explain in the warning message in a compact manner what push.default
is and what the change means to the end-user to help the users decide.

Signed-off-by: Greg Jacobson <coder5000@gmail.com>
Helped-by: Jonathan Nieder <jrnieder@gmail.com>
Helped-by: Matthieu Moy <Matthieu.Moy@imag.fr>
Helped-by: Marc Branchaud <marcnarc@xiplink.com>
Signed-off-by: Junio C Hamano <gitster@pobox.com>
7 years agoDocumentation/git-log.txt: mark-up fix and minor rephasing
Jason St. John [Wed, 13 Nov 2013 06:21:49 +0000 (01:21 -0500)]
Documentation/git-log.txt: mark-up fix and minor rephasing

 - typeset options, commands, and paths in monospace;
 - typeset references to sections with emphasis;
 - replace some double quotes with proper AsciiDoc quotes (e.g. ``foo'');
 - use title case when referring to section headings.

Signed-off-by: Jason St. John <jstjohn@purdue.edu>
Signed-off-by: Junio C Hamano <gitster@pobox.com>
7 years agoDocumentation/git-log: update "--log-size" description
Jason St. John [Wed, 13 Nov 2013 06:21:48 +0000 (01:21 -0500)]
Documentation/git-log: update "--log-size" description

"--log-size" was added in commit 9fa3465, and the commit message
contained a satisfactory explanation; however, the man page entry
for it did not describe the actual output format, what the output
meant and what the option was meant to be used for.

Helped-by: Jonathan Nieder <jrnieder@gmail.com>
Signed-off-by: Jason St. John <jstjohn@purdue.edu>
Signed-off-by: Junio C Hamano <gitster@pobox.com>
7 years agoGit 1.8.5-rc2 v1.8.5-rc2
Junio C Hamano [Wed, 13 Nov 2013 20:59:31 +0000 (12:59 -0800)]
Git 1.8.5-rc2

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