summaryrefslogtreecommitdiff
AgeCommit message (Collapse)AuthorFilesLines
2015-01-16strbuf.h: integrate api-strbuf.txt documentationLibravatar Jeff King2-418/+390
Some of strbuf is documented as comments above functions, and some is separate in Documentation/technical/api-strbuf.txt. This makes it annoying to find the appropriate documentation. We'd rather have it all in one place, which means all in the text document, or all in the header. Let's choose the header as that place. Even though the formatting is not quite as pretty, this keeps the documentation close to the related code. The hope is that this makes it easier to find what you want (human-readable comments are right next to the C declarations), and easier for writers to keep the documentation up to date. This is more or less a straight import of the text from api-strbuf.txt into C comments, complete with asciidoc formatting. The exceptions are: 1. All comments created in this way are started with "/**" to indicate they are part of the API documentation. This may help later with extracting the text to pretty-print it. 2. Function descriptions do not repeat the function name, as it is available in the context directly below. So: `strbuf_add`:: Add data of given length to the buffer. from api-strbuf.txt becomes: /** * Add data of given length to the buffer. */ void strbuf_add(struct strbuf *sb, const void *, size_t); As a result, any block-continuation required in asciidoc for that list item was dropped in favor of straight blank-line paragraph (since it is not necessary when we are not in a list item). 3. There is minor re-wording to integrate existing comments and api-strbuf text. In each case, I took whichever version was more descriptive, and eliminated any redundancies. In one case, for strbuf_addstr, the api documentation gave its inline definition; I eliminated this as redundant with the actual definition, which can be seen directly below the comment. 4. The functions in the header file are re-ordered to match the ordering of the API documentation, under the assumption that more thought went into the grouping there. Helped-by: Jonathan Nieder <jrnieder@gmail.com> Signed-off-by: Jeff King <peff@peff.net> Signed-off-by: Junio C Hamano <gitster@pobox.com>
2014-12-12Second batch for 2.3 cycleLibravatar Junio C Hamano1-0/+18
Signed-off-by: Junio C Hamano <gitster@pobox.com>
2014-12-12Merge branch 'jk/pack-bitmap'Libravatar Junio C Hamano4-18/+29
* jk/pack-bitmap: pack-bitmap: do not use gcc packed attribute
2014-12-12Merge branch 'jk/push-simple'Libravatar Junio C Hamano2-6/+34
Git 2.0 was supposed to make the "simple" mode for the default of "git push", but it didn't. * jk/push-simple: push: truly use "simple" as default, not "upstream"
2014-12-12Merge branch 'da/difftool-mergetool-simplify-reporting-status'Libravatar Junio C Hamano6-29/+12
Code simplification. * da/difftool-mergetool-simplify-reporting-status: mergetools: stop setting $status in merge_cmd() mergetool: simplify conditionals difftool--helper: add explicit exit statement mergetool--lib: remove use of $status global mergetool--lib: remove no-op assignment to $status from setup_user_tool
2014-12-12Merge branch 'jk/colors-fix'Libravatar Junio C Hamano3-14/+25
* jk/colors-fix: t4026: test "normal" color config: fix parsing of "git config --get-color some.key -1" docs: describe ANSI 256-color mode
2014-12-12Merge branch 'rt/push-recurse-submodule-usage-string'Libravatar Junio C Hamano1-1/+1
* rt/push-recurse-submodule-usage-string: builtin/push.c: fix description of --recurse-submodules option
2014-12-12Merge branch 'jk/rebuild-perl-scripts-with-no-perl-seting-change'Libravatar Junio C Hamano1-4/+10
The build procedure did not bother fixing perl and python scripts when NO_PERL and NO_PYTHON build-time configuration changed. * jk/rebuild-perl-scripts-with-no-perl-seting-change: Makefile: have python scripts depend on NO_PYTHON setting Makefile: simplify by using SCRIPT_{PERL,SH}_GEN macros Makefile: have perl scripts depend on NO_PERL setting
2014-12-12Merge branch 'jk/no-perl-tests'Libravatar Junio C Hamano3-4/+4
Some tests that depend on perl lacked PERL prerequisite to protect them, breaking build with NO_PERL configuration. * jk/no-perl-tests: t960[34]: mark cvsimport tests as requiring perl t0090: mark add-interactive test with PERL prerequisite
2014-12-12Merge branch 'sv/typofix-apply-error-message'Libravatar Junio C Hamano1-1/+1
* sv/typofix-apply-error-message: apply: fix typo in an error message
2014-12-12Merge branch 'po/everyday-doc'Libravatar Junio C Hamano1-1/+1
* po/everyday-doc: Documentation: change "gitlink" typo in git-push
2014-12-12Merge branch 'mh/config-copy-string-from-git-path'Libravatar Junio C Hamano1-2/+5
* mh/config-copy-string-from-git-path: cmd_config(): make a copy of path obtained from git_path()
2014-12-12Merge branch 'jc/unpack-trees-plug-leak'Libravatar Junio C Hamano1-0/+2
* jc/unpack-trees-plug-leak: unpack_trees: plug leakage of o->result
2014-12-05First batch for 2.3 cycleLibravatar Junio C Hamano2-1/+57
Signed-off-by: Junio C Hamano <gitster@pobox.com>
2014-12-05Merge branch 'mh/config-flip-xbit-back-after-checking'Libravatar Junio C Hamano2-1/+9
* mh/config-flip-xbit-back-after-checking: create_default_files(): don't set u+x bit on $GIT_DIR/config
2014-12-05Merge branch 'jk/gitweb-with-newer-cgi-multi-param'Libravatar Junio C Hamano1-1/+5
* jk/gitweb-with-newer-cgi-multi-param: gitweb: hack around CGI's list-context param() handling
2014-12-05Merge branch 'rs/receive-pack-use-labs'Libravatar Junio C Hamano1-1/+1
* rs/receive-pack-use-labs: use labs() for variables of type long instead of abs()
2014-12-05Merge branch 'rs/maint-config-use-labs'Libravatar Junio C Hamano1-2/+2
* rs/maint-config-use-labs: use labs() for variables of type long instead of abs()
2014-12-05Merge branch 'js/windows-open-eisdir-error'Libravatar Junio C Hamano1-1/+1
* js/windows-open-eisdir-error: Windows: correct detection of EISDIR in mingw_open()
2014-12-05Merge branch 'jh/empty-notes'Libravatar Junio C Hamano4-825/+789
A request to store an empty note via "git notes" meant to remove note from the object but with --allow-empty we will store a (surprise!) note that is empty. In the longer run, we might want to deprecate the somewhat unintuitive "emptying means deletion" behaviour. * jh/empty-notes: t3301: modernize style notes: empty notes should be shown by 'git log' builtin/notes: add --allow-empty, to allow storing empty notes builtin/notes: split create_note() to clarify add vs. remove logic builtin/notes: simplify early exit code in add() builtin/notes: refactor note file path into struct note_data builtin/notes: improve naming t3301: verify that 'git notes' removes empty notes by default builtin/notes: fix premature failure when trying to add the empty blob
2014-12-05Merge branch 'sv/get-builtin'Libravatar Junio C Hamano1-12/+15
* sv/get-builtin: builtin: move builtin retrieval to get_builtin()
2014-12-05Merge branch 'jk/checkout-from-tree'Libravatar Junio C Hamano2-0/+35
"git checkout $treeish $path", when $path in the index and the working tree already matched what is in $treeish at the $path, still overwrote the $path unnecessarily. * jk/checkout-from-tree: checkout $tree: do not throw away unchanged index entries
2014-12-05Merge branch 'tq/git-ssh-command'Libravatar Junio C Hamano2-15/+26
Allow passing extra set of arguments when ssh is invoked to create an encrypted & authenticated connection by introducing a new environment variable GIT_SSH_COMMAND, whose contents is interpreted by shells. This is not possible with existing GIT_SSH mechanism whose invocation bypasses shells, which was designed more to match what other programs with similar variables did, not necessarily to be more useful. * tq/git-ssh-command: git_connect: set ssh shell command in GIT_SSH_COMMAND
2014-12-05Merge branch 'rs/env-array-in-child-process'Libravatar Junio C Hamano2-35/+29
* rs/env-array-in-child-process: use args member of struct child_process
2014-12-05Merge branch 'maint' of git://github.com/git-l10n/git-po into maintLibravatar Junio C Hamano1-9/+9
* 'maint' of git://github.com/git-l10n/git-po: l10n: de.po: fix typos
2014-12-05Start post 2.2 cycleLibravatar Junio C Hamano1-1/+1
Signed-off-by: Junio C Hamano <gitster@pobox.com>
2014-11-30push: truly use "simple" as default, not "upstream"Libravatar Jeff King2-6/+34
The plan for the push.default transition had all along been to use the "simple" method rather than "upstream" as a default if the user did not specify their own push.default value. Commit 11037ee (push: switch default from "matching" to "simple", 2013-01-04) tried to implement that by moving PUSH_DEFAULT_UNSPECIFIED in our switch statement to fall-through to the PUSH_DEFAULT_SIMPLE case. When the commit that became 11037ee was originally written, that would have been enough. We would fall through to calling setup_push_upstream() with the "simple" parameter set to 1. However, it was delayed for a while until we were ready to make the transition in Git 2.0. And in the meantime, commit ed2b182 (push: change `simple` to accommodate triangular workflows, 2013-06-19) threw a monkey wrench into the works. That commit drops the "simple" parameter to setup_push_upstream, and instead checks whether the global "push_default" is PUSH_DEFAULT_SIMPLE. This is right when the user has explicitly configured push.default to simple, but wrong when we are a fall-through for the "unspecified" case. We never noticed because our push.default tests do not cover the case of the variable being totally unset; they only check the "simple" behavior itself. Signed-off-by: Jeff King <peff@peff.net> Signed-off-by: Junio C Hamano <gitster@pobox.com>
2014-11-30pack-bitmap: do not use gcc packed attributeLibravatar Karsten Blees4-18/+29
The "__attribute__" flag may be a noop on some compilers. That's OK as long as the code is correct without the attribute, but in this case it is not. We would typically end up with a struct that is 2 bytes too long due to struct padding, breaking both reading and writing of bitmaps. Instead of marshalling the data in a struct, let's just provide helpers for reading and writing the appropriate types. Besides being correct on all platforms, the result is more efficient and simpler to read. Signed-off-by: Karsten Blees <blees@dcon.de> Signed-off-by: Jeff King <peff@peff.net> Signed-off-by: Junio C Hamano <gitster@pobox.com>
2014-11-29Merge branch 'master' of https://github.com/ralfth/git-po-deLibravatar Jiang Xin1-9/+9
* 'master' of https://github.com/ralfth/git-po-de: l10n: de.po: fix typos
2014-11-28l10n: de.po: fix typosLibravatar Hartmut Henkel1-9/+9
Signed-off-by: Hartmut Henkel <hartmut_henkel@gmx.de> Signed-off-by: Ralf Thielow <ralf.thielow@gmail.com>
2014-11-26Git 2.2Libravatar Junio C Hamano2-1/+6
Signed-off-by: Junio C Hamano <gitster@pobox.com>
2014-11-26RelNotes: spelling & grammar tweaksLibravatar Marc Branchaud1-51/+52
Signed-off-by: Marc Branchaud <marcnarc@xiplink.com> Signed-off-by: Junio C Hamano <gitster@pobox.com>
2014-11-21Git 2.2.0-rc3Libravatar Junio C Hamano2-14/+15
Signed-off-by: Junio C Hamano <gitster@pobox.com>
2014-11-21mergetools: stop setting $status in merge_cmd()Libravatar David Aguilar3-3/+0
No callers rely on $status so there's don't need to set it during merge_cmd() for diffmerge, emerge, and kdiff3. Signed-off-by: David Aguilar <davvid@gmail.com> Signed-off-by: Junio C Hamano <gitster@pobox.com>
2014-11-21mergetool: simplify conditionalsLibravatar David Aguilar1-11/+5
Combine the $last_status checks into a single conditional. Replace $last_status and $rollup_status with a single variable. Signed-off-by: David Aguilar <davvid@gmail.com> Signed-off-by: Junio C Hamano <gitster@pobox.com>
2014-11-21difftool--helper: add explicit exit statementLibravatar David Aguilar1-0/+2
git-difftool--helper returns a zero exit status unless --trust-exit-code is in effect. Add an explicit exit statement to make this clearer. Signed-off-by: David Aguilar <davvid@gmail.com> Signed-off-by: Junio C Hamano <gitster@pobox.com>
2014-11-21mergetool--lib: remove use of $status globalLibravatar David Aguilar1-14/+5
Remove return statements and rework check_unchanged() so that the exit status from the last evaluated expression bubbles up to the callers. Signed-off-by: David Aguilar <davvid@gmail.com> Signed-off-by: Junio C Hamano <gitster@pobox.com>
2014-11-21mergetool--lib: remove no-op assignment to $status from setup_user_toolLibravatar Junio C Hamano1-1/+0
Even though setup_user_tool assigns the exit status from "eval $merge_tool_cmd" to $status, the variable is overwritten by the function it calls next, check_unchanged, without ever getting looked at by anybody. And "return $status" at the end of this function returns the value check_unchanged assigned to it (which is the same as the value the function returns). Which makes the assignment a no-op. Remove it. Signed-off-by: Junio C Hamano <gitster@pobox.com>
2014-11-20t4026: test "normal" colorLibravatar Jeff King1-0/+8
If the user specifiers "normal" for a foreground color, this should be a noop (while this may sound useless, it is the only way to specify an unchanged foreground color followed by a specific background color). We also check that color "-1" does the same thing. This is not documented, but has worked forever, so let's make sure we keep supporting it. Signed-off-by: Jeff King <peff@peff.net> Signed-off-by: Junio C Hamano <gitster@pobox.com>
2014-11-20config: fix parsing of "git config --get-color some.key -1"Libravatar Jeff King1-14/+13
Most of git-config's command line options use OPT_BIT to choose an action, and then parse the non-option arguments in a context-dependent way. However, --get-color and --get-colorbool are unlike the rest of the options, in that they are OPT_STRING, taking the option name as a parameter. This generally works, because we then use the presence of those strings to set an action bit anyway. But it does mean that the option-parser will continue looking for options even after the key (because it is not a non-option; it is an argument to an option). And running: git config --get-color some.key -1 (to use "-1" as the default color spec) will barf, claiming that "-1" is not an option. Instead, we should treat --get-color and --get-colorbool as action bits, just like --add, --get, and all the other actions, and then check that the non-option arguments we got are sane. This fixes the weirdness above, and makes those two options like all the others. This "fixes" a test in t4026, which checked that feeding "-2" as a color should fail (it does fail, but prior to this patch, because parseopt barfed, not because we actually ever tried to parse the color). This also catches other errors, like: git config --get-color some.key black blue which previously silently ignored "blue" (and now will complain that you gave too many arguments). There are some possible regressions, though. We now disallow these, which currently do what you would expect: # specifying other options after the action git config --get-color some.key --file whatever # using long-arg syntax git config --get-color=some.key However, we have never advertised these in the documentation, and in fact they did not work in some older versions of git. The behavior was apparently switched as an accidental side effect of d64ec16 (git config: reorganize to use parseopt, 2009-02-21). Signed-off-by: Jeff King <peff@peff.net> Signed-off-by: Junio C Hamano <gitster@pobox.com>
2014-11-20docs: describe ANSI 256-color modeLibravatar Jeff King1-0/+4
Our color specifications have supported the 256-color ANSI extension for years, but we never documented it. Signed-off-by: Jeff King <peff@peff.net> Signed-off-by: Junio C Hamano <gitster@pobox.com>
2014-11-20l10n: remove a superfluous translation for push.cLibravatar Jiang Xin6-30/+6
Ralf reported that '--recurse-submodules' option in push.c should not be translated [1]. Before his commit is merged, remove superfluous translations for push.c. [1] http://www.spinics.net/lists/git/msg241964.html Signed-off-by: Jiang Xin <worldhello.net@gmail.com>
2014-11-20l10n: de.po: translate 2 messagesLibravatar Ralf Thielow1-3/+1
Signed-off-by: Ralf Thielow <ralf.thielow@gmail.com>
2014-11-20l10n: de.po: translate 2 new messagesLibravatar Ralf Thielow1-2/+2
Signed-off-by: Phillip Sz <phillip.szelat@gmail.com> Signed-off-by: Ralf Thielow <ralf.thielow@gmail.com>
2014-11-20l10n: batch updates for one trivial changeLibravatar Jiang Xin7-519/+554
In order to catch up with the release of Git 2.2.0 final, make a batch l10n update for the new l10n change brought by commit d52adf1 (trailer: display a trailer without its trailing newline). Signed-off-by: Jiang Xin <worldhello.net@gmail.com>
2014-11-20l10n: git.pot: v2.2.0 round 2 (1 updated)Libravatar Jiang Xin1-24/+24
Generate po/git.pot from v2.2.0-rc2-23-gca0107e for git v2.2.0 l10n round 2. Signed-off-by: Jiang Xin <worldhello.net@gmail.com>
2014-11-19Merge branch 'sv/submitting-final-patch'Libravatar Junio C Hamano1-1/+1
* sv/submitting-final-patch: SubmittingPatches: final submission is To: maintainer and CC: list
2014-11-19Merge branch 'sn/tutorial-status-output-example'Libravatar Junio C Hamano2-19/+21
* sn/tutorial-status-output-example: gittutorial: fix output of 'git status'
2014-11-19Merge branch 'mh/doc-remote-helper-xref'Libravatar Junio C Hamano5-0/+22
* mh/doc-remote-helper-xref: doc: add some crossrefs between manual pages
2014-11-19Merge branch 'tb/no-relative-file-url'Libravatar Junio C Hamano1-1/+1
* tb/no-relative-file-url: t5705: the file:// URL should be absolute