OSDN Git Service

git-core/git.git
11 years agogit-prompt.sh: do not print duplicate clean color code
Eduardo R. D'Avila [Wed, 26 Jun 2013 03:05:16 +0000 (00:05 -0300)]
git-prompt.sh: do not print duplicate clean color code

Do not print a duplicate clean color code when there
is no other indicators other than the current branch
in colored prompt.

Acked-by: SZEDER Gábor <szeder@ira.uka.de>
Signed-off-by: Eduardo R. D'Avila <erdavila@gmail.com>
Signed-off-by: Junio C Hamano <gitster@pobox.com>
11 years agot9903: remove redundant tests
Eduardo R. D'Avila [Wed, 26 Jun 2013 03:05:15 +0000 (00:05 -0300)]
t9903: remove redundant tests

After refactoring __git_ps1_colorize_gitstring, codepaths for bash and zsh
became mostly common and tests for bash and zsh became redundant.

Remove tests for zsh. Keep one minimal test that stress the difference
in codepaths for bash and zsh.

Suggested-by: SZEDER Gábor <szeder@ira.uka.de>
Signed-off-by: Eduardo R. D'Avila <erdavila@gmail.com>
Signed-off-by: Junio C Hamano <gitster@pobox.com>
11 years agogit-prompt.sh: refactor colored prompt code
Eduardo R. D'Avila [Wed, 26 Jun 2013 03:05:14 +0000 (00:05 -0300)]
git-prompt.sh: refactor colored prompt code

__git_ps1_colorize_gitstring() sets color codes and
builds the prompt gitstring. It has duplicated code
to handle color codes for bash and zsh shells.
__git_ps1() also has duplicated logic to build the
prompt gitstring.

Remove duplication of logic to build gitstring in
__git_ps1_colorize_gitstring() and __git_ps1().

Leave in __git_ps1_colorize_gitstring() only logic
to set color codes.

Signed-off-by: Eduardo R. D'Avila <erdavila@gmail.com>
Signed-off-by: Junio C Hamano <gitster@pobox.com>
11 years agot9903: add tests for git-prompt pcmode
Eduardo R. D'Avila [Wed, 26 Jun 2013 03:05:13 +0000 (00:05 -0300)]
t9903: add tests for git-prompt pcmode

git-prompt.sh lacks tests for PROMPT_COMMAND mode.

Add tests for:
* pcmode prompt without colors
* pcmode prompt with colors for bash
* pcmode prompt with colors for zsh

Having these tests enables an upcoming refactor in
a safe way.

Signed-off-by: Eduardo R. D'Avila <erdavila@gmail.com>
Signed-off-by: Junio C Hamano <gitster@pobox.com>
11 years agoUpdate draft release notes to 1.8.4
Junio C Hamano [Sun, 23 Jun 2013 21:55:45 +0000 (14:55 -0700)]
Update draft release notes to 1.8.4

Signed-off-by: Junio C Hamano <gitster@pobox.com>
11 years agoMerge branch 'mz/rebase-tests'
Junio C Hamano [Sun, 23 Jun 2013 21:53:26 +0000 (14:53 -0700)]
Merge branch 'mz/rebase-tests'

* mz/rebase-tests:
  rebase topology tests: fix commit names on case-insensitive file systems
  tests: move test for rebase messages from t3400 to t3406
  t3406: modernize style
  add tests for rebasing merged history
  add tests for rebasing root
  add tests for rebasing of empty commits
  add tests for rebasing with patch-equivalence present
  add simple tests of consistency across rebase types

11 years agoMerge branch 'jk/unpack-entry-fallback-to-another'
Junio C Hamano [Sun, 23 Jun 2013 21:53:20 +0000 (14:53 -0700)]
Merge branch 'jk/unpack-entry-fallback-to-another'

* jk/unpack-entry-fallback-to-another:
  unpack_entry: do not die when we fail to apply a delta
  t5303: drop "count=1" from corruption dd

11 years agoMerge branch 'jk/apache-test-for-2.4'
Junio C Hamano [Sun, 23 Jun 2013 21:53:17 +0000 (14:53 -0700)]
Merge branch 'jk/apache-test-for-2.4'

* jk/apache-test-for-2.4:
  lib-httpd/apache.conf: check version only after mod_version loads
  t/lib-httpd/apache.conf: configure an MPM module for apache 2.4
  t/lib-httpd/apache.conf: load compat access module in apache 2.4
  t/lib-httpd/apache.conf: load extra auth modules in apache 2.4
  t/lib-httpd/apache.conf: do not use LockFile in apache >= 2.4

11 years agoMerge branch 'cm/remote-mediawiki-perlcritique'
Junio C Hamano [Sun, 23 Jun 2013 21:53:13 +0000 (14:53 -0700)]
Merge branch 'cm/remote-mediawiki-perlcritique'

* cm/remote-mediawiki-perlcritique: (31 commits)
  git-remote-mediawiki: make error message more precise
  git-remote-mediawiki: add a perlcritic rule in Makefile
  git-remote-mediawiki: add a .perlcriticrc file
  git-remote-mediawiki: clearly rewrite double dereference
  git-remote-mediawiki: fix a typo ("mediwiki" instead of "mediawiki")
  git-remote-mediawiki: put non-trivial numeric values in constants.
  git-remote-mediawiki: don't use quotes for empty strings
  git-remote-mediawiki: replace "unless" statements with negated "if" statements
  git-remote-mediawiki: brace file handles for print for more clarity
  git-remote-mediawiki: modify strings for a better coding-style
  git-remote-mediawiki: put long code into a subroutine
  git-remote-mediawiki: remove import of unused open2
  git-remote-mediawiki: check return value of open
  git-remote-mediawiki: assign a variable as undef and make proper indentation
  git-remote-mediawiki: rename a variable ($last) which has the name of a keyword
  git-remote-mediawiki: remove unused variable $entry
  git-remote-mediawiki: turn double-negated expressions into simple expressions
  git-remote-mediawiki: change the name of a variable
  git-remote-mediawiki: add newline in the end of die() error messages
  git-remote-mediawiki: change style in a regexp
  ...

11 years agoMerge branch 'bp/remote-mw-tests'
Junio C Hamano [Sun, 23 Jun 2013 21:53:11 +0000 (14:53 -0700)]
Merge branch 'bp/remote-mw-tests'

* bp/remote-mw-tests:
  git-remote-mediawiki: remove hardcoded version number in the test suite

11 years agoMerge branch 'rr/rebase-autostash'
Junio C Hamano [Sun, 23 Jun 2013 21:53:07 +0000 (14:53 -0700)]
Merge branch 'rr/rebase-autostash'

* rr/rebase-autostash:
  rebase: finish_rebase() in noop rebase
  rebase: finish_rebase() in fast-forward rebase
  rebase: guard against missing files in read_basic_state()

11 years agoMerge branch 'rr/prompt-rebase-breakage-fix'
Junio C Hamano [Sun, 23 Jun 2013 21:53:05 +0000 (14:53 -0700)]
Merge branch 'rr/prompt-rebase-breakage-fix'

* rr/prompt-rebase-breakage-fix:
  prompt: squelch error output from cat

11 years agoMerge branch 'jg/status-config'
Junio C Hamano [Sun, 23 Jun 2013 21:51:58 +0000 (14:51 -0700)]
Merge branch 'jg/status-config'

"git status" learned status.branch and status.short configuration
variables to use --branch and --short options by default (override
with --no-branch and --no-short options from the command line).

* jg/status-config:
  status: introduce status.branch to enable --branch by default
  status: introduce status.short to enable --short by default

11 years agolib-httpd/apache.conf: check version only after mod_version loads
Jeff King [Fri, 21 Jun 2013 18:12:51 +0000 (14:12 -0400)]
lib-httpd/apache.conf: check version only after mod_version loads

Commit 0442743 introduced an <IfVersion> directive near the
top of the apache config file. However, at that point we
have not yet checked for and loaded the mod_version module.
This means that the directive will behave oddly if
mod_version is dynamically loaded, failing to match when it
should.

We can fix this by moving the whole block below the
LoadModule directive for mod_version.

Reported-by: Brian Gernhardt <brian@gernhardtsoftware.com>
Signed-off-by: Jeff King <peff@peff.net>
Signed-off-by: Junio C Hamano <gitster@pobox.com>
11 years agoSync with maint
Junio C Hamano [Fri, 21 Jun 2013 18:26:41 +0000 (11:26 -0700)]
Sync with maint

* maint:
  completion: complete diff --word-diff

11 years agotransport-helper: be quiet on read errors from helpers
Jeff King [Fri, 21 Jun 2013 07:05:39 +0000 (03:05 -0400)]
transport-helper: be quiet on read errors from helpers

Prior to commit 81d340d4, we did not print any error message
if a remote transport helper died unexpectedly. If a helper
did not print any error message (e.g., because it crashed),
the user could be left confused. That commit tried to
rectify the situation by printing a note that the helper
exited unexpectedly.

However, this makes a much more common case worse: when a
helper does die with a useful message, we print the extra
"Reading from 'git-remote-foo failed" message. This can also
end up confusing users, as they may not even know what
remote helpers are (e.g., the fact that http support comes
through git-remote-https is purely an implementation detail
that most users do not know or care about).

Since we do not have a good way of knowing whether the
helper printed a useful error, and since the common failure
mode is for it to do so, let's default to remaining quiet.
Debuggers can dig further by setting GIT_TRANSPORT_HELPER_DEBUG.

Signed-off-by: Jeff King <peff@peff.net>
Signed-off-by: Junio C Hamano <gitster@pobox.com>
11 years agocompletion: complete diff --word-diff
Ramkumar Ramachandra [Tue, 18 Jun 2013 19:24:05 +0000 (00:54 +0530)]
completion: complete diff --word-diff

Signed-off-by: Ramkumar Ramachandra <artagnon@gmail.com>
Signed-off-by: Junio C Hamano <gitster@pobox.com>
11 years agoUpdate draft release notes to 1.8.4
Junio C Hamano [Thu, 20 Jun 2013 23:13:41 +0000 (16:13 -0700)]
Update draft release notes to 1.8.4

11 years agoMerge branch 'cm/remote-mediawiki'
Junio C Hamano [Thu, 20 Jun 2013 23:02:42 +0000 (16:02 -0700)]
Merge branch 'cm/remote-mediawiki'

* cm/remote-mediawiki:
  git-remote-mediawiki: display message when launched directly

11 years agoMerge branch 'rs/match-trees-refactor'
Junio C Hamano [Thu, 20 Jun 2013 23:02:40 +0000 (16:02 -0700)]
Merge branch 'rs/match-trees-refactor'

Code cleanup.

* rs/match-trees-refactor:
  match-trees: factor out fill_tree_desc_strict

11 years agoMerge branch 'rs/logical-vs-binary-or'
Junio C Hamano [Thu, 20 Jun 2013 23:02:38 +0000 (16:02 -0700)]
Merge branch 'rs/logical-vs-binary-or'

Code cleanup.

* rs/logical-vs-binary-or:
  use logical OR (||) instead of binary OR (|) in logical context

11 years agoMerge branch 'mm/color-auto-default'
Junio C Hamano [Thu, 20 Jun 2013 23:02:33 +0000 (16:02 -0700)]
Merge branch 'mm/color-auto-default'

Flip the default for color.ui to 'auto', which is what many
tutorials recommend new users to do.

* mm/color-auto-default:
  make color.ui default to 'auto'
  config: refactor management of color.ui's default value

11 years agoMerge branch 'rs/discard-index-discard-array'
Junio C Hamano [Thu, 20 Jun 2013 23:02:30 +0000 (16:02 -0700)]
Merge branch 'rs/discard-index-discard-array'

* rs/discard-index-discard-array:
  read-cache: free cache in discard_index
  read-cache: add simple performance test

11 years agoMerge branch 'nd/traces'
Junio C Hamano [Thu, 20 Jun 2013 23:02:28 +0000 (16:02 -0700)]
Merge branch 'nd/traces'

* nd/traces:
  git.txt: document GIT_TRACE_PACKET
  core: use env variable instead of config var to turn on logging pack access

11 years agoMerge branch 'fc/show-non-empty-errors-in-test'
Junio C Hamano [Thu, 20 Jun 2013 23:02:24 +0000 (16:02 -0700)]
Merge branch 'fc/show-non-empty-errors-in-test'

* fc/show-non-empty-errors-in-test:
  test: test_must_be_empty helper

11 years agoMerge branch 'fc/makefile'
Junio C Hamano [Thu, 20 Jun 2013 23:02:21 +0000 (16:02 -0700)]
Merge branch 'fc/makefile'

Makefile simplification.

* fc/makefile:
  Makefile: use $^ to avoid listing prerequisites on the command line
  build: do not install git-remote-testgit
  build: generate and clean test scripts

11 years agoMerge branch 'js/test-ln-s-add'
Junio C Hamano [Thu, 20 Jun 2013 23:02:18 +0000 (16:02 -0700)]
Merge branch 'js/test-ln-s-add'

Many tests that check the behaviour of symbolic links stored in the
index or the tree objects do not have to be skipped on a filesystem
that lack symbolic link support.

* js/test-ln-s-add:
  t4011: remove SYMLINKS prerequisite
  t6035: use test_ln_s_add to remove SYMLINKS prerequisite
  t3509, t4023, t4114: use test_ln_s_add to remove SYMLINKS prerequisite
  t3100: use test_ln_s_add to remove SYMLINKS prerequisite
  t3030: use test_ln_s_add to remove SYMLINKS prerequisite
  t0000: use test_ln_s_add to remove SYMLINKS prerequisite
  tests: use test_ln_s_add to remove SYMLINKS prerequisite (trivial cases)
  tests: introduce test_ln_s_add
  t3010: modernize style
  test-chmtime: Fix exit code on Windows

11 years agoMerge branch 'nd/make-wildmatch-default'
Junio C Hamano [Thu, 20 Jun 2013 23:02:14 +0000 (16:02 -0700)]
Merge branch 'nd/make-wildmatch-default'

* nd/make-wildmatch-default:
  Makefile: promote wildmatch to be the default fnmatch implementation

11 years agorebase topology tests: fix commit names on case-insensitive file systems
Johannes Sixt [Tue, 18 Jun 2013 07:28:07 +0000 (09:28 +0200)]
rebase topology tests: fix commit names on case-insensitive file systems

The recently introduced tests used uppercase letters to denote
cherry-picks of commits having the corresponding lowercase letter names.
The helper functions also set up tags with the names of the commits.

But this constellation fails on case-insensitive file systems because
there cannot be distinct tags with names that differ only in case.

Use a less subtle convention for the names of cherry-picked commits.

Signed-off-by: Johannes Sixt <j6t@kdbg.org>
Signed-off-by: Junio C Hamano <gitster@pobox.com>
11 years agoMerge tag 'gitgui-0.18.0' of git://repo.or.cz/git-gui
Junio C Hamano [Mon, 17 Jun 2013 03:06:55 +0000 (20:06 -0700)]
Merge tag 'gitgui-0.18.0' of git://repo.or.cz/git-gui

git-gui 0.18.0

* tag 'gitgui-0.18.0' of git://repo.or.cz/git-gui:
  git-gui 0.18
  git-gui: avoid an error message when removing the last remote
  git-gui: fix file name handling with non-empty prefix
  git-gui: bring wish process to front on Mac
  git-gui: change dialog button positions for Windows to suit platform.
  git-gui: allow "\ No newline at end of file" for linewise staging
  git-gui: fix the mergetool launcher for the Beyond Compare tool.
  Makefile: replace "echo 1>..." with "echo >..."
  French translation: copy -> copie.
  git-gui: Fix parsing of <rev> <path-which-not-present-in-worktree>

11 years agostatus: introduce status.branch to enable --branch by default
Jorge Juan Garcia Garcia [Tue, 11 Jun 2013 13:34:05 +0000 (15:34 +0200)]
status: introduce status.branch to enable --branch by default

Some people often run 'git status -b'.
The config variable status.branch allows to set it by default.

Signed-off-by: Jorge Juan Garcia Garcia <Jorge-Juan.Garcia-Garcia@ensimag.imag.fr>
Signed-off-by: Mathieu Lienard--Mayor <Mathieu.Lienard--Mayor@ensimag.imag.fr>
Reviewed-by: Matthieu Moy <Matthieu.Moy@grenoble-inp.fr>
Signed-off-by: Matthieu Moy <Matthieu.Moy@grenoble-inp.fr>
Signed-off-by: Junio C Hamano <gitster@pobox.com>
11 years agoUpdate draft release notes to 1.8.4
Junio C Hamano [Sun, 16 Jun 2013 05:12:52 +0000 (22:12 -0700)]
Update draft release notes to 1.8.4

Signed-off-by: Junio C Hamano <gitster@pobox.com>
11 years agogit-gui 0.18 gitgui-0.18.0
Pat Thoyts [Sat, 15 Jun 2013 22:53:34 +0000 (23:53 +0100)]
git-gui 0.18

Signed-off-by: Pat Thoyts <patthoyts@users.sourceforge.net>
11 years agogit-gui: avoid an error message when removing the last remote
Pat Thoyts [Sat, 15 Jun 2013 22:36:27 +0000 (23:36 +0100)]
git-gui: avoid an error message when removing the last remote

When the last remote is removed on a system that has tearoff menu items
the code that adjusts the fetch and prune menus may raise an error when
probing the menu entry for a non-existing -label option.
Check the entry type to avoid this fault.

Reported-by: Vedran Miletić <rivanvx@gmail.com>
Signed-off-by: Pat Thoyts <patthoyts@users.sourceforge.net>
11 years agounpack_entry: do not die when we fail to apply a delta
Jeff King [Fri, 14 Jun 2013 21:53:34 +0000 (17:53 -0400)]
unpack_entry: do not die when we fail to apply a delta

When we try to load an object from disk and fail, our
general strategy is to see if we can get it from somewhere
else (e.g., a loose object). That lets users fix corruption
problems by copying known-good versions of objects into the
object database.

We already handle the case where we were not able to read
the delta from disk. However, when we find that the delta we
read does not apply, we simply die.  This case is harder to
trigger, as corruption in the delta data itself would
trigger a crc error from zlib.  However, a corruption that
pointed us at the wrong delta base might cause it.

We can do the same "fail and try to find the object
elsewhere" trick instead of dying. This not only gives us a
chance to recover, but also puts us on code paths that will
alert the user to the problem (with the current message,
they do not even know which sha1 caused the problem).

Note that unlike some other pack corruptions, we do not
recover automatically from this case when doing a repack.
There is nothing apparently wrong with the delta, as it
points to a valid, accessible object, and we realize the
error only when the resulting size does not match up. And in
theory, one could even have a case where the corrupted size
is the same, and the problem would only be noticed by
recomputing the sha1.

We can get around this by recomputing the deltas with
--no-reuse-delta, which our test does (and this is probably
good advice for anyone recovering from pack corruption).

Signed-off-by: Jeff King <peff@peff.net>
Signed-off-by: Junio C Hamano <gitster@pobox.com>
11 years agot5303: drop "count=1" from corruption dd
Jeff King [Fri, 14 Jun 2013 21:51:01 +0000 (17:51 -0400)]
t5303: drop "count=1" from corruption dd

This test corrupts pack objects by using "dd" with a seek
command. It passes "count=1 bs=1" to munge just a single
byte. However, the test added in commit b3118bdc wants to
munge two bytes, and the second byte of corruption is
silently ignored.

This turned out not to impact the test, however. The idea
was to reduce the "size of this entry" part of the header so
that zlib runs out of input bytes while inflating the entry.
That header is two bytes long, and the test reduced the
value of both bytes; since we experience the problem if we
are off by even 1 byte, it is sufficient to munge only the
first one.

Even though the test would have worked with only a single
byte munged, and we could simply tweak the test to use a
single byte, it makes sense to lift this 1-byte restriction
from do_corrupt_object. It will allow future tests that do
need to change multiple bytes to do so.

Signed-off-by: Jeff King <peff@peff.net>
Signed-off-by: Junio C Hamano <gitster@pobox.com>
11 years agogit-remote-mediawiki: remove hardcoded version number in the test suite
Benoit Person [Fri, 14 Jun 2013 10:19:11 +0000 (12:19 +0200)]
git-remote-mediawiki: remove hardcoded version number in the test suite

Updates the code to make it more easy to switch mediawiki version when
testing. Before that, the version number was partly hardcoded, partly
in a var.

Signed-off-by: Benoit Person <benoit.person@ensimag.fr>
Signed-off-by: Matthieu Moy <matthieu.moy@grenoble-inp.fr>
Signed-off-by: Junio C Hamano <gitster@pobox.com>
11 years agot/lib-httpd/apache.conf: configure an MPM module for apache 2.4
Jeff King [Sun, 9 Jun 2013 08:09:32 +0000 (04:09 -0400)]
t/lib-httpd/apache.conf: configure an MPM module for apache 2.4

Versions of Apache before 2.4 always had a "MultiProcessing
Module" (MPM) statically built in, which manages the worker
threads/processes. We do not care which one, as it is
largely a performance issue, and we put only a light load on
the server during our testing.

As of Apache 2.4, the MPM module is loadable just like any
other module, but exactly one such module must be loaded. On
a system where the MPMs are compiled dynamically (e.g.,
Debian unstable), this means that our test Apache server
will not start unless we provide the appropriate
configuration.

Unfortunately, we do not actually know which MPM modules are
available or appropriate for the system on which the tests
are running. This patch picks the "prefork" module, as it
is likely to be available on all Unix-like systems.

Signed-off-by: Jeff King <peff@peff.net>
Signed-off-by: Junio C Hamano <gitster@pobox.com>
11 years agot/lib-httpd/apache.conf: load compat access module in apache 2.4
Jeff King [Sun, 9 Jun 2013 08:08:45 +0000 (04:08 -0400)]
t/lib-httpd/apache.conf: load compat access module in apache 2.4

In apache 2.4, the "Order" directive has gone away in favor
of a new system in mod_authz_host. However, since we want
our config file to remain compatible across multiple Apache
versions, we can use mod_access_compat to keep using the
older style.

Signed-off-by: Jeff King <peff@peff.net>
Signed-off-by: Junio C Hamano <gitster@pobox.com>
11 years agot/lib-httpd/apache.conf: load extra auth modules in apache 2.4
Jeff King [Sun, 9 Jun 2013 08:08:22 +0000 (04:08 -0400)]
t/lib-httpd/apache.conf: load extra auth modules in apache 2.4

In apache 2.4, the "Auth*" and "Require" directives have
moved into the authn_core and authz_core modules,
respectively.

Signed-off-by: Jeff King <peff@peff.net>
Signed-off-by: Junio C Hamano <gitster@pobox.com>
11 years agot/lib-httpd/apache.conf: do not use LockFile in apache >= 2.4
Jeff King [Sun, 9 Jun 2013 08:07:59 +0000 (04:07 -0400)]
t/lib-httpd/apache.conf: do not use LockFile in apache >= 2.4

The LockFile directive from earlier versions of apache has
been replaced by the Mutex directive. The latter seems to
give sane defaults and does not need any specific
customization, so we can get away with just adding a version
check to the use of LockFile.

Signed-off-by: Jeff King <peff@peff.net>
Signed-off-by: Junio C Hamano <gitster@pobox.com>
11 years agogit-remote-mediawiki: make error message more precise
Célestin Matte [Fri, 14 Jun 2013 13:50:39 +0000 (15:50 +0200)]
git-remote-mediawiki: make error message more precise

In subroutine parse_command, error messages were not correct. For the "import"
function, having too much or incorrect arguments displayed both
"invalid arguments", while it displayed "too many arguments" for the "option"
functions under the same conditions.
Separate the two error messages in both cases.

Signed-off-by: Célestin Matte <celestin.matte@ensimag.fr>
Signed-off-by: Matthieu Moy <matthieu.moy@grenoble-inp.fr>
Signed-off-by: Junio C Hamano <gitster@pobox.com>
11 years agogit-remote-mediawiki: add a perlcritic rule in Makefile
Célestin Matte [Fri, 14 Jun 2013 13:50:38 +0000 (15:50 +0200)]
git-remote-mediawiki: add a perlcritic rule in Makefile

Option "-2" launches perlcritic with level 2. Levels go from 5 (most pertinent)
to 1. Rules of level 1 are mostly a question of style, and are therefore
ignored.

Signed-off-by: Célestin Matte <celestin.matte@ensimag.fr>
Signed-off-by: Matthieu Moy <matthieu.moy@grenoble-inp.fr>
Signed-off-by: Junio C Hamano <gitster@pobox.com>
11 years agogit-remote-mediawiki: add a .perlcriticrc file
Célestin Matte [Fri, 14 Jun 2013 13:50:37 +0000 (15:50 +0200)]
git-remote-mediawiki: add a .perlcriticrc file

Such a file allows to configure perlcritic.
Here, it is used to remove many unwanted rules and configure one to
remove unwanted warnings.

Signed-off-by: Célestin Matte <celestin.matte@ensimag.fr>
Signed-off-by: Matthieu Moy <matthieu.moy@grenoble-inp.fr>
Signed-off-by: Junio C Hamano <gitster@pobox.com>
11 years agogit-remote-mediawiki: clearly rewrite double dereference
Célestin Matte [Fri, 14 Jun 2013 13:50:36 +0000 (15:50 +0200)]
git-remote-mediawiki: clearly rewrite double dereference

@$var structures are re-written in the following way: @{$var}
It makes them more readable.

Signed-off-by: Célestin Matte <celestin.matte@ensimag.fr>
Signed-off-by: Matthieu Moy <matthieu.moy@grenoble-inp.fr>
Signed-off-by: Junio C Hamano <gitster@pobox.com>
11 years agogit-remote-mediawiki: fix a typo ("mediwiki" instead of "mediawiki")
Célestin Matte [Fri, 14 Jun 2013 13:50:35 +0000 (15:50 +0200)]
git-remote-mediawiki: fix a typo ("mediwiki" instead of "mediawiki")

Signed-off-by: Célestin Matte <celestin.matte@ensimag.fr>
Signed-off-by: Matthieu Moy <matthieu.moy@grenoble-inp.fr>
Signed-off-by: Junio C Hamano <gitster@pobox.com>
11 years agogit-remote-mediawiki: put non-trivial numeric values in constants.
Célestin Matte [Fri, 14 Jun 2013 13:50:34 +0000 (15:50 +0200)]
git-remote-mediawiki: put non-trivial numeric values in constants.

Non-trivial numeric values (e.g., different from 0, 1 and 2) are placed in
constants at the top of the code to be easily modifiable and to make more sense

Signed-off-by: Célestin Matte <celestin.matte@ensimag.fr>
Signed-off-by: Matthieu Moy <matthieu.moy@grenoble-inp.fr>
Signed-off-by: Junio C Hamano <gitster@pobox.com>
11 years agogit-remote-mediawiki: don't use quotes for empty strings
Célestin Matte [Fri, 14 Jun 2013 13:50:33 +0000 (15:50 +0200)]
git-remote-mediawiki: don't use quotes for empty strings

Empty strings are replaced by an $EMPTY constant.

Signed-off-by: Célestin Matte <celestin.matte@ensimag.fr>
Signed-off-by: Matthieu Moy <matthieu.moy@grenoble-inp.fr>
Signed-off-by: Junio C Hamano <gitster@pobox.com>
11 years agogit-remote-mediawiki: replace "unless" statements with negated "if" statements
Célestin Matte [Fri, 14 Jun 2013 13:50:32 +0000 (15:50 +0200)]
git-remote-mediawiki: replace "unless" statements with negated "if" statements

Signed-off-by: Célestin Matte <celestin.matte@ensimag.fr>
Signed-off-by: Matthieu Moy <matthieu.moy@grenoble-inp.fr>
Signed-off-by: Junio C Hamano <gitster@pobox.com>
11 years agogit-remote-mediawiki: brace file handles for print for more clarity
Célestin Matte [Fri, 14 Jun 2013 13:50:31 +0000 (15:50 +0200)]
git-remote-mediawiki: brace file handles for print for more clarity

This follows the following rule:
InputOutput::RequireBracedFileHandleWithPrint (Severity: 1)
    The `print' and `printf' functions have a unique syntax that supports an
    optional file handle argument. Conway suggests wrapping this argument in
    braces to make it visually stand out from the other arguments. When you
    put braces around any of the special package-level file handles like
    `STDOUT', `STDERR', and `DATA', you must the `'*'' sigil or else it
    won't compile under `use strict 'subs''.

      print $FH   "Mary had a little lamb\n";  #not ok
      print {$FH} "Mary had a little lamb\n";  #ok

      print   STDERR   $foo, $bar, $baz;  #not ok
      print  {STDERR}  $foo, $bar, $baz;  #won't compile under 'strict'
      print {*STDERR}  $foo, $bar, $baz;  #perfect!

Signed-off-by: Célestin Matte <celestin.matte@ensimag.fr>
Signed-off-by: Matthieu Moy <matthieu.moy@grenoble-inp.fr>
Signed-off-by: Junio C Hamano <gitster@pobox.com>
11 years agogit-remote-mediawiki: modify strings for a better coding-style
Célestin Matte [Fri, 14 Jun 2013 13:50:30 +0000 (15:50 +0200)]
git-remote-mediawiki: modify strings for a better coding-style

- strings which don't need interpolation are single-quoted for more clarity and
slight gain of performance
- interpolation is preferred over concatenation in many cases, for more clarity
- variables are always used with the ${} operator inside strings
- strings including double-quotes are written with qq() so that the quotes do
not have to be escaped

Signed-off-by: Célestin Matte <celestin.matte@ensimag.fr>
Signed-off-by: Matthieu Moy <matthieu.moy@grenoble-inp.fr>
Signed-off-by: Junio C Hamano <gitster@pobox.com>
11 years agogit-remote-mediawiki: put long code into a subroutine
Célestin Matte [Fri, 14 Jun 2013 13:50:29 +0000 (15:50 +0200)]
git-remote-mediawiki: put long code into a subroutine

Signed-off-by: Célestin Matte <celestin.matte@ensimag.fr>
Signed-off-by: Matthieu Moy <matthieu.moy@grenoble-inp.fr>
Signed-off-by: Junio C Hamano <gitster@pobox.com>
11 years agogit-remote-mediawiki: remove import of unused open2
Célestin Matte [Fri, 14 Jun 2013 13:50:28 +0000 (15:50 +0200)]
git-remote-mediawiki: remove import of unused open2

Signed-off-by: Célestin Matte <celestin.matte@ensimag.fr>
Signed-off-by: Matthieu Moy <matthieu.moy@grenoble-inp.fr>
Signed-off-by: Junio C Hamano <gitster@pobox.com>
11 years agogit-remote-mediawiki: check return value of open
Célestin Matte [Fri, 14 Jun 2013 13:50:27 +0000 (15:50 +0200)]
git-remote-mediawiki: check return value of open

Signed-off-by: Célestin Matte <celestin.matte@ensimag.fr>
Signed-off-by: Matthieu Moy <matthieu.moy@grenoble-inp.fr>
Signed-off-by: Junio C Hamano <gitster@pobox.com>
11 years agogit-remote-mediawiki: assign a variable as undef and make proper indentation
Célestin Matte [Fri, 14 Jun 2013 13:50:26 +0000 (15:50 +0200)]
git-remote-mediawiki: assign a variable as undef and make proper indentation

Explicitly assign local variable $/ as undef and make a proper
one-instruction-by-line indentation

Signed-off-by: Célestin Matte <celestin.matte@ensimag.fr>
Signed-off-by: Matthieu Moy <matthieu.moy@grenoble-inp.fr>
Signed-off-by: Junio C Hamano <gitster@pobox.com>
11 years agogit-remote-mediawiki: rename a variable ($last) which has the name of a keyword
Célestin Matte [Fri, 14 Jun 2013 13:50:25 +0000 (15:50 +0200)]
git-remote-mediawiki: rename a variable ($last) which has the name of a keyword

Signed-off-by: Célestin Matte <celestin.matte@ensimag.fr>
Signed-off-by: Matthieu Moy <matthieu.moy@grenoble-inp.fr>
Signed-off-by: Junio C Hamano <gitster@pobox.com>
11 years agogit-remote-mediawiki: remove unused variable $entry
Célestin Matte [Fri, 14 Jun 2013 13:50:24 +0000 (15:50 +0200)]
git-remote-mediawiki: remove unused variable $entry

Signed-off-by: Célestin Matte <celestin.matte@ensimag.fr>
Signed-off-by: Matthieu Moy <matthieu.moy@grenoble-inp.fr>
Signed-off-by: Junio C Hamano <gitster@pobox.com>
11 years agogit-remote-mediawiki: turn double-negated expressions into simple expressions
Célestin Matte [Fri, 14 Jun 2013 13:50:23 +0000 (15:50 +0200)]
git-remote-mediawiki: turn double-negated expressions into simple expressions

Signed-off-by: Célestin Matte <celestin.matte@ensimag.fr>
Signed-off-by: Matthieu Moy <matthieu.moy@grenoble-inp.fr>
Signed-off-by: Junio C Hamano <gitster@pobox.com>
11 years agogit-remote-mediawiki: change the name of a variable
Célestin Matte [Fri, 14 Jun 2013 13:50:22 +0000 (15:50 +0200)]
git-remote-mediawiki: change the name of a variable

Local variable $url has the same name as a global variable. Changing the name
of the local variable prevents future possible misunderstanding.

Signed-off-by: Célestin Matte <celestin.matte@ensimag.fr>
Signed-off-by: Matthieu Moy <matthieu.moy@grenoble-inp.fr>
Signed-off-by: Junio C Hamano <gitster@pobox.com>
11 years agogit-remote-mediawiki: add newline in the end of die() error messages
Célestin Matte [Fri, 14 Jun 2013 13:50:21 +0000 (15:50 +0200)]
git-remote-mediawiki: add newline in the end of die() error messages

Signed-off-by: Célestin Matte <celestin.matte@ensimag.fr>
Signed-off-by: Matthieu Moy <matthieu.moy@grenoble-inp.fr>
Signed-off-by: Junio C Hamano <gitster@pobox.com>
11 years agogit-remote-mediawiki: change style in a regexp
Célestin Matte [Fri, 14 Jun 2013 13:50:20 +0000 (15:50 +0200)]
git-remote-mediawiki: change style in a regexp

Change '[\n]' to '\n': brackets are useless here.

Signed-off-by: Célestin Matte <celestin.matte@ensimag.fr>
Signed-off-by: Matthieu Moy <matthieu.moy@grenoble-inp.fr>
Signed-off-by: Junio C Hamano <gitster@pobox.com>
11 years agogit-remote-mediawiki: change style in a regexp
Célestin Matte [Fri, 14 Jun 2013 13:50:19 +0000 (15:50 +0200)]
git-remote-mediawiki: change style in a regexp

In this regexp, ' |\n' is used, whereas its equivalent '[ \n]', which is
clearer, is used elsewhere. Make the style coherent.

Signed-off-by: Célestin Matte <celestin.matte@ensimag.fr>
Signed-off-by: Matthieu Moy <matthieu.moy@grenoble-inp.fr>
Signed-off-by: Junio C Hamano <gitster@pobox.com>
11 years agogit-remote-mediawiki: change separator of some regexps
Célestin Matte [Fri, 14 Jun 2013 13:50:18 +0000 (15:50 +0200)]
git-remote-mediawiki: change separator of some regexps

Use {}{} instead of /// when slashes are used inside the regexp so as not to
escape it.

Signed-off-by: Célestin Matte <celestin.matte@ensimag.fr>
Signed-off-by: Matthieu Moy <matthieu.moy@grenoble-inp.fr>
Signed-off-by: Junio C Hamano <gitster@pobox.com>
11 years agogit-remote-mediawiki: change the behaviour of a split
Célestin Matte [Fri, 14 Jun 2013 13:50:17 +0000 (15:50 +0200)]
git-remote-mediawiki: change the behaviour of a split

A "split ' '" is turned into a "split / /", which changes its behaviour: the
old method matched a run of whitespaces (/\s*/), while the new one will match a
single space, which is what we want here. Indeed, in other contexts,
changing split(' ') to split(/ /) could potentially be a regression, however,
here, when parsing the output of "rev-list --parents", whose output SHA-1's are
each separated by a single space, splitting on a single space is perfectly
correct.

Signed-off-by: Célestin Matte <celestin.matte@ensimag.fr>
Signed-off-by: Matthieu Moy <matthieu.moy@grenoble-inp.fr>
Signed-off-by: Junio C Hamano <gitster@pobox.com>
11 years agogit-remote-mediawiki: remove useless regexp modifier (m)
Célestin Matte [Fri, 14 Jun 2013 13:50:16 +0000 (15:50 +0200)]
git-remote-mediawiki: remove useless regexp modifier (m)

m// and // is used randomly. It is better to use the m modifier only when
needed, e.g., when the regexp uses another separator than //.

Signed-off-by: Célestin Matte <celestin.matte@ensimag.fr>
Signed-off-by: Matthieu Moy <matthieu.moy@grenoble-inp.fr>
Signed-off-by: Junio C Hamano <gitster@pobox.com>
11 years agogit-remote-mediawiki: rewrite unclear line of instructions
Célestin Matte [Fri, 14 Jun 2013 13:50:15 +0000 (15:50 +0200)]
git-remote-mediawiki: rewrite unclear line of instructions

Subroutines' parameters should be assigned to variable before doing anything
else
Besides, existing instruction affected a variable inside a "if", which break
Git's coding style

Signed-off-by: Célestin Matte <celestin.matte@ensimag.fr>
Signed-off-by: Matthieu Moy <matthieu.moy@grenoble-inp.fr>
Signed-off-by: Junio C Hamano <gitster@pobox.com>
11 years agogit-remote-mediawiki: change syntax of map calls
Célestin Matte [Fri, 14 Jun 2013 13:50:14 +0000 (15:50 +0200)]
git-remote-mediawiki: change syntax of map calls

Put first parameter of map inside a block, for better readability.
Follow BuiltinFunctions::RequireBlockMap

Signed-off-by: Célestin Matte <celestin.matte@ensimag.fr>
Signed-off-by: Matthieu Moy <matthieu.moy@grenoble-inp.fr>
Signed-off-by: Junio C Hamano <gitster@pobox.com>
11 years agogit-remote-mediawiki: move a variable declaration at the top of the code
Célestin Matte [Fri, 14 Jun 2013 13:50:13 +0000 (15:50 +0200)]
git-remote-mediawiki: move a variable declaration at the top of the code

%basetimestamps declaration was lost in the middle of subroutines

Signed-off-by: Célestin Matte <celestin.matte@ensimag.fr>
Signed-off-by: Matthieu Moy <matthieu.moy@grenoble-inp.fr>
Signed-off-by: Junio C Hamano <gitster@pobox.com>
11 years agogit-remote-mediawiki: always end a subroutine with a return
Célestin Matte [Fri, 14 Jun 2013 13:50:12 +0000 (15:50 +0200)]
git-remote-mediawiki: always end a subroutine with a return

Follow Subroutines::RequireFinalReturn

Signed-off-by: Célestin Matte <celestin.matte@ensimag.fr>
Signed-off-by: Matthieu Moy <matthieu.moy@grenoble-inp.fr>
Signed-off-by: Junio C Hamano <gitster@pobox.com>
11 years agogit-remote-mediawiki: replace :utf8 by :encoding(UTF-8)
Célestin Matte [Fri, 14 Jun 2013 13:50:11 +0000 (15:50 +0200)]
git-remote-mediawiki: replace :utf8 by :encoding(UTF-8)

Follow perlcritic's InputOutput::RequireEncodingWithUTF8Layer policy

Signed-off-by: Célestin Matte <celestin.matte@ensimag.fr>
Signed-off-by: Matthieu Moy <matthieu.moy@grenoble-inp.fr>
Signed-off-by: Junio C Hamano <gitster@pobox.com>
11 years agogit-remote-mediawiki: move "use warnings;" before any instruction
Célestin Matte [Fri, 14 Jun 2013 13:50:10 +0000 (15:50 +0200)]
git-remote-mediawiki: move "use warnings;" before any instruction

Signed-off-by: Célestin Matte <celestin.matte@ensimag.fr>
Signed-off-by: Matthieu Moy <matthieu.moy@grenoble-inp.fr>
Signed-off-by: Junio C Hamano <gitster@pobox.com>
11 years agogit-remote-mediawiki: make a regexp clearer
Célestin Matte [Fri, 14 Jun 2013 13:50:09 +0000 (15:50 +0200)]
git-remote-mediawiki: make a regexp clearer

Perl's split function takes a regex pattern argument. You can also
feed it an expression, which is then compiled into a regex at runtime.
It therefore works to pass your pattern via single quotes, but it is
much less obvious to a reader that the argument is meant to be a
regex, not a static string. Using the traditional slash-delimiters
makes this easier to read.

Signed-off-by: Célestin Matte <celestin.matte@ensimag.fr>
Signed-off-by: Matthieu Moy <matthieu.moy@grenoble-inp.fr>
Signed-off-by: Junio C Hamano <gitster@pobox.com>
11 years agoMerge branch 'rr/complete-difftool-fixup'
Junio C Hamano [Fri, 14 Jun 2013 15:46:23 +0000 (08:46 -0700)]
Merge branch 'rr/complete-difftool-fixup'

"git difftool" can take both revs to be compared and pathspecs.
"git show" takes revs, revs:path and pathspecs.

* rr/complete-difftool-fixup:
  completion: show can take both revlist and paths
  completion: difftool takes both revs and files

11 years agoMerge branch 'mt/send-email-cc-match-fix'
Junio C Hamano [Fri, 14 Jun 2013 15:46:20 +0000 (08:46 -0700)]
Merge branch 'mt/send-email-cc-match-fix'

Logic git-send-email used to suppress cc mishandled names like "A
U. Thor" <author@example.xz>, where the human readable part needs
to be quoted (the user input may not have the double quotes around
the name, and comparison was done between quoted and unquoted
strings).

* mt/send-email-cc-match-fix:
  test-send-email: test for pre-sanitized self name
  t/send-email: test suppress-cc=self with non-ascii
  t/send-email: add test with quoted sender
  send-email: make --suppress-cc=self sanitize input
  t/send-email: test suppress-cc=self on cccmd
  send-email: fix suppress-cc=self on cccmd
  t/send-email.sh: add test for suppress-cc=self

11 years agoMerge branch 'bp/mediawiki-credential'
Junio C Hamano [Fri, 14 Jun 2013 15:46:17 +0000 (08:46 -0700)]
Merge branch 'bp/mediawiki-credential'

The bridge to MediaWiki has been updated to use the credential
helper interface in Git.pm, losing its own and the original
implementation the former was based on.

* bp/mediawiki-credential:
  git-remote-mediawiki: use Git.pm functions for credentials

11 years agoMerge branch 'mh/reflife'
Junio C Hamano [Fri, 14 Jun 2013 15:46:13 +0000 (08:46 -0700)]
Merge branch 'mh/reflife'

Define memory ownership and lifetime rules for what for-each-ref
feeds to its callbacks (in short, "you do not own it, so make a
copy if you want to keep it").

* mh/reflife: (25 commits)
  refs: document the lifetime of the args passed to each_ref_fn
  register_ref(): make a copy of the bad reference SHA-1
  exclude_existing(): set existing_refs.strdup_strings
  string_list_add_refs_by_glob(): add a comment about memory management
  string_list_add_one_ref(): rename first parameter to "refname"
  show_head_ref(): rename first parameter to "refname"
  show_head_ref(): do not shadow name of argument
  add_existing(): do not retain a reference to sha1
  do_fetch(): clean up existing_refs before exiting
  do_fetch(): reduce scope of peer_item
  object_array_entry: fix memory handling of the name field
  find_first_merges(): remove unnecessary code
  find_first_merges(): initialize merges variable using initializer
  fsck: don't put a void*-shaped peg in a char*-shaped hole
  object_array_remove_duplicates(): rewrite to reduce copying
  revision: use object_array_filter() in implementation of gc_boundary()
  object_array: add function object_array_filter()
  revision: split some overly-long lines
  cmd_diff(): make it obvious which cases are exclusive of each other
  cmd_diff(): rename local variable "list" -> "entry"
  ...

11 years agoMerge branch 'kb/full-history-compute-treesame-carefully-2'
Junio C Hamano [Fri, 14 Jun 2013 15:45:59 +0000 (08:45 -0700)]
Merge branch 'kb/full-history-compute-treesame-carefully-2'

Major update to the revision traversal logic to improve culling of
irrelevant parents while traversing a mergy history.

* kb/full-history-compute-treesame-carefully-2:
  revision.c: make default history consider bottom commits
  revision.c: don't show all merges for --parents
  revision.c: discount side branches when computing TREESAME
  revision.c: add BOTTOM flag for commits
  simplify-merges: drop merge from irrelevant side branch
  simplify-merges: never remove all TREESAME parents
  t6012: update test for tweaked full-history traversal
  revision.c: Make --full-history consider more merges
  Documentation: avoid "uninteresting"
  rev-list-options.txt: correct TREESAME for P
  t6111: add parents to tests
  t6111: allow checking the parents as well
  t6111: new TREESAME test set
  t6019: test file dropped in -s ours merge
  decorate.c: compact table when growing

11 years agoMerge branch 'rr/remove-contrib-some'
Junio C Hamano [Fri, 14 Jun 2013 15:45:57 +0000 (08:45 -0700)]
Merge branch 'rr/remove-contrib-some'

Remove stale contrib/ material.

* rr/remove-contrib-some:
  contrib: drop blameview/ directory
  contrib: remove continuous/ and patches/

11 years agoprompt: squelch error output from cat
Ramkumar Ramachandra [Fri, 14 Jun 2013 08:28:05 +0000 (13:58 +0530)]
prompt: squelch error output from cat

The files $g/rebase-{merge,apply}/{head-name,msgnum,end} are not
guaranteed to exist.  When attempting to cat them, squelch the error
output.

In addition to guarding against stray directories, this patch addresses
a real problem:

  # on terminal 1
  $ git rebase -i master
  # ignore editor, and switch to terminal 2
  cat: .git/rebase-merge/msgnum: No such file or directory
  cat: .git/rebase-merge/end: No such file or directory
  $

Signed-off-by: Ramkumar Ramachandra <artagnon@gmail.com>
Signed-off-by: Junio C Hamano <gitster@pobox.com>
11 years agorebase: finish_rebase() in noop rebase
Ramkumar Ramachandra [Thu, 13 Jun 2013 16:06:13 +0000 (21:36 +0530)]
rebase: finish_rebase() in noop rebase

In the following case

  $ git rebase master
  Current branch autostash-fix is up to date.

the autostash is not applied automatically, because this codepath
forgets to call finish_rebase().  Fix this.  Also add a test to guard
against regressions.

Signed-off-by: Ramkumar Ramachandra <artagnon@gmail.com>
Signed-off-by: Junio C Hamano <gitster@pobox.com>
11 years agorebase: finish_rebase() in fast-forward rebase
Ramkumar Ramachandra [Thu, 13 Jun 2013 16:06:12 +0000 (21:36 +0530)]
rebase: finish_rebase() in fast-forward rebase

In the following case

  $ git rebase master
  Fast-forwarded autostash-fix to master.

The autostash is not applied automatically, because this codepath
forgets to call finish_rebase().  Fix this.  Also add a test to guard
against regressions.

Signed-off-by: Ramkumar Ramachandra <artagnon@gmail.com>
Signed-off-by: Junio C Hamano <gitster@pobox.com>
11 years agorebase: guard against missing files in read_basic_state()
Ramkumar Ramachandra [Thu, 13 Jun 2013 16:06:11 +0000 (21:36 +0530)]
rebase: guard against missing files in read_basic_state()

Signed-off-by: Ramkumar Ramachandra <artagnon@gmail.com>
Signed-off-by: Junio C Hamano <gitster@pobox.com>
11 years agouse logical OR (||) instead of binary OR (|) in logical context
René Scharfe [Thu, 13 Jun 2013 18:19:44 +0000 (20:19 +0200)]
use logical OR (||) instead of binary OR (|) in logical context

The compiler can short-circuit the evaluation of conditions strung
together with logical OR operators instead of computing the resulting
bitmask with binary ORs.  More importantly, this patch makes the
intent of the changed code clearer, because the logical context (as
opposed to binary context) becomes immediately obvious.

While we're at it, simplify the check for patch->is_rename in
builtin/apply.c a bit; it can only be 0 or 1, so we don't need a
comparison operator.

Signed-off-by: René Scharfe <rene.scharfe@lsrfire.ath.cx>
Signed-off-by: Junio C Hamano <gitster@pobox.com>
11 years agomatch-trees: factor out fill_tree_desc_strict
René Scharfe [Thu, 13 Jun 2013 18:19:28 +0000 (20:19 +0200)]
match-trees: factor out fill_tree_desc_strict

Deduplicate code by moving tree_desc initialization into a helper
function, fill_tree_desc_strict.  It is like fill_tree_descriptor,
except that it only accepts tree hashes and no tree references (tags,
commits).  No functional change.

Signed-off-by: René Scharfe <rene.scharfe@lsrfire.ath.cx>
Signed-off-by: Junio C Hamano <gitster@pobox.com>
11 years agoFix `git svn` `rebase` & `dcommit` if top-level HEAD directory exist
Slava Kardakov [Wed, 5 Jun 2013 18:31:27 +0000 (11:31 -0700)]
Fix `git svn` `rebase` & `dcommit` if top-level HEAD directory exist

When a file (or a directory) called HEAD exists in the working tree,
internal calls git svn makes trigger "did you mean a revision or a
path?" ambiguity check.

    $ git svn rebase
    fatal: ambiguous argument 'HEAD': both revision and filename
    Use '--' to separate paths from revisions, like this:
    'git <command> [<revision>...] -- [<file>...]'
    rev-list --first-parent --pretty=medium HEAD: command returned error: 128

Explicitly disambiguate by adding "--" after the revision.

Signed-off-by: Slava Kardakov <ojab@ojab.ru>
Reviewed-by: Jeff King <peff@peff.net>
Acked-by: Eric Wong <normalperson@yhbt.net>
Signed-off-by: Junio C Hamano <gitster@pobox.com>
11 years agocontrib: drop blameview/ directory
Jeff King [Wed, 12 Jun 2013 19:49:56 +0000 (15:49 -0400)]
contrib: drop blameview/ directory

Blameview was a quick-and-dirty demonstration of how blame's
incremental output could be used in an interface. These days
one can find much better (and less ugly!) demonstrations in
"git gui blame" and "tig blame".

The only advantage blameview has is that its code is perhaps
simpler to read. However, that is balanced by the fact that
it probably has bugs, as nobody uses it nor has touched the
code in 6 years. An implementor is probably better off just
reading the "incremental output" section of "man git-blame".

Signed-off-by: Jeff King <peff@peff.net>
Signed-off-by: Junio C Hamano <gitster@pobox.com>
11 years agostatus: introduce status.short to enable --short by default
Jorge Juan Garcia Garcia [Tue, 11 Jun 2013 13:34:04 +0000 (15:34 +0200)]
status: introduce status.short to enable --short by default

Some people always run 'git status -s'.
The configuration variable status.short allows to set it by default.

Signed-off-by: Jorge Juan Garcia Garcia <Jorge-Juan.Garcia-Garcia@ensimag.imag.fr>
Signed-off-by: Mathieu Lienard--Mayor <Mathieu.Lienard--Mayor@ensimag.imag.fr>
Reviewed-by: Matthieu Moy <Matthieu.Moy@grenoble-inp.fr>
Signed-off-by: Matthieu Moy <Matthieu.Moy@grenoble-inp.fr>
Signed-off-by: Junio C Hamano <gitster@pobox.com>
11 years agogit-remote-mediawiki: display message when launched directly
Célestin Matte [Tue, 11 Jun 2013 13:38:48 +0000 (15:38 +0200)]
git-remote-mediawiki: display message when launched directly

Users may be confused when they run the perl script directly.
A good way to detect this is to check the number of parameters used to call the
script, which is never different from 2 in a normal use.
Display a proper error message to avoid any confusion.

Signed-off-by: Célestin Matte <celestin.matte@ensimag.fr>
Signed-off-by: Matthieu Moy <matthieu.moy@grenoble-inp.fr>
Signed-off-by: Junio C Hamano <gitster@pobox.com>
11 years agoMerge branch 'maint'
Junio C Hamano [Tue, 11 Jun 2013 21:25:09 +0000 (14:25 -0700)]
Merge branch 'maint'

* maint:
  t0070 "mktemp to unwritable directory" needs SANITY
  pre-push.sample: Make the script executable

11 years agoMerge branch 'maint-1.8.2' into maint
Junio C Hamano [Tue, 11 Jun 2013 21:24:56 +0000 (14:24 -0700)]
Merge branch 'maint-1.8.2' into maint

* maint-1.8.2:
  t0070 "mktemp to unwritable directory" needs SANITY
  pre-push.sample: Make the script executable

11 years agot0070 "mktemp to unwritable directory" needs SANITY
Torsten Bögershausen [Sat, 8 Jun 2013 12:17:49 +0000 (14:17 +0200)]
t0070 "mktemp to unwritable directory" needs SANITY

Use the SANITY prerequisite when testing if a temp file can
be created in a read only directory.
Skip the test under CYGWIN, or skip it under Unix/Linux when
it is run as root.

Signed-off-by: Torsten Bögershausen <tboegi@web.de>
Signed-off-by: Junio C Hamano <gitster@pobox.com>
11 years agoUpdate draft release notes
Junio C Hamano [Tue, 11 Jun 2013 20:50:12 +0000 (13:50 -0700)]
Update draft release notes

Signed-off-by: Junio C Hamano <gitster@pobox.com>
11 years agoMerge branch 'cm/gitweb-project-list-persistent-cgi-fix'
Junio C Hamano [Tue, 11 Jun 2013 20:31:45 +0000 (13:31 -0700)]
Merge branch 'cm/gitweb-project-list-persistent-cgi-fix'

"gitweb" forgot to clear a global variable $search_regexp upon each
request, mistakenly carrying over the previous search to a new one
when used as a persistent CGI.

* cm/gitweb-project-list-persistent-cgi-fix:
  gitweb: fix problem causing erroneous project list

11 years agoMerge branch 'rr/maint-fetch-tag-doc-asterisks'
Junio C Hamano [Tue, 11 Jun 2013 20:31:41 +0000 (13:31 -0700)]
Merge branch 'rr/maint-fetch-tag-doc-asterisks'

* rr/maint-fetch-tag-doc-asterisks:
  fetch-options.txt: prevent a wildcard refspec from getting misformatted

11 years agoMerge branch 'rr/rebase-autostash'
Junio C Hamano [Tue, 11 Jun 2013 20:31:28 +0000 (13:31 -0700)]
Merge branch 'rr/rebase-autostash'

* rr/rebase-autostash:
  rebase: implement --[no-]autostash and rebase.autostash
  rebase --merge: return control to caller, for housekeeping
  rebase -i: return control to caller, for housekeeping
  am: return control to caller, for housekeeping
  rebase: prepare to do generic housekeeping
  rebase -i: don't error out if $state_dir already exists
  am: tighten a conditional that checks for $dotest

11 years agoMerge branch 'jk/test-exit-code-by-signal'
Junio C Hamano [Tue, 11 Jun 2013 20:31:25 +0000 (13:31 -0700)]
Merge branch 'jk/test-exit-code-by-signal'

* jk/test-exit-code-by-signal:
  t0005: skip signal death exit code test on Windows
  t0005: test git exit code from signal death

11 years agoMerge branch 'fc/at-head'
Junio C Hamano [Tue, 11 Jun 2013 20:31:23 +0000 (13:31 -0700)]
Merge branch 'fc/at-head'

Instead of typing four capital letters "HEAD", you can say "@"
instead.

* fc/at-head:
  sha1_name: compare variable with constant, not constant with variable
  Add new @ shortcut for HEAD
  sha1_name: refactor reinterpret()
  sha1_name: check @{-N} errors sooner
  sha1_name: reorganize get_sha1_basic()
  sha1_name: don't waste cycles in the @-parsing loop
  sha1_name: remove unnecessary braces
  sha1_name: remove no-op
  tests: at-combinations: @{N} versus HEAD@{N}
  tests: at-combinations: increase coverage
  tests: at-combinations: improve nonsense()
  tests: at-combinations: check ref names directly
  tests: at-combinations: simplify setup

11 years agoMerge branch 'ar/wildmatch-foldcase'
Junio C Hamano [Tue, 11 Jun 2013 20:31:21 +0000 (13:31 -0700)]
Merge branch 'ar/wildmatch-foldcase'

The wildmatch engine did not honor WM_CASEFOLD option correctly.

* ar/wildmatch-foldcase:
  wildmatch: properly fold case everywhere

11 years agoMerge branch 'tr/sha1-file-silence-loose-object-info-under-prune-race'
Junio C Hamano [Tue, 11 Jun 2013 20:31:19 +0000 (13:31 -0700)]
Merge branch 'tr/sha1-file-silence-loose-object-info-under-prune-race'

* tr/sha1-file-silence-loose-object-info-under-prune-race:
  sha1_file: silence sha1_loose_object_info

11 years agoMerge branch 'nd/warn-ambiguous-object-name'
Junio C Hamano [Tue, 11 Jun 2013 20:31:07 +0000 (13:31 -0700)]
Merge branch 'nd/warn-ambiguous-object-name'

"git cmd <name>", when <name> happens to be a 40-hex string,
directly uses the 40-hex string as an object name, even if a ref
"refs/<some hierarchy>/<name>" exists.  This disambiguation order
is unlikely to change, but we should warn about the ambiguity just
like we warn when more than one refs/ hierachies share the same
name.

* nd/warn-ambiguous-object-name:
  get_sha1: warn about full or short object names that look like refs