summaryrefslogtreecommitdiff
AgeCommit message (Collapse)AuthorFilesLines
2011-09-28parseopt: add OPT_NOOP_NOARGLibravatar René Scharfe5-1/+18
Add OPT_NOOP_NOARG, a helper macro to define deprecated options in a standard way. The help text is taken from the no-op option -r of git revert. The callback could be made to emit a (conditional?) warning later. And we could also add OPT_NOOP (requiring an argument) etc. as needed. Signed-off-by: Rene Scharfe <rene.scharfe@lsrfire.ath.cx> Signed-off-by: Junio C Hamano <gitster@pobox.com>
2011-09-27archive.c: use OPT_BOOL()Libravatar Junio C Hamano2-2/+11
The list variable (which is OPT_BOOLEAN) is initialized to 0 and only checked against 0 in the code, so it is safe to use OPT_BOOL(). The worktree_attributes variable (which is OPT_BOOLEAN) is initialized to 0 and later assigned to a field with the same name in struct archive_args, which is a bitfield of width 1. It is safe and even more correct to use OPT_BOOL() here; the new test in 5001 demonstrates why using OPT_COUNTUP is wrong. Signed-off-by: Junio C Hamano <gitster@pobox.com>
2011-09-27parse-options: deprecate OPT_BOOLEANLibravatar Junio C Hamano3-9/+21
It is natural to expect that an option defined with OPT_BOOLEAN() could be used in this way: int option = -1; /* unspecified */ struct option options[] = { OPT_BOOLEAN(0, "option", &option, "set option"), OPT_END() }; parse_options(ac, av, prefix, options, usage, 0); if (option < 0) ... do the default thing ... else if (!option) ... --no-option was given ... else ... --option was given ... to easily tell three cases apart: - There is no mention of the `--option` on the command line; - The variable is positively set with `--option`; or - The variable is explicitly negated with `--no-option`. Unfortunately, this is not the case. OPT_BOOLEAN() increments the variable every time `--option` is given, and resets it to zero when `--no-option` is given. As a first step to remedy this, introduce a true boolean OPT_BOOL(), and rename OPT_BOOLEAN() to OPT_COUNTUP(). To help transitioning, OPT_BOOLEAN and OPTION_BOOLEAN are defined as deprecated synonyms to OPT_COUNTUP and OPTION_COUNTUP respectively. This is what db7244b (parse-options new features., 2007-11-07) from four years ago started by marking OPTION_BOOLEAN as "INCR would have been a better name". Some existing users do depend on the count-up semantics; for example, users of OPT__VERBOSE() could use it to raise the verbosity level with repeated use of `-v` on the command line, but they probably should be rewritten to use OPT__VERBOSITY() instead these days. I suspect that some users of OPT__FORCE() may also use it to implement different level of forcibleness but I didn't check. On top of this patch, here are the remaining clean-up tasks that other people can help: - Look at each hit in "git grep -e OPT_BOOLEAN"; trace all uses of the value that is set to the underlying variable, and if it can proven that the variable is only used as a boolean, replace it with OPT_BOOL(). If the caller does depend on the count-up semantics, replace it with OPT_COUNTUP() instead. - Same for OPTION_BOOLEAN; replace it with OPTION_SET_INT and arrange to set 1 to the variable for a true boolean, and otherwise replace it with OPTION_COUNTUP. - Look at each hit in "git grep -e OPT__VERBOSE -e OPT__QUIET" and see if they can be replaced with OPT__VERBOSITY(). I'll follow this message up with a separate patch as an example. Signed-off-by: Junio C Hamano <gitster@pobox.com>
2011-09-27templates/hooks--*: remove sample hooks without any functionalityLibravatar Gerrit Pape2-23/+0
Remove the sample post-commit and post-receive hooks. The sample post-commit doesn't contain any sample functionality and the comments do not provide more information than already found in the documentation. The sample post-receive hooks doesn't provide any sample functionality either and refers in the comments to a contrib hook that might be installed in different locations on different systems, which isn't that helpful. Signed-off-by: Gerrit Pape <pape@smarden.org> Signed-off-by: Junio C Hamano <gitster@pobox.com>
2011-09-26contrib/hooks: adapt comment about Debian install location for contrib hooksLibravatar Gerrit Pape1-2/+2
Placing the contrib hooks into /usr/share/doc/ wasn't a good idea in the first place. According to the Debian policy they should be located in /usr/share/git-core/, so let's put them there. Thanks to Bill Allombert for reporting this through http://bugs.debian.org/640949 Signed-off-by: Gerrit Pape <pape@smarden.org> Signed-off-by: Junio C Hamano <gitster@pobox.com>
2011-09-26Merge branch 'jc/namespace-doc-with-old-asciidoc'Libravatar Junio C Hamano1-0/+7
* jc/namespace-doc-with-old-asciidoc: Documentation/gitnamespaces.txt: cater to older asciidoc
2011-09-23Git 1.7.7-rc3Libravatar Junio C Hamano2-31/+2
Signed-off-by: Junio C Hamano <gitster@pobox.com>
2011-09-23Merge 1.7.6.4 inLibravatar Junio C Hamano2-1/+34
Signed-off-by: Junio C Hamano <gitster@pobox.com>
2011-09-23merge-recursive: Do not look at working tree during a virtual ancestor mergeLibravatar Junio C Hamano1-1/+1
Fix another instance of a recursive merge incorrectly paying attention to the working tree file during a virtual ancestor merge, that resulted in spurious and useless "addinfo_cache failed" error message. Signed-off-by: Junio C Hamano <gitster@pobox.com>
2011-09-23Git 1.7.6.4Libravatar Junio C Hamano4-3/+36
Signed-off-by: Junio C Hamano <gitster@pobox.com>
2011-09-23Merge branch 'cb/maint-ls-files-error-report' into maintLibravatar Junio C Hamano6-10/+90
* cb/maint-ls-files-error-report: t3005: do not assume a particular order of stdout and stderr of git-ls-files ls-files: fix pathspec display on error
2011-09-23describe: Refresh the index when run with --dirtyLibravatar Allan Caffee1-2/+15
When running git describe --dirty the index should be refreshed. Previously the cached index would cause describe to think that the index was dirty when, in reality, it was just stale. The issue was exposed by python setuptools which hardlinks files into another directory when building a distribution. Signed-off-by: Junio C Hamano <gitster@pobox.com>
2011-09-23Merge branch 'jc/maint-clone-alternates' into maintLibravatar Junio C Hamano3-30/+114
* jc/maint-clone-alternates: clone: clone from a repository with relative alternates clone: allow more than one --reference
2011-09-23Merge branch 'nd/maint-clone-gitdir' into maintLibravatar Junio C Hamano9-12/+33
* nd/maint-clone-gitdir: clone: allow to clone from .git file read_gitfile_gently(): rename misnamed function to read_gitfile()
2011-09-23Merge branch 'mh/check-ref-format-print-normalize' into maintLibravatar Junio C Hamano3-4/+13
* mh/check-ref-format-print-normalize: Forbid DEL characters in reference names check-ref-format --print: Normalize refnames that start with slashes
2011-09-23Merge branch 'mg/branch-set-upstream-previous' into maintLibravatar Junio C Hamano2-1/+15
* mg/branch-set-upstream-previous: branch.c: use the parsed branch name
2011-09-23Merge branch 'gb/maint-am-patch-format-error-message' into maintLibravatar Junio C Hamano1-1/+2
* gb/maint-am-patch-format-error-message: am: format is in $patch_format, not parse_patch
2011-09-19Merge branch 'maint'Libravatar Junio C Hamano2-2/+2
* maint: git-mergetool: check return value from read
2011-09-19git-mergetool: check return value from readLibravatar Jay Soffian2-2/+2
Mostly fixed already by 6b44577 (mergetool: check return value from read, 2011-07-01). Catch two uses it missed. Signed-off-by: Jay Soffian <jaysoffian@gmail.com> Signed-off-by: Junio C Hamano <gitster@pobox.com>
2011-09-19Merge branch 'ph/format-patch-no-color'Libravatar Junio C Hamano1-4/+4
* ph/format-patch-no-color: t4014: clean up format.thread config after each test
2011-09-19t4014: clean up format.thread config after each testLibravatar Jeff King1-4/+4
The threading tests turn on format.thread, but never clean up after themselves, meaning that later tests will also have format.thread set. This is more annoying than most leftover config, too, because not only does it impact the results of other tests, but it does so non-deterministically. Threading requires the generation of message-ids, which incorporate the current time, meaning a slow-running test script may generate different results from run to run. Signed-off-by: Jeff King <peff@peff.net> Signed-off-by: Junio C Hamano <gitster@pobox.com>
2011-09-18Git 1.7.7-rc2Libravatar Junio C Hamano2-2/+2
Signed-off-by: Junio C Hamano <gitster@pobox.com>
2011-09-16Merge branch 'ci/forbid-unwanted-current-branch-update'Libravatar Junio C Hamano5-12/+39
* ci/forbid-unwanted-current-branch-update: branch --set-upstream: regression fix
2011-09-16branch --set-upstream: regression fixLibravatar Junio C Hamano5-12/+39
The "git branch" command, while not in listing mode, calls create_branch() even when the target branch already exists, and it does so even when it is not interested in updating the value of the branch (i.e. the name of the commit object that sits at the tip of the existing branch). This happens when the command is run with "--set-upstream" option. The earlier safety-measure to prevent "git branch -f $branch $commit" from updating the currently checked out branch did not take it into account, and we no longer can update the tracking information of the current branch. Minimally fix this regression by telling the validation code if it is called to really update the value of a potentially existing branch, or if the caller merely is interested in updating auxiliary aspects of a branch. Reported-and-Tested-by: Jay Soffian Signed-off-by: Junio C Hamano <gitster@pobox.com>
2011-09-16Disambiguate duplicate t9160* testsLibravatar Frédéric Heitzmann2-1/+1
1e5814f created t9160-git-svn-mergeinfo-push.sh on 11/9/7 40a1530 created t9160-git-svn-preserve-empty-dirs.sh on 11/7/20 The former test script is renumbered to t9161. Signed-off-by: Frédéric Heitzmann <frederic.heitzmann@gmail.com> Signed-off-by: Junio C Hamano <gitster@pobox.com>
2011-09-16Documentation/gitnamespaces.txt: cater to older asciidocLibravatar Junio C Hamano1-0/+7
Older asciidoc (e.g. 8.2.5 on Centos 5.5) is unhappy if a manpage does not have a SYNOPSIS section. Show a sample (and a possibly bogus) command line of running two commands that pay attention to this environment variable with a customized value. Signed-off-by: Junio C Hamano <gitster@pobox.com> Reviewed-by: Jamey Sharp <jamey@minilop.net>
2011-09-14Merge branch 'ph/format-patch-no-color'Libravatar Junio C Hamano2-1/+10
* ph/format-patch-no-color: format-patch: ignore ui.color
2011-09-13git-svn: teach git-svn to populate svn:mergeinfoLibravatar Bryan Jacobs4-0/+742
Allow git-svn to populate the svn:mergeinfo property automatically in a narrow range of circumstances. Specifically, when dcommitting a revision with multiple parents, all but (potentially) the first of which have been committed to SVN in the same repository as the target of the dcommit. In this case, the merge info is the union of that given by each of the parents, plus all changes introduced to the first parent by the other parents. In all other cases where a revision to be committed has multiple parents, cause "git svn dcommit" to raise an error rather than completing the commit and potentially losing history information in the upstream SVN repository. This behavior is disabled by default, and can be enabled by setting the svn.pushmergeinfo config option. [ew: minor style changes and manpage merge fix] Acked-by: Eric Wong <normalperson@yhbt.net> Signed-off-by: Bryan Jacobs <bjacobs@woti.com>
2011-09-12format-patch: ignore ui.colorLibravatar Pang Yan Han2-1/+10
commit c9bfb953 (want_color: automatically fallback to color.ui, 2011-08-17) introduced a regression where format-patch produces colorized patches when color.ui is set to "always". In f3aafa4 (Disable color detection during format-patch, 2006-07-09), git_format_config was taught to intercept diff.color to avoid passing it down to git_log_config and later, git_diff_ui_config. Teach git_format_config to intercept color.ui in the same way. Helped-by: Jeff King <peff@peff.net> Signed-off-by: Pang Yan Han <pangyanhan@gmail.com> Signed-off-by: Junio C Hamano <gitster@pobox.com>
2011-09-12Git 1.7.7-rc1Libravatar Junio C Hamano1-1/+1
Signed-off-by: Junio C Hamano <gitster@pobox.com>
2011-09-12Sync with 1.7.6.3Libravatar Junio C Hamano4-7/+19
Signed-off-by: Junio C Hamano <gitster@pobox.com>
2011-09-12Merge branch 'jn/remote-helpers-doc'Libravatar Junio C Hamano3-31/+195
* jn/remote-helpers-doc: (short) documentation for the testgit remote helper Documentation/git-remote-helpers: explain how import works with multiple refs Documentation/remote-helpers: explain capabilities first
2011-09-12Git 1.7.6.3Libravatar Junio C Hamano3-2/+7
Signed-off-by: Junio C Hamano <gitster@pobox.com>
2011-09-12Merge branch 'jl/maint-fetch-submodule-check-fix' into maintLibravatar Junio C Hamano2-6/+13
* jl/maint-fetch-submodule-check-fix: fetch: skip on-demand checking when no submodules are configured
2011-09-11Merge branch 'maint'Libravatar Junio C Hamano2-2/+21
* maint: Prepare for 1.7.6.3 maintenance release SubmittingPathces: remove Cogito reference Conflicts: RelNotes
2011-09-11Prepare for 1.7.6.3 maintenance releaseLibravatar Junio C Hamano2-1/+21
Signed-off-by: Junio C Hamano <gitster@pobox.com>
2011-09-11Merge branch 'ms/reflog-show-is-default' into maintLibravatar Junio C Hamano1-2/+1
* ms/reflog-show-is-default: reflog: actually default to subcommand 'show'
2011-09-11Merge branch 'jk/reset-reflog-message-fix' into maintLibravatar Junio C Hamano2-37/+20
* jk/reset-reflog-message-fix: reset: give better reflog messages
2011-09-11Merge branch 'vi/make-test-vector-less-specific' into maintLibravatar Junio C Hamano8-13/+13
* vi/make-test-vector-less-specific: tests: cleanup binary test vector files
2011-09-11Merge branch 'jk/tag-contains-ab' (early part) into maintLibravatar Junio C Hamano1-1/+45
* 'jk/tag-contains-ab' (early part): tag: speed up --contains calculation
2011-09-11Merge branch 'dz/connect-error-report' into maintLibravatar Junio C Hamano1-14/+11
* dz/connect-error-report: Do not log unless all connect() attempts fail
2011-09-11Merge branch 'jc/maint-mergetool-read-fix' into maintLibravatar Junio C Hamano1-4/+4
* jc/maint-mergetool-read-fix: mergetool: check return value from read
2011-09-11Merge branch 'jk/maint-config-param' into maintLibravatar Junio C Hamano4-11/+47
* jk/maint-config-param: config: use strbuf_split_str instead of a temporary strbuf strbuf: allow strbuf_split to work on non-strbufs config: avoid segfault when parsing command-line config config: die on error in command-line config fix "git -c" parsing of values with equals signs strbuf_split: add a max parameter
2011-09-11Merge branch 'jn/doc-dashdash' into maintLibravatar Junio C Hamano9-13/+13
* jn/doc-dashdash: Documentation/i18n: quote double-dash for AsciiDoc Documentation: quote double-dash for AsciiDoc Conflicts: Documentation/git-mergetool--lib.txt
2011-09-11Merge branch 'jk/maint-1.7.2-status-ignored' into maintLibravatar Junio C Hamano3-2/+128
* jk/maint-1.7.2-status-ignored: git status --ignored: tests and docs status: fix bug with missing --ignore files Conflicts: Documentation/git-status.txt t/t7508-status.sh
2011-09-11SubmittingPathces: remove Cogito referenceLibravatar Sverre Rabbelier1-2/+1
Removing Cogito leaves just git and StGit, which is a rather incomplete list of git diff tools available. Sidestep the problem of deciding what tools to mention by not mentioning any. Signed-off-by: Sverre Rabbelier <srabbelier@gmail.com> Signed-off-by: Junio C Hamano <gitster@pobox.com>
2011-09-09fetch: skip on-demand checking when no submodules are configuredLibravatar Jens Lehmann2-6/+13
It makes no sense to do the - possibly very expensive - call to "rev-list <new-ref-sha1> --not --all" in check_for_new_submodule_commits() when there aren't any submodules configured. Leave check_for_new_submodule_commits() early when no name <-> path mappings for submodules are found in the configuration. To make that work reading the configuration had to be moved further up in cmd_fetch(), as doing that after the actual fetch of the superproject was too late. Reported-by: Martin Fick <mfick@codeaurora.org> Signed-off-by: Jens Lehmann <Jens.Lehmann@web.de> Signed-off-by: Junio C Hamano <gitster@pobox.com>
2011-09-07RelNotes/1.7.7: minor fixesLibravatar Michael J Gruber1-26/+26
Signed-off-by: Michael J Gruber <git@drmicha.warpmail.net> Signed-off-by: Junio C Hamano <gitster@pobox.com>
2011-09-07Minor update to how-to maintain gitLibravatar Junio C Hamano1-7/+6
A few more parts of this document is stale that needs updating to reflect the reality, but I do not regularly rebase topics that are only in "pu" anymore, which may be noteworthy for a commit. Signed-off-by: Junio C Hamano <gitster@pobox.com>
2011-09-06Update draft release notes to 1.7.7Libravatar Junio C Hamano1-1/+6
Signed-off-by: Junio C Hamano <gitster@pobox.com>