Commit graph

28884 commits

Author SHA1 Message Date
Ralf Thielow 01b127cdc5 l10n: Add the German translation team and initialize de.po
Signed-off-by: Ralf Thielow <ralf.thielow@googlemail.com>
Signed-off-by: Jiang Xin <worldhello.net@gmail.com>
2012-04-28 08:25:48 +08:00
Junio C Hamano afd7bd2220 index-v4: document the entry format
Document the format so that others can learn from and build on top of
the series.

Signed-off-by: Junio C Hamano <gitster@pobox.com>
2012-04-27 16:03:31 -07:00
Junio C Hamano 9170c7ab28 unpack-trees: preserve the index file version of original
Otherwise "git checkout $other_branch" (or even "git checkout HEAD")
would end up writing the index out in the default format.

Signed-off-by: Junio C Hamano <gitster@pobox.com>
2012-04-27 16:03:29 -07:00
Junio C Hamano 62bc83349d The sixth batch of topics graduated to 'master'
Signed-off-by: Junio C Hamano <gitster@pobox.com>
2012-04-27 14:12:56 -07:00
Junio C Hamano 283097e9ed Merge branch 'jc/merge-reduce-parents-early'
Octopus merge strategy did not reduce heads that are recorded in the
final commit correctly.

By Junio C Hamano (4) and Michał Kiedrowicz (1)
* jc/merge-reduce-parents-early:
  fmt-merge-msg: discard needless merge parents
  builtin/merge.c: reduce parents early
  builtin/merge.c: collect other parents early
  builtin/merge.c: remove "remoteheads" global variable
  merge tests: octopus with redundant parents
2012-04-27 13:59:20 -07:00
Junio C Hamano 7b864abe0b Merge branch 'js/fast-import-test-9300'
By Johannes Sixt
* js/fast-import-test-9300:
  t9300-fast-import: avoid 'exit' in test_expect_success snippets
2012-04-27 13:59:04 -07:00
Junio C Hamano f5b121aef3 Merge branch 'rt/cherry-revert-conflict-summary'
In the older days, the header "Conflicts:" in "cherry-pick" and
"merge" was separated by a blank line from the list of paths that
follow for readability, but when "merge" was rewritten in C, we lost
it by mistake. Remove the newline from "cherry-pick" to make them
match again.

By Ralf Thielow
* rt/cherry-revert-conflict-summary:
  sequencer: remove additional blank line
2012-04-27 13:58:53 -07:00
Junio C Hamano 7a9bb265d6 Merge branch 'cb/maint-report-mount-point-correctly-in-setup'
The filesystem boundary was not correctly reported when .git directory
discovery stopped at a mount point.

By Clemens Buchacher
* cb/maint-report-mount-point-correctly-in-setup:
  properly keep track of current working directory
2012-04-27 13:58:43 -07:00
Junio C Hamano 0fe59d7686 Merge branch 'cb/cherry-pick-rev-path-confusion'
The command line parser choked "git cherry-pick $name" when $name can be
both revision name and a pathname, even though $name can never be a path
in the context of the command.

The issue the patch addresses is real, but the way it is implemented felt
unnecessarily invasive a bit.  It may be cleaner for this caller to add
the "--" to the end of the argv_array it passes to setup_revisions().

By Clemens Buchacher
* cb/cherry-pick-rev-path-confusion:
  cherry-pick: do not expect file arguments
2012-04-27 13:58:02 -07:00
Junio C Hamano 157a4767a5 Merge branch 'cb/http-multi-curl-auth'
Fixes http authentication breakage when we keep multiple HTTP requests in
flight using curl-multi.

By Jeff King (3) and Clemens Buchacher (1)
* cb/http-multi-curl-auth:
  http: use newer curl options for setting credentials
  http: clean up leak in init_curl_http_auth
  fix http auth with multiple curl handles
  http auth fails with multiple curl handles
2012-04-27 13:57:49 -07:00
Zbigniew Jędrzejewski-Szmek bafa16e53c t4052: work around shells unable to set COLUMNS to 1
Signed-off-by: Zbigniew Jędrzejewski-Szmek <zbyszek@in.waw.pl>
Signed-off-by: Junio C Hamano <gitster@pobox.com>
2012-04-27 09:28:10 -07:00
Junio C Hamano d4958d30f8 Merge branch 'zj/mksh-columns-breakage' into lp/diffstat-with-graph
By Zbigniew Jędrzejewski-Szmek
* zj/mksh-columns-breakage:
  test-lib: skip test with COLUMNS=1 under mksh
2012-04-27 09:28:00 -07:00
Zbigniew Jędrzejewski-Szmek b082687cba test-lib: skip test with COLUMNS=1 under mksh
mksh does not allow $COLUMNS to be set below 12.  mksh(1) says that
$COLUMNS is "always set, defaults to 80, unless the value as reported
by stty(1) is non-zero and sane enough". This applies also to setting
it directly for one command:

    $ COLUMNS=10 python -c 'import os; print os.environ["COLUMNS"]'
    98

Add a test prerequisite by checking if we can set COLUMNS=1, to allow
us to skip tests that needs it.

Signed-off-by: Zbigniew Jędrzejewski-Szmek <zbyszek@in.waw.pl>
Signed-off-by: Junio C Hamano <gitster@pobox.com>
2012-04-27 09:26:37 -07:00
Johannes Sixt 46e3581581 t5570: fix forwarding of git-daemon messages via cat
The shell function that starts git-daemon wants to read the first line of
the daemon's stderr to ensure that it started correctly. Subsequent daemon
errors should be redirected to fd 4 (which is the terminal in verbose mode
or /dev/null in quiet mode). To that end the shell script used 'read' to
get the first line of output, and then 'cat &' to forward everything else
in a background process.

The problem is, that 'cat >&4 &' does not produce any output because the
shell redirects a background process's stdin to /dev/null. To have this
command invocation do anything useful, we have to redirect its stdin
explicitly (which overrides the /dev/null redirection).

The shell function connects the daemon's stderr to its consumers via a
FIFO. We cannot just do this:

   read line <git_daemon_output
   cat <git_daemon_output >&4 &

because after the first redirection the pipe is closed and the daemon
could receive SIGPIPE if it writes at the wrong moment. Therefore, we open
the readable end of the FIFO only once on fd 7 in the shell and dup from
there to the stdin of the two consumers.

Signed-off-by: Johannes Sixt <j6t@kdbg.org>
Acked-by: Jeff King <peff@peff.net>
Signed-off-by: Junio C Hamano <gitster@pobox.com>
2012-04-27 08:01:33 -07:00
Matthijs Kooijman 082afee621 git-svn: use platform specific auth providers
On Linux, this makes authentication using passwords from gnome-keyring
and kwallet work (only the former was tested). On Mac OS X, this allows
using the OS X Keychain.

Signed-off-by: Matthijs Kooijman <matthijs@stdin.nl>
Acked-by: Eric Wong <normalperson@yhbt.net>
2012-04-27 08:28:54 +00:00
Jeff King 6cf378f0cb docs: stop using asciidoc no-inline-literal
In asciidoc 7, backticks like `foo` produced a typographic
effect, but did not otherwise affect the syntax. In asciidoc
8, backticks introduce an "inline literal" inside which markup
is not interpreted. To keep compatibility with existing
documents, asciidoc 8 has a "no-inline-literal" attribute to
keep the old behavior. We enabled this so that the
documentation could be built on either version.

It has been several years now, and asciidoc 7 is no longer
in wide use. We can now decide whether or not we want
inline literals on their own merits, which are:

  1. The source is much easier to read when the literal
     contains punctuation. You can use `master~1` instead
     of `master{tilde}1`.

  2. They are less error-prone. Because of point (1), we
     tend to make mistakes and forget the extra layer of
     quoting.

This patch removes the no-inline-literal attribute from the
Makefile and converts every use of backticks in the
documentation to an inline literal (they must be cleaned up,
or the example above would literally show "{tilde}" in the
output).

Problematic sites were found by grepping for '`.*[{\\]' and
examined and fixed manually. The results were then verified
by comparing the output of "html2text" on the set of
generated html pages. Doing so revealed that in addition to
making the source more readable, this patch fixes several
formatting bugs:

  - HTML rendering used the ellipsis character instead of
    literal "..." in code examples (like "git log A...B")

  - some code examples used the right-arrow character
    instead of '->' because they failed to quote

  - api-config.txt did not quote tilde, and the resulting
    HTML contained a bogus snippet like:

      <tt><sub></tt> foo <tt></sub>bar</tt>

    which caused some parsers to choke and omit whole
    sections of the page.

  - git-commit.txt confused ``foo`` (backticks inside a
    literal) with ``foo'' (matched double-quotes)

  - mentions of `A U Thor <author@example.com>` used to
    erroneously auto-generate a mailto footnote for
    author@example.com

  - the description of --word-diff=plain incorrectly showed
    the output as "[-removed-] and {added}", not "{+added+}".

  - using "prime" notation like:

      commit `C` and its replacement `C'`

    confused asciidoc into thinking that everything between
    the first backtick and the final apostrophe were meant
    to be inside matched quotes

  - asciidoc got confused by the escaping of some of our
    asterisks. In particular,

      `credential.\*` and `credential.<url>.\*`

    properly escaped the asterisk in the first case, but
    literally passed through the backslash in the second
    case.

Signed-off-by: Jeff King <peff@peff.net>
Signed-off-by: Junio C Hamano <gitster@pobox.com>
2012-04-26 13:19:06 -07:00
Kacper Kornet 0ebe7827b6 gitweb: Option to not display information about owner
In some setups the repository owner is not a well defined concept
and administrator can prefer it to be not shown. This commit add
and an option that enable to reach this effect.

Signed-off-by: Kacper Kornet <draenog@pld-linux.org>
Signed-off-by: Junio C Hamano <gitster@pobox.com>
2012-04-26 11:24:40 -07:00
Junio C Hamano 010b260e6f Update draft release notes to 1.7.11
A handful of topics have been merged to maintenance releases, and
the first half of 6th batch graduates to 'master'.

Signed-off-by: Junio C Hamano <gitster@pobox.com>
2012-04-26 11:04:41 -07:00
Junio C Hamano cd58b71e3a Merge branch 'rl/maint-stash-i18n-save-error'
The i18n of error message "git stash save" was not properly done.

By Ross Lagerwall
* rl/maint-stash-i18n-save-error:
  stash: use eval_gettextln correctly
2012-04-26 10:59:08 -07:00
Junio C Hamano 8a90ddd705 Merge branch 'mb/fetch-call-a-non-branch-a-ref'
The report from "git fetch" said "new branch" even for a non branch
ref.

By Marc Branchaud
* mb/fetch-call-a-non-branch-a-ref:
  fetch: describe new refs based on where it came from
  fetch: Give remote_ref to update_local_ref() as well
2012-04-26 10:57:44 -07:00
Junio C Hamano 653787aea5 Merge branch 'jm/maint-strncpy-diff-no-index'
The "diff --no-index" codepath used limited-length buffers,
risking pathnames getting truncated.  Update it to use the
strbuf API.

By Jim Meyering (1) and Junio C Hamano (1)
* jm/maint-strncpy-diff-no-index:
  diff --no-index: use strbuf for temporary pathnames
  diff: avoid stack-buffer-read-overrun for very long name
2012-04-26 10:56:19 -07:00
Junio C Hamano 210a75c38c Merge bundle error message fix in
Signed-off-by: Junio C Hamano <gitster@pobox.com>
2012-04-26 10:55:08 -07:00
Junio C Hamano 868d662399 Start preparing for 1.7.10.1
Signed-off-by: Junio C Hamano <gitster@pobox.com>
2012-04-26 10:53:55 -07:00
Junio C Hamano 8c1ba21314 Merge branch 'jk/run-command-eacces' into maint
When PATH contains an unreadable directory, alias expansion code did
not kick in, and failed with an error that said "git-subcmd" was not
found.

By Jeff King (1) and Ramsay Jones (1)
* jk/run-command-eacces:
  run-command: treat inaccessible directories as ENOENT
  compat/mingw.[ch]: Change return type of exec functions to int
2012-04-26 10:51:41 -07:00
Junio C Hamano 731673b15e Merge branch 'jc/push-upstream-sanity' into maint
The 'push to upstream' implementation was broken in some corner
cases. "git push $there" without refspec, when the current branch is
set to push to a remote different from $there, used to push to $there
using the upstream information to a remote unreleated to $there.

* jc/push-upstream-sanity:
  push: error out when the "upstream" semantics does not make sense
2012-04-26 10:51:18 -07:00
Junio C Hamano 5d65c2ee88 Merge branch 'jc/maint-clean-nested-worktree-in-subdir' into maint
"git clean -d -f" (not "-d -f -f") is supposed to protect nested
working trees of independent git repositories that exist in the
current project working tree from getting removed, but the protection
applied only to such working trees that are at the top-level of the
current project by mistake.

* jc/maint-clean-nested-worktree-in-subdir:
  clean: preserve nested git worktree in subdirectories
2012-04-26 10:35:42 -07:00
Junio C Hamano 3f231e235f Merge branch 'jk/diff-no-rename-empty' into maint
Rename detection logic used to match two empty files as renames during
merge-recursive, leading unnatural mismerges.

By Jeff King
* jk/diff-no-rename-empty:
  merge-recursive: don't detect renames of empty files
  teach diffcore-rename to optionally ignore empty content
  make is_empty_blob_sha1 available everywhere
  drop casts from users EMPTY_TREE_SHA1_BIN
2012-04-26 10:35:33 -07:00
Junio C Hamano 10a20b43c3 Merge branch 'rs/combine-diff-zero-context-at-the-beginning' into maint
An age-old corner case bug in combine diff (only triggered with -U0
and the hunk at the beginning of the file needs to be shown) has been
fixed.

By René Scharfe
* rs/combine-diff-zero-context-at-the-beginning:
  combine-diff: fix loop index underflow
2012-04-26 10:35:26 -07:00
Junio C Hamano b4bd6bb356 Merge branch 'jc/commit-unedited-template' into maint
When "git commit --template F" errors out because the user did not
touch the message, it claimed that it aborts due to "empty message",
which was utterly wrong.

By Junio C Hamano (4) and Adam Monsen (1)
* jc/commit-unedited-template:
  Documentation/git-commit: rephrase the "initial-ness" of templates
  git-commit.txt: clarify -t requires editing message
  commit: rephrase the error when user did not touch templated log message
  commit: do not trigger bogus "has templated message edited" check
  t7501: test the right kind of breakage
2012-04-26 10:35:15 -07:00
Junio C Hamano 4579a0547c Merge branch 'jk/add-p-skip-conflicts' into maint
"git add -p" is not designed to deal with unmerged paths but did
not exclude them and tried to apply funny patches only to fail.

By Jeff King
* jk/add-p-skip-conflicts:
  add--interactive: ignore unmerged entries in patch mode
2012-04-26 10:35:07 -07:00
Junio C Hamano 695db86ad7 Merge branch 'jc/commit-hook-authorship' into maint
"git commit --author=$name" did not tell the name that was being
recorded in the resulting commit to hooks, even though it does do so
when the end user overrode the authorship via the "GIT_AUTHOR_NAME"
environment variable.

* jc/commit-hook-authorship:
  commit: pass author/committer info to hooks
  t7503: does pre-commit-hook learn authorship?
  ident.c: add split_ident_line() to parse formatted ident line
2012-04-26 10:34:53 -07:00
Junio C Hamano 7b90ed59fa Merge branch 'tr/maint-word-diff-regex-sticky' into maint
The regexp configured with diff.wordregex was incorrectly reused
across files.

By Thomas Rast (2) and Johannes Sixt (1)
* tr/maint-word-diff-regex-sticky:
  diff: tweak a _copy_ of diff_options with word-diff
  diff: refactor the word-diff setup from builtin_diff_cmd
  t4034: diff.*.wordregex should not be "sticky" in --word-diff
2012-04-26 10:34:44 -07:00
Junio C Hamano 058432635b Merge branch 'jh/notes-merge-in-git-dir-worktree' into maint
Running "notes merge --commit" failed to perform correctly when run
from any directory inside $GIT_DIR/.  When "notes merge" stops with
conflicts, $GIT_DIR/NOTES_MERGE_WORKTREE is the place a user edits
to resolve it.

By Johan Herland (3) and Junio C Hamano (1)
* jh/notes-merge-in-git-dir-worktree:
  notes-merge: Don't remove .git/NOTES_MERGE_WORKTREE; it may be the user's cwd
  notes-merge: use opendir/readdir instead of using read_directory()
  t3310: illustrate failure to "notes merge --commit" inside $GIT_DIR/
  remove_dir_recursively(): Add flag for skipping removal of toplevel dir
2012-04-26 10:32:55 -07:00
Junio C Hamano 50bf38ac23 Sync with 1.7.9.7 2012-04-26 10:31:43 -07:00
Junio C Hamano d0f1ea6003 Git 1.7.9.7
Signed-off-by: Junio C Hamano <gitster@pobox.com>
2012-04-26 10:23:15 -07:00
Junio C Hamano b2bab5b338 Sync with 1.7.8.6 2012-04-26 10:22:20 -07:00
Junio C Hamano d9f5ef7a4a Git 1.7.8.6
Signed-off-by: Junio C Hamano <gitster@pobox.com>
2012-04-26 10:14:45 -07:00
Junio C Hamano aba5f57c8f Sync with 1.7.7.7 2012-04-26 09:52:33 -07:00
Junio C Hamano 8258858493 Git 1.7.7.7
Signed-off-by: Junio C Hamano <gitster@pobox.com>
2012-04-26 09:41:52 -07:00
Junio C Hamano 875b91b35d diff --no-index: use strbuf for temporary pathnames
Instead of using limited-length buffers and risking of pathname
truncation, we should be taking advantage of strbuf API nowadays.

Signed-off-by: Junio C Hamano <gitster@pobox.com>
2012-04-26 09:13:29 -07:00
Jonathan Nieder 97afde15f5 bundle: remove stray single-quote from error message
After running rev-list --boundary to retrieve the list of boundary
commits, "git bundle create" runs its own revision walk.  If in this
stage git encounters an unfamiliar option, it writes a message with an
unbalanced quotation mark:

	error: unrecognized argument: --foo'

Drop the stray quote to match the "unrecognized argument: %s" message
used elsewhere and save translators some work.

This is mostly a futureproofing measure: for now, the "rev-list
--boundary" command catches most strange arguments on its own and the
above message is not seen unless you try something esoteric like "git
bundle create test.bundle --header HEAD".

Reported-by: Junio C Hamano <gitster@pobox.com>
Signed-off-by: Jonathan Nieder <jrnieder@gmail.com>
Signed-off-by: Junio C Hamano <gitster@pobox.com>
2012-04-26 08:08:07 -07:00
Jeff King 94a35b1aea config: reject bogus section names for --rename-section
You can feed junk to "git config --rename-section", which
will result in a config file that git will not even parse
(so you cannot fix it with git-config). We already have
syntactic sanity checks when setting a variable; let's do
the same for section names.

Signed-off-by: Jeff King <peff@peff.net>
Signed-off-by: Junio C Hamano <gitster@pobox.com>
2012-04-25 21:19:06 -07:00
Kacper Kornet 5710be46d8 gitweb: Option to omit column with time of the last change
Generating information about last change for a large number of git
repositories can be very time consuming. This commit add an option to
omit 'Last Change' column when presenting the list of repositories.

Signed-off-by: Kacper Kornet <draenog@pld-linux.org>
Signed-off-by: Junio C Hamano <gitster@pobox.com>
2012-04-25 16:42:34 -07:00
Kacper Kornet 75e0dffef0 gitweb: Don't set owner if got empty value from projects.list
Prevent setting owner to an empty value if it is not specified in
projects.list file. Otherwise it stops retrieving information about the
owner from other files.

Signed-off-by: Kacper Kornet <draenog@pld-linux.org>
Signed-off-by: Junio C Hamano <gitster@pobox.com>
2012-04-25 16:41:37 -07:00
René Scharfe a81a7fbc1a commit: remove commit_list_reverse()
The function commit_list_reverse() is not used anymore; delete it.

Signed-off-by: Rene Scharfe <rene.scharfe@lsrfire.ath.cx>
Signed-off-by: Junio C Hamano <gitster@pobox.com>
2012-04-25 14:51:21 -07:00
René Scharfe 2e7da8e9f4 revision: append to list instead of insert and reverse
By using commit_list_insert(), we added new items to the top of the
list and, since this is not the order we want, reversed it afterwards.
Simplify this process by adding new items at the bottom instead,
getting rid of the reversal step.

Signed-off-by: Rene Scharfe <rene.scharfe@lsrfire.ath.cx>
Signed-off-by: Junio C Hamano <gitster@pobox.com>
2012-04-25 14:51:19 -07:00
René Scharfe 89b5f1d9c5 sequencer: export commit_list_append()
This function can be used in other parts of git.  Give it a new home
in commit.c.

Signed-off-by: Rene Scharfe <rene.scharfe@lsrfire.ath.cx>
Signed-off-by: Junio C Hamano <gitster@pobox.com>
2012-04-25 14:51:17 -07:00
Nguyễn Thái Ngọc Duy 4470ef9497 help: replace underlining "help -a" headers using hyphens with a blank line
We used to underline a header text, like this:

    This is a header
    ----------------
    content...

But calculating text length so that the dashes align with the text
could get complicated because the text could be in any charset in
translated Git.

There is no point to use this pseudo underline; simply a blank
line would do and it even makes it easier to read:

    This is a header

    content...

While at it, give translators more context to translate, e.g.
e.g.  "git commands available..." instead of "%s available..."

Signed-off-by: Nguyễn Thái Ngọc Duy <pclouds@gmail.com>
Signed-off-by: Junio C Hamano <gitster@pobox.com>
2012-04-25 10:30:11 -07:00
Luke Diamand 00855b656b git p4: fix unit tests
The submit-edit tests relied on P4EDITOR being unset. Set it
explicitly to an empty string.

Signed-off-by: Luke Diamand <luke@diamand.org>
Signed-off-by: Junio C Hamano <gitster@pobox.com>
2012-04-25 08:19:26 -07:00
Neil Horman 90e1818f9a git-rebase: add keep_empty flag
Add a command line switch to git-rebase to allow a user the ability to specify
that they want to keep any commits in a series that are empty.

When git-rebase's type is am, then this option will automatically keep any
commit that has a tree object identical to its parent.

This patch changes the default behavior of interactive rebases as well.  With
this patch, git-rebase -i will produce a revision set passed to
git-revision-editor, in which empty commits are commented out.  Empty commits
may be kept manually by uncommenting them.  If the new --keep-empty option is
used in an interactive rebase the empty commits will automatically all be
uncommented in the editor.

Signed-off-by: Neil Horman <nhorman@tuxdriver.com>
Signed-off-by: Junio C Hamano <gitster@pobox.com>
2012-04-24 15:24:14 -07:00