summaryrefslogtreecommitdiff
AgeCommit message (Collapse)AuthorFilesLines
2013-03-05git-completion.zsh: define __gitcomp_file compatibility functionLibravatar Matthieu Moy1-0/+9
Commit fea16b47b60 (Fri Jan 11 19:48:43 2013, Manlio Perillo, git-completion.bash: add support for path completion), introduced a new __gitcomp_file function that uses the bash builtin "compgen". The function was redefined for ZSH in the deprecated section of git-completion.bash, but not in the new git-completion.zsh script. As a result, users of git-completion.zsh trying to complete "git add fo<tab>" get an error: git add fo__gitcomp_file:8: command not found: compgen This patch adds the redefinition and removes the error. Signed-off-by: Matthieu Moy <Matthieu.Moy@imag.fr> Signed-off-by: Junio C Hamano <gitster@pobox.com>
2013-01-11git-completion.bash: add support for path completionLibravatar Manlio Perillo1-15/+240
The git-completion.bash script did not implemented full, git aware, support to complete paths, for git commands that operate on files within the current working directory or the index. As an example: git add <TAB> will suggest all files in the current working directory, including ignored files and files that have not been modified. Support path completion, for git commands where the non-option arguments always refer to paths within the current working directory or the index, as follows: * the path completion for the "git rm" and "git ls-files" commands will suggest all cached files. * the path completion for the "git add" command will suggest all untracked and modified files. Ignored files are excluded. * the path completion for the "git clean" command will suggest all untracked files. Ignored files are excluded. * the path completion for the "git mv" command will suggest all cached files when expanding the first argument, and all untracked and cached files for subsequent arguments. In the latter case, empty directories are included and ignored files are excluded. * the path completion for the "git commit" command will suggest all files that have been modified from the HEAD, if HEAD exists, otherwise it will suggest all cached files. For all affected commands, completion will always stop at directory boundary. Only standard ignored files are excluded, using the --exclude-standard option of the ls-files command. When using a recent Bash version, Git path completion will be the same as builtin file completion, e.g. git add contrib/ will suggest relative file names. Signed-off-by: Manlio Perillo <manlio.perillo@gmail.com> Signed-off-by: Junio C Hamano <gitster@pobox.com>
2012-12-15Git 1.8.1-rc2Libravatar Junio C Hamano2-1/+7
Signed-off-by: Junio C Hamano <gitster@pobox.com>
2012-12-15Renumber list in api-command.txtLibravatar Thomas Ackermann1-7/+7
Start list with 1 instead of 0; ASCIIDOC will renumber it anyway. Signed-off-by: Thomas Ackermann <th.acker@arcor.de> Signed-off-by: Junio C Hamano <gitster@pobox.com>
2012-12-15remote-testsvn: fix unitialized variableLibravatar Jeff King1-1/+3
In remote-test-svn, there is a parse_rev_note function to parse lines of the form "Revision-number" from notes. If it finds such a line and parses it, it returns 0, copying the value into a "struct rev_note". If it finds an entry that is garbled or out of range, it returns -1 to signal an error. However, if it does not find any "Revision-number" line at all, it returns success but does not put anything into the rev_note. So upon a successful return, the rev_note may or may not be initialized, and the caller has no way of knowing. gcc does not usually catch the use of the unitialized variable because the conditional assignment happens in a separate function from the point of use. However, when compiling with -O3, gcc will inline parse_rev_note and notice the problem. We can fix it by returning "-1" when no note is found (so on a zero return, we always found a valid value). Signed-off-by: Jeff King <peff@peff.net> Signed-off-by: Junio C Hamano <gitster@pobox.com>
2012-12-13Merge branch 'maint'Libravatar Junio C Hamano2-3/+4
2012-12-13Fix sizeof usage in get_permutationsLibravatar Matthew Daley1-3/+3
Currently it gets the size of an otherwise unrelated, unused variable instead of the expected struct size. Signed-off-by: Matthew Daley <mattjd@gmail.com> Signed-off-by: Junio C Hamano <gitster@pobox.com>
2012-12-13Merge branch 'mh/doc-remote-helpers'Libravatar Junio C Hamano1-105/+140
* mh/doc-remote-helpers: git-remote-helpers.txt: clarify options & ref list attributes git-remote-helpers.txt: clarify command <-> capability correspondences git-remote-helpers.txt: rearrange description of capabilities git-remote-helpers.txt: minor grammar fix git-remote-helpers.txt: document missing capabilities git-remote-helpers.txt: document invocation before input format
2012-12-13git.txt: add missing info about --git-dir command-line optionLibravatar Manlio Perillo1-0/+1
Unlike other environment variables (e.g. GIT_WORK_TREE, GIT_NAMESPACE), the Documentation/git.txt file did not mention that the GIT_DIR environment variable can also be set using the --git-dir command line option. Signed-off-by: Manlio Perillo <manlio.perillo@gmail.com> Signed-off-by: Junio C Hamano <gitster@pobox.com>
2012-12-12git(1): show link to contributor summary pageLibravatar Junio C Hamano1-1/+4
We earlier removed a link to list of contributors that pointed to a defunct page; let's use a working one from Ohloh.net to replace it instead. Signed-off-by: Junio C Hamano <gitster@pobox.com>
2012-12-12Merge branch 'so/prompt-command'Libravatar Junio C Hamano1-5/+11
* so/prompt-command: git-prompt.sh: update PROMPT_COMMAND documentation
2012-12-12git-prompt.sh: update PROMPT_COMMAND documentationLibravatar Junio C Hamano1-5/+11
The description of __git_ps1 function operating in two-arg mode was not very clear. It said "set PROMPT_COMMAND=__git_ps1" which is not the right usage for this mode, followed by "To customize the prompt, do this", giving a false impression that those who do not want to customize it can get away with no-arg form, which was incorrect. Make it clear that this mode always takes two arguments, pre and post, with an example. The straight-forward one should be listed as the primary usage, and the confusing one should be an alternate for advanced users. Swap the order of these two. Acked-by: Simon Oosthoek <s.oosthoek@xs4all.nl> Signed-off-by: Junio C Hamano <gitster@pobox.com>
2012-12-11Add file completion to tcsh git completion.Libravatar Marc Khouzam1-15/+54
For bash completion, the option '-o bashdefault' is used to indicate that when no other choices are available, file completion should be performed. Since this option is not available in tcsh, no file completion is ever performed. Therefore, commands like 'git add ', 'git send-email ', etc, require the user to manually type out the file name. This can be quite annoying. To improve the user experience we try to simulate file completion directly in this script (although not perfectly). The known issues with the file completion simulation are: - Possible completions are shown with their directory prefix. - Completions containing shell variables are not handled. - Completions with ~ as the first character are not handled. Signed-off-by: Marc Khouzam <marc.khouzam@ericsson.com> Signed-off-by: Junio C Hamano <gitster@pobox.com>
2012-12-11Merge branch 'ef/mingw-rmdir'Libravatar Junio C Hamano1-1/+3
MinGW has a workaround when rmdir unnecessarily fails to retry with a prompt, but the logic was kicking in when the rmdir failed with ENOTEMPTY, i.e. was expected to fail and there is no point retrying. * ef/mingw-rmdir: mingw_rmdir: do not prompt for retry when non-empty
2012-12-11Merge branch 'ef/mingw-tty-getpass'Libravatar Junio C Hamano3-56/+169
Update getpass() emulation for MinGW. * ef/mingw-tty-getpass: mingw: get rid of getpass implementation mingw: reuse tty-version of git_terminal_prompt compat/terminal: separate input and output handles compat/terminal: factor out echo-disabling mingw: make fgetc raise SIGINT if apropriate mingw: correct exit-code for SIGALRM's SIG_DFL
2012-12-11Merge branch 'maint'Libravatar Junio C Hamano1-1/+10
* maint: git-prompt: Document GIT_PS1_DESCRIBE_STYLE
2012-12-11git-prompt: Document GIT_PS1_DESCRIBE_STYLELibravatar Anders Kaseorg1-0/+9
GIT_PS1_DESCRIBE_STYLE was introduced in v1.6.3.2~35. Document it in the header comments. Signed-off-by: Anders Kaseorg <andersk@mit.edu> Signed-off-by: Junio C Hamano <gitster@pobox.com>
2012-12-10Sync with 1.8.0.2Libravatar Junio C Hamano2-4/+4
* maint: Git 1.8.0.2 Documentation/git-stash.txt: add a missing verb git(1): remove a defunct link to "list of authors" Signed-off-by: Junio C Hamano <gitster@pobox.com>
2012-12-10Git 1.8.0.2Libravatar Junio C Hamano2-2/+3
Signed-off-by: Junio C Hamano <gitster@pobox.com>
2012-12-10Makefile: whitespace style fixes in macro definitionsLibravatar Stefano Lattarini3-30/+30
Consistently use a single space before and after the "=" (or ":=", "+=", etc.) in assignments to make macros. Granted, this was not a big deal, but I did find the needless inconsistency quite distracting. Signed-off-by: Stefano Lattarini <stefano.lattarini@gmail.com> Signed-off-by: Junio C Hamano <gitster@pobox.com>
2012-12-10mingw_rmdir: do not prompt for retry when non-emptyLibravatar Erik Faye-Lund1-1/+3
in ab1a11be ("mingw_rmdir: set errno=ENOTEMPTY when appropriate"), a check was added to prevent us from retrying to delete a directory that is both in use and non-empty. However, this logic was slightly flawed; since we didn't return immediately, we end up falling out of the retry-loop, but right into the prompting-loop. Fix this by setting errno, and guarding the prompting-loop with an errno-check. Signed-off-by: Erik Faye-Lund <kusmabite@gmail.com> Signed-off-by: Junio C Hamano <gitster@pobox.com>
2012-12-10Documentation/git-stash.txt: add a missing verbLibravatar Sébastien Loriot1-1/+1
Signed-off-by: Sébastien Loriot <sloriot.ml@gmail.com> Signed-off-by: Junio C Hamano <gitster@pobox.com>
2012-12-09git(1): remove a defunct link to "list of authors"Libravatar Junio C Hamano1-2/+1
The linked page has not been showing the promised "more complete list" for more than 6 months by now, and nobody has resurrected the list there nor elsewhere since then. Signed-off-by: Junio C Hamano <gitster@pobox.com>
2012-12-07Git 1.8.1-rc1Libravatar Junio C Hamano2-23/+5
Signed-off-by: Junio C Hamano <gitster@pobox.com>
2012-12-07Documentation/diff-config: work around AsciiDoc misfortuneLibravatar Junio C Hamano1-2/+2
The line that happens to begin with indent followed by "3. " was interpreted as if it was an enumerated list; just wrap the lines differently to work it around for now. Signed-off-by: Junio C Hamano <gitster@pobox.com>
2012-12-07Merge branch 'maint'Libravatar Junio C Hamano1-0/+19
* maint: Update draft release notes to 1.8.0.2
2012-12-07Update draft release notes to 1.8.0.2Libravatar Junio C Hamano1-0/+19
Signed-off-by: Junio C Hamano <gitster@pobox.com>
2012-12-07Merge branch 'jc/doc-push-satellite' into maintLibravatar Junio C Hamano1-2/+14
* jc/doc-push-satellite: Documentation/git-push.txt: clarify the "push from satellite" workflow
2012-12-07Merge branch 'jc/same-encoding' into maintLibravatar Junio C Hamano6-4/+13
Various codepaths checked if two encoding names are the same using ad-hoc code and some of them ended up asking iconv() to convert between "utf8" and "UTF-8". The former is not a valid way to spell the encoding name, but often people use it by mistake, and we equated them in some but not all codepaths. Introduce a new helper function to make these codepaths consistent. * jc/same-encoding: reencode_string(): introduce and use same_encoding()
2012-12-07Merge branch 'lt/diff-stat-show-0-lines' into maintLibravatar Junio C Hamano4-58/+110
"git diff --stat" miscounted the total number of changed lines when binary files were involved and hidden beyond --stat-count. It also miscounted the total number of changed files when there were unmerged paths. * lt/diff-stat-show-0-lines: t4049: refocus tests diff --shortstat: do not count "unmerged" entries diff --stat: do not count "unmerged" entries diff --stat: move the "total count" logic to the last loop diff --stat: use "file" temporary variable to refer to data->files[i] diff --stat: status of unmodified pair in diff-q is not zero test: add failing tests for "diff --stat" to t4049 Fix "git diff --stat" for interesting - but empty - file changes
2012-12-07git-remote-helpers.txt: clarify options & ref list attributesLibravatar Max Horn1-5/+12
The documentation was misleading in that it gave the impression that 'for-push' could be used as a ref attribute in the output of the 'list' command. That is wrong. Also, explicitly point out the connection between the commands 'list' and 'options' on the one hand, and the sections 'REF LIST ATTRIBUTES' and 'OPTIONS' on the other hand. Signed-off-by: Max Horn <max@quendi.de> Acked-by: Sverre Rabbelier <srabbelier@gmail.com> Signed-off-by: Junio C Hamano <gitster@pobox.com>
2012-12-07git-remote-helpers.txt: clarify command <-> capability correspondencesLibravatar Max Horn1-5/+16
In particular, document 'list for-push' separately from 'list', as the former needs only be supported for the push/export capabilities, and the latter only for fetch/import. Indeed, a hypothetically 'push-only' helper would only need to support the former, not the latter. Signed-off-by: Max Horn <max@quendi.de> Acked-by: Sverre Rabbelier <srabbelier@gmail.com> Signed-off-by: Junio C Hamano <gitster@pobox.com>
2012-12-07git-remote-helpers.txt: rearrange description of capabilitiesLibravatar Max Horn1-78/+56
This also remove some duplication in the descriptions (e.g. refspec was explained twice with similar level of detail). Signed-off-by: Max Horn <max@quendi.de> Acked-by: Sverre Rabbelier <srabbelier@gmail.com> Signed-off-by: Junio C Hamano <gitster@pobox.com>
2012-12-07git-remote-helpers.txt: minor grammar fixLibravatar Max Horn1-3/+3
Signed-off-by: Max Horn <max@quendi.de> Acked-by: Sverre Rabbelier <srabbelier@gmail.com> Signed-off-by: Junio C Hamano <gitster@pobox.com>
2012-12-07git-remote-helpers.txt: document missing capabilitiesLibravatar Max Horn1-3/+42
Specifically, document the 'export' and '(im|ex)port-marks' capabilities as well as the export command, which were undocumented (but in active use). Signed-off-by: Max Horn <max@quendi.de> Acked-by: Sverre Rabbelier <srabbelier@gmail.com> Signed-off-by: Junio C Hamano <gitster@pobox.com>
2012-12-07git-remote-helpers.txt: document invocation before input formatLibravatar Max Horn1-31/+31
In the distant past, the order things were documented was 'Invocation', 'Commands', 'Capabilities', ... Then it was decided that before giving a list of Commands, there should be an overall description of the 'Input format', which was a wise decision. However, this description was put as the very first thing, with the rationale that any implementor would want to know that first. However, it seems an implementor would actually first need to know how the remote helper will be invoked, so moving 'Invocation' to the front again seems logical. Moreover, we now don't switch from discussing the input format to the invocation style and then back to input related stuff. Signed-off-by: Max Horn <max@quendi.de> Acked-by: Sverre Rabbelier <srabbelier@gmail.com> Signed-off-by: Junio C Hamano <gitster@pobox.com>
2012-12-07Merge branch 'master' of git://github.com/git-l10n/git-poLibravatar Junio C Hamano4-804/+4417
* 'master' of git://github.com/git-l10n/git-po: l10n: de.po: translate 22 new messages l10n: de.po: translate 825 new messages l10n: Update Swedish translation (1979t0f0u) l10n: vi.po: update to git-v1.8.0.1-347-gf94c3 l10n: Update git.pot (5 new, 1 removed messages)
2012-12-07Merge branch 'rr/t4041-cleanup'Libravatar Junio C Hamano1-249/+248
* rr/t4041-cleanup: t4041 (diff-submodule-option): modernize style t4041 (diff-submodule-option): rewrite add_file() routine t4041 (diff-submodule-option): parse digests sensibly t4041 (diff-submodule-option): don't hardcode SHA-1 in expected outputs
2012-12-07Merge branch git://github.com/ralfth/git-po-deLibravatar Jiang Xin1-754/+4305
* 'rt/de-l10n-updates-for-1.8.1' of git://github.com/ralfth/git-po-de: l10n: de.po: translate 22 new messages l10n: de.po: translate 825 new messages Signed-off-by: Jiang Xin <worldhello.net@gmail.com>
2012-12-06l10n: de.po: translate 22 new messagesLibravatar Ralf Thielow1-853/+943
Translate 22 new messages came from git.pot updates in 9306b5b (l10n: Update git.pot (3 new, 6 removed messages)), fe52cd6 (l10n: Update git.pot (14 new, 3 removed messages)) and f9472e3 (l10n: Update git.pot (5 new, 1 removed messages)). Signed-off-by: Ralf Thielow <ralf.thielow@gmail.com> Reviewed-by: Michael J Gruber <git@drmicha.warpmail.net>
2012-12-06l10n: de.po: translate 825 new messagesLibravatar Ralf Thielow1-494/+3955
Translate 825 new messages came from git.pot update in cc76011 ("l10n: Update git.pot (825 new, 24 removed messages)"). Signed-off-by: Ralf Thielow <ralf.thielow@gmail.com> Reviewed-by: Thomas Rast <trast@student.ethz.ch> Helped-by: Michael J Gruber <git@drmicha.warpmail.net>
2012-12-04Merge branch 'mm/status-push-pull-advise'Libravatar Junio C Hamano1-2/+3
* mm/status-push-pull-advise: document that statusHints affects git checkout
2012-12-04mingw: get rid of getpass implementationLibravatar Erik Faye-Lund2-17/+0
There's no remaining call-sites, and as pointed out in the previous commit message, it's not quite ideal. So let's just lose it. Signed-off-by: Erik Faye-Lund <kusmabite@gmail.com> Signed-off-by: Junio C Hamano <gitster@pobox.com>
2012-12-04mingw: reuse tty-version of git_terminal_promptLibravatar Erik Faye-Lund1-9/+60
The getpass-implementation we use on Windows isn't at all ideal; it works in raw-mode (as opposed to cooked mode), and as a result does not deal correcly with deletion, arrow-keys etc. Instead, use cooked mode to read a line at the time, allowing the C run-time to process the input properly. Since we set files to be opened in binary-mode by default on Windows, introduce a FORCE_TEXT macro that expands to the "t" modifier that forces the terminal to be opened in text-mode so we do not have to deal with CRLF issues. Signed-off-by: Erik Faye-Lund <kusmabite@gmail.com> Signed-off-by: Junio C Hamano <gitster@pobox.com>
2012-12-04compat/terminal: separate input and output handlesLibravatar Erik Faye-Lund1-11/+18
On Windows, the terminal cannot be opened in read-write mode, so we need distinct pairs for reading and writing. Since this works fine on other platforms as well, always open them in pairs. Signed-off-by: Erik Faye-Lund <kusmabite@gmail.com> Signed-off-by: Junio C Hamano <gitster@pobox.com>
2012-12-04compat/terminal: factor out echo-disablingLibravatar Erik Faye-Lund1-18/+25
By moving the echo-disabling code to a separate function, we can implement OS-specific versions of it for non-POSIX platforms. Signed-off-by: Erik Faye-Lund <kusmabite@gmail.com> Signed-off-by: Junio C Hamano <gitster@pobox.com>
2012-12-04mingw: make fgetc raise SIGINT if apropriateLibravatar Erik Faye-Lund2-10/+72
Set a control-handler to prevent the process from terminating, and simulate SIGINT so it can be handled by a signal-handler as usual. Signed-off-by: Erik Faye-Lund <kusmabite@gmail.com> Signed-off-by: Junio C Hamano <gitster@pobox.com>
2012-12-04mingw: correct exit-code for SIGALRM's SIG_DFLLibravatar Erik Faye-Lund1-2/+5
Make sure SIG_DFL for SIGALRM exits with 128 + SIGALRM so other processes can diagnose why it exits. While we're at it, make sure we only write to stderr if it's a terminal, and change the output to match that of Linux. Signed-off-by: Erik Faye-Lund <kusmabite@gmail.com> Signed-off-by: Junio C Hamano <gitster@pobox.com>
2012-12-04document that statusHints affects git checkoutLibravatar Matthieu Moy1-2/+3
Signed-off-by: Matthieu Moy <Matthieu.Moy@imag.fr> Signed-off-by: Junio C Hamano <gitster@pobox.com>
2012-12-03Git 1.8.1-rc0Libravatar Junio C Hamano2-12/+14
Signed-off-by: Junio C Hamano <gitster@pobox.com>