Commit Graph

18461 Commits

Author SHA1 Message Date
Junio C Hamano
86e081aea4 Merge branch 'maint'
* maint:
  test-genrandom: Add newline to usage string
2009-04-24 22:59:08 -07:00
Junio C Hamano
f06b9f1dff Merge branch 'maint-1.6.1' into maint
* maint-1.6.1:
  test-genrandom: Add newline to usage string
2009-04-24 22:58:31 -07:00
Junio C Hamano
cc13719451 Merge branch 'maint-1.6.0' into maint-1.6.1
* maint-1.6.0:
  test-genrandom: Add newline to usage string
2009-04-24 22:49:34 -07:00
Jeff King
a766829458 t7800: respect NO_PERL
Difftool is written in perl, so we don't build it if NO_PERL
is set.

Signed-off-by: Jeff King <peff@peff.net>
Signed-off-by: Junio C Hamano <gitster@pobox.com>
2009-04-24 09:24:35 -07:00
Johannes Sixt
cd294bc3f3 remote.c: do not trigger remote.<name>.<var> codepath for two-level names
If the config file contains a section like this:

    [remote]
            default = foo

(it should be '[remotes]') then commands like

    git status
    git checkout
    git branch -v

fail even though they are not obviously related to remotes. (These
commands write "ahead, behind" information and, therefore, access the
per-remote information).

Unknown configuration keys should be ignored, not trigger errors.

Signed-off-by: Johannes Sixt <j6t@kdbg.org>
Signed-off-by: Junio C Hamano <gitster@pobox.com>
2009-04-24 01:29:28 -07:00
Johannes Sixt
178b513eb7 builtin-help: silently tolerate unknown keys
If for some reason the config file contains a key without a subkey like

    [man]
        foo = bar

then even a plain

    git help

produces an error message. With this patch such an entry is ignored.

Additionally, the warning about unknown sub-keys is removed. It could
become annoying if new sub-keys are introduced in the future, and then
the configuration is read by an old version of git that does not know
about it.

Signed-off-by: Johannes Sixt <j6t@kdbg.org>
Signed-off-by: Junio C Hamano <gitster@pobox.com>
2009-04-24 01:29:13 -07:00
Alex Riesen
677fbff88f Explain seemingly pointless use of system in difftool
Portability reasons.

Signed-off-by: Alex Riesen <raa.lkml@gmail.com>
Signed-off-by: Junio C Hamano <gitster@pobox.com>
2009-04-24 01:20:35 -07:00
Junio C Hamano
5be3b17f09 Makefile: ignore perl/ subdirectory under NO_PERL
The install target still descends into perl subdirectory when NO_PERL is
requested.  Fix this.

Acked-by: Jeff King <peff@peff.net>
Signed-off-by: Junio C Hamano <gitster@pobox.com>
2009-04-23 12:53:32 -07:00
Stephen Boyd
66e35fcb79 config.txt: Make configuration paragraph more consistent
By renaming 'information' to 'configuration' we capture more clearly
what a configuration file holds.

Signed-off-by: Stephen Boyd <bebarino@gmail.com>
Signed-off-by: Junio C Hamano <gitster@pobox.com>
2009-04-23 12:53:32 -07:00
Stephen Boyd
b7ee2266fe config.txt: clarify sentences in the configuration and syntax sections
Signed-off-by: Stephen Boyd <bebarino@gmail.com>
Signed-off-by: Junio C Hamano <gitster@pobox.com>
2009-04-23 12:53:31 -07:00
Stephen Boyd
773002a78c config.txt: add missing 'the's and make words plural
Signed-off-by: Stephen Boyd <bebarino@gmail.com>
Signed-off-by: Junio C Hamano <gitster@pobox.com>
2009-04-23 12:53:31 -07:00
Stephen Boyd
50710ce49b git-format-patch.txt: general rewordings and cleanups
Clarify --no-binary description using some words from the original
commit 37c22a4b (add --no-binary, 2008-05-9). Cleanup --suffix
description. Add --thread style option to synopsis and reorganize it a
bit. Clarify renaming patches example and the configuration paragraph.

Signed-off-by: Stephen Boyd <bebarino@gmail.com>
Signed-off-by: Junio C Hamano <gitster@pobox.com>
2009-04-23 12:53:16 -07:00
Stephen Boyd
a123978771 git-show-branch.txt: cleanup example description
Add a missing quote and properly escape the ' character so docs don't
look odd. Add 'the' to make some sentences more gramatically correct.

Signed-off-by: Stephen Boyd <bebarino@gmail.com>
Signed-off-by: Junio C Hamano <gitster@pobox.com>
2009-04-23 04:21:22 -07:00
Stephen Boyd
fd1ff306b7 Documentation: use lowercase for shallow and deep threading
Even when a sentence is started with 'shallow' or 'deep' use the
lowercase version to maintain consistency.

Signed-off-by: Stephen Boyd <bebarino@gmail.com>
Signed-off-by: Junio C Hamano <gitster@pobox.com>
2009-04-23 04:20:34 -07:00
Stephen Boyd
48d3448dd5 config.txt: add missing format.{subjectprefix,cc,attach} variables
Signed-off-by: Stephen Boyd <bebarino@gmail.com>
Signed-off-by: Junio C Hamano <gitster@pobox.com>
2009-04-23 04:20:12 -07:00
Stephen Boyd
c2318228ab test-genrandom: Add newline to usage string
A minor fix to place the terminal input on a new line if test-genrandom
is run with no arguments.

Signed-off-by: Stephen Boyd <bebarino@gmail.com>
Signed-off-by: Junio C Hamano <gitster@pobox.com>
2009-04-23 01:29:00 -07:00
Junio C Hamano
ea0b767c1e Merge branch 'jc/maint-read-tree-multi'
* jc/maint-read-tree-multi:
  checkout branch: prime cache-tree fully
  read-tree -m A B: prime cache-tree from the switched-to tree
  Move prime_cache_tree() to cache-tree.c
  read-tree A B: do not corrupt cache-tree
2009-04-22 19:36:19 -07:00
Bill Pemberton
7613ea3595 Add parsing of elm aliases to git-send-email
elm stores a text file version of the aliases that is
<alias> = <comment> = <email address>

This adds the parsing of this file to git-send-email

Signed-off-by: Bill Pemberton <wfp5p@virginia.edu>
Signed-off-by: Junio C Hamano <gitster@pobox.com>
2009-04-22 19:10:41 -07:00
Dan Loewenherz
7bd93c1c62 Convert to use quiet option when available
A minor fix that eliminates usage of "2>/dev/null" when --quiet or
-q has already been implemented.

Signed-off-by: Dan Loewenherz <daniel.loewenherz@yale.edu>
Signed-off-by: Junio C Hamano <gitster@pobox.com>
2009-04-22 19:05:37 -07:00
Michael J Gruber
b18cc5a3b2 Fix more typos/spelling in comments
A few more fixes on top of the automatic spell checker generated ones.

Signed-off-by: Michael J Gruber <git@drmicha.warpmail.net>
Signed-off-by: Junio C Hamano <gitster@pobox.com>
2009-04-22 19:03:39 -07:00
Mike Ralphson
3ea3c215c0 Fix typos / spelling in comments
Signed-off-by: Mike Ralphson <mike@abacus.co.uk>
Signed-off-by: Junio C Hamano <gitster@pobox.com>
2009-04-22 19:02:12 -07:00
Wesley J. Landaker
bad542f0b1 Documentation: git-svn: fix a grammatical error without awkwardness
The way the sentence is currently written, there needs to be an "its",
but this leads to: "however the remote wildcard may be anywhere as long
as it's its own" which is awkward to read.

Instead, this patch fixes he grammar in a simpler way.

Signed-off-by: Wesley J. Landaker <wjl@icecavern.net>
Signed-off-by: Junio C Hamano <gitster@pobox.com>
2009-04-22 18:40:33 -07:00
Wesley J. Landaker
4ddef0e67d Documentation: git-svn: fix spurious bolding that mangles the output
Without this fix, the output looks like:

"Keep in mind that the  (asterisk) wildcard of the local ref (right of
the :) *must be the ..." -- with half the sentence spuriously bold.

This fixes the problem by simply escaping asciidoc syntax as suggested
by Jeff King <peff@peff.net>.

Signed-off-by: Wesley J. Landaker <wjl@icecavern.net>
Signed-off-by: Junio C Hamano <gitster@pobox.com>
2009-04-22 18:39:57 -07:00
Alex Riesen
e8d1180467 Wait for git diff to finish in git difftool
In ActivetState Perl, exec does not wait for the started program. This
breaks difftool tests and may cause unexpected behaviour: git difftool
has returned, but the rest of code (diff and possibly the interactive
program are still running in the background.

Acked-by: David Aguilar <davvid@gmail.com>
Signed-off-by: Junio C Hamano <gitster@pobox.com>
2009-04-22 18:39:21 -07:00
Allan Caffee
a6c1a3827c graph API: fix a bug in the rendering of octopus merges
An off by one error was causing octopus merges with 3 parents to not be
rendered correctly.  This regression was introduced by 427fc5.

Signed-off-by: Allan Caffee <allan.caffee@gmail.com>
Signed-off-by: Junio C Hamano <gitster@pobox.com>
2009-04-22 17:49:56 -07:00
Allan Caffee
36a31feae2 graph API: fix extra space during pre_commit_line state
An extra space is being inserted between the "commit" column and all of
the successive edges.  Remove this space.  This regression was
introduced by 427fc5b.

Signed-off-by: Allan Caffee <allan.caffee@gmail.com>
Signed-off-by: Junio C Hamano <gitster@pobox.com>
2009-04-22 17:48:42 -07:00
Allan Caffee
7b1d6269ee t4202-log: extend test coverage of graphing
Extend this test to cover the rendering of graphs with octopus merges
and pre_commit lines.

Signed-off-by: Allan Caffee <allan.caffee@gmail.com>
Signed-off-by: Junio C Hamano <gitster@pobox.com>
2009-04-22 17:48:22 -07:00
Junio C Hamano
8fbf879ed7 Revert "stat_tracking_info(): only count real commits"
This reverts commit 19de5d6913.
It produces a misleading output to decide if a merge can fast-forward.
2009-04-21 16:33:20 -07:00
Michael J Gruber
3a0483281a test-lib.sh: Help test_create_repo() find the templates dir
Currently, test_create_repo() expects that templates can be found below
`pwd`/.. This assumption fails when tests are run against a git
installed somewhere else or test_create_repo() is called from
subdirectiories (several tests do this).
Therefore, use $TEST_DIRECTORY as introduced in 2d84e9fb and expect
templates to be present in $TEST_DIRECTORY/.. which should be the root
dir of the git checkout.

Signed-off-by: Michael J Gruber <git@drmicha.warpmail.net>
Signed-off-by: Junio C Hamano <gitster@pobox.com>
2009-04-21 09:49:04 -07:00
Junio C Hamano
0be9bc0f0a Merge branch 'mk/maint-apply-swap'
* mk/maint-apply-swap:
  tests: make test-apply-criss-cross-rename more robust
  builtin-apply: keep information about files to be deleted
  tests: test applying criss-cross rename patch

Conflicts:
	t/t4130-apply-criss-cross-rename.sh
2009-04-21 00:16:09 -07:00
Junio C Hamano
062868cc00 Merge branch 'maint'
* maint:
  gitcvs-migration: Link to git-cvsimport documentation
  Fix off-by-one in read_tree_recursive
2009-04-21 00:00:40 -07:00
Markus Heidelberg
fe3420b616 grep: don't support "grep.color"-like config options
color.grep and color.grep.* is the official and documented way to
highlight grep matches. Comparable options like diff.color.* and
status.color.* exist for backward compatibility reasons only and are not
documented any more.

Signed-off-by: Markus Heidelberg <markus.heidelberg@web.de>
Signed-off-by: Junio C Hamano <gitster@pobox.com>
2009-04-20 22:55:56 -07:00
Mike Ralphson
680ebc0180 Documentation: fix typos / spelling mistakes
Signed-off-by: Mike Ralphson <mike@abacus.co.uk>
Signed-off-by: Junio C Hamano <gitster@pobox.com>
2009-04-20 15:56:07 -07:00
Mike Ralphson
7c0282bfb9 builtin-remote: fix typo in option description
Signed-off-by: Mike Ralphson <mike@abacus.co.uk>
Signed-off-by: Junio C Hamano <gitster@pobox.com>
2009-04-20 15:55:56 -07:00
Matthieu Moy
a162e78df0 clone: add test for push on an empty clone.
Commit 55f0566 (get_local_heads(): do not return random pointer if
there is no head, 2009-04-17) fixed a segfault for git push, this
patch adds a test-case to avoid future regressions.

Signed-off-by: Matthieu Moy <Matthieu.Moy@imag.fr>
Signed-off-by: Junio C Hamano <gitster@pobox.com>
2009-04-20 13:53:03 -07:00
Michał Kiedrowicz
f0583867e7 tests: make test-apply-criss-cross-rename more robust
I realized that this test does check if git-apply succeeds, but doesn't
tell if it applies patches correctly. So I added test_cmp to check it.

I also added a test which checks swapping three files.

Signed-off-by: Junio C Hamano <gitster@pobox.com>
2009-04-20 13:47:02 -07:00
Michał Kiedrowicz
e8141fcf54 builtin-apply: keep information about files to be deleted
Example correct diff generated by `diff -M -B' might look like this:

	diff --git a/file1 b/file2
	similarity index 100%
	rename from file1
	rename to file2
	diff --git a/file2 b/file1
	similarity index 100%
	rename from file2
	rename to file1

Information about removing `file2' comes after information about creation
of new `file2' (renamed from `file1'). Existing implementation isn't able to
apply such patch, because it has to know in advance which files will be
removed.

This patch populates fn_table with information about removal of files
before calling check_patch() for each patch to be applied.

Signed-off-by: Michał Kiedrowicz <michal.kiedrowicz@gmail.com>
Signed-off-by: Junio C Hamano <gitster@pobox.com>
2009-04-20 13:46:58 -07:00
Michał Kiedrowicz
1d49f0d1a1 tests: test applying criss-cross rename patch
Originally reported by Linus in $gmane/116198

Signed-off-by: Michał Kiedrowicz <michal.kiedrowicz@gmail.com>
Signed-off-by: Junio C Hamano <gitster@pobox.com>
2009-04-20 13:46:55 -07:00
Frank Lichtenheld
3ac3cfb8eb gitcvs-migration: Link to git-cvsimport documentation
Signed-off-by: Frank Lichtenheld <flichtenheld@astaro.com>
Signed-off-by: Junio C Hamano <gitster@pobox.com>
2009-04-20 13:45:02 -07:00
Johannes Schindelin
7183c09d11 Fix off-by-one in read_tree_recursive
Found by valgrind.

Signed-off-by: Johannes Schindelin <johannes.schindelin@gmx.de>
Signed-off-by: Junio C Hamano <gitster@pobox.com>
2009-04-20 13:44:14 -07:00
Johannes Sixt
34779c535c Windows: Skip fstat/lstat optimization in write_entry()
Commit e4c72923 (write_entry(): use fstat() instead of lstat() when file
is open, 2009-02-09) introduced an optimization of write_entry().
Unfortunately, we cannot take advantage of this optimization on Windows
because there is no guarantee that the time stamps are updated before the
file is closed:

  "The only guarantee about a file timestamp is that the file time is
   correctly reflected when the handle that makes the change is closed."

(http://msdn.microsoft.com/en-us/library/ms724290(VS.85).aspx)

The failure of this optimization on Windows can be observed most easily by
running a 'git checkout' that has to update several large files. In this
case, 'git checkout' will report modified files, but infact only the
timestamps were incorrectly recorded in the index, as can be verified by a
subsequent 'git diff', which shows no change.

Dmitry Potapov reports the same fix needs on Cygwin; this commit contains
his updates for that.

Signed-off-by: Johannes Sixt <j6t@kdbg.org>
Signed-off-by: Junio C Hamano <gitster@pobox.com>
2009-04-20 12:14:02 -07:00
Junio C Hamano
83ae209bf9 checkout branch: prime cache-tree fully
When switching to another branch, the earlier code relied on incremental
invalidation of cache-tree entries to degrade it.  While it is not wrong
per-se, we know that the resulting index must fully match the branch we
are switching to unless the -m (merge) option is used.

We should simply fully re-prime the cache-tree using the new tree object
in such a case.  And for safety, invalidate the cache-tree as a whole in
other cases.

Signed-off-by: Junio C Hamano <gitster@pobox.com>
2009-04-20 04:16:42 -07:00
Junio C Hamano
456156dc06 read-tree -m A B: prime cache-tree from the switched-to tree
When switching to a new branch with "read-tree -m A B", the resulting
index must match tree B and we can prime the cache tree with it.

Signed-off-by: Junio C Hamano <gitster@pobox.com>
2009-04-20 04:16:41 -07:00
Junio C Hamano
b9d37a5420 Move prime_cache_tree() to cache-tree.c
The interface to build cache-tree belongs there.

Signed-off-by: Junio C Hamano <gitster@pobox.com>
2009-04-20 04:16:41 -07:00
Junio C Hamano
8cc21ce78c read-tree A B: do not corrupt cache-tree
An earlier commit aab3b9a (read-tree A B C: do not create a bogus index
and do not segfault, 2009-03-12) resurrected the support for an obscure
(but useful) feature to read and overlay more than one tree into the index
without the -m (merge) option.  But the fix was not enough.

Exercising this feature exposes a longstanding bug in the code that primes
the cache-tree in the index from the tree that was read.  The intention
was that when we know that the index must exactly match the tree we just
read, we prime the entire cache-tree with it.

However, the logic to detect that case incorrectly triggered if you read
two trees without -m.  This resulted in a corrupted cache-tree, and
write-tree would have produced an incorrect tree object out of such an
index.

Signed-off-by: Junio C Hamano <gitster@pobox.com>
2009-04-20 04:16:40 -07:00
Johannes Sixt
6ac6f87818 Windows: Work around intermittent failures in mingw_rename
We have replaced rename() with a version that can rename a file to a
destination that already exists. Nevertheless, many users, the author
included, observe failures in the code that are not reproducible.

The theory is that the failures are due to some other process that happens
to have opened the destination file briefly at the wrong moment. (And there
is no way on Windows to delete or replace a file that is currently open.)
The most likely candidate for such a process is a virus scanner. The
failure is more often observed while there is heavy git activity (for
example while the test suite is running or during a rebase operation).

We work around the failure by retrying the rename operation if it failed
due to ERROR_ACCESS_DENIED. The retries are delayed a bit: The first only
by giving up the time slice, the next after the minimal scheduling
granularity, and if more retries are needed, then we wait some non-trivial
amount of time with exponential back-off.

Signed-off-by: Johannes Sixt <j6t@kdbg.org>
Signed-off-by: Junio C Hamano <gitster@pobox.com>
2009-04-20 03:42:53 -07:00
Holger Weiß
ccb4b53913 gitweb: Fix snapshots requested via PATH_INFO
Fix the detection of the requested snapshot format, which failed for
PATH_INFO URLs since the references to the hashes which describe the
supported snapshot formats weren't dereferenced appropriately.

Signed-off-by: Holger Weiß <holger@zedat.fu-berlin.de>
Acked-by: Jakub Narebski <jnareb@gmail.com>
Signed-off-by: Junio C Hamano <gitster@pobox.com>
2009-04-20 03:42:23 -07:00
Junio C Hamano
21590d5262 Merge branch 'mm/maint-add-p-quit'
* mm/maint-add-p-quit:
  git add -p: add missing "q" to patch prompt
2009-04-20 03:39:38 -07:00
Wincent Colaiuta
a2fc8d6536 git add -p: add missing "q" to patch prompt
Commit cbd3a01 added a new "q" subcommand to the "git add -p"
command loop, but forgot to add it to the prompt.

Signed-off-by: Wincent Colaiuta <win@wincent.com>
Signed-off-by: Junio C Hamano <gitster@pobox.com>
2009-04-20 03:38:44 -07:00
Junio C Hamano
66996ecc28 Sync with 1.6.2.4
Signed-off-by: Junio C Hamano <gitster@pobox.com>
2009-04-19 17:38:40 -07:00