summaryrefslogtreecommitdiff
AgeCommit message (Collapse)AuthorFilesLines
2011-09-08for-each-ref: add split message parts to %(contents:*).Libravatar Michał Górny4-11/+96
The %(body) placeholder returns the whole body of a tag or commit, including the signature. However, callers may want to get just the body without signature, or just the signature. Rather than change the meaning of %(body), which might break some scripts, this patch introduces a new set of placeholders which break down the %(contents) placeholder into its constituent parts. [jk: initial patch by mg, rebased on top of my refactoring and with tests by me] Signed-off-by: Jeff King <peff@peff.net> Signed-off-by: Junio C Hamano <gitster@pobox.com>
2011-09-08for-each-ref: handle multiline subjects like --prettyLibravatar Jeff King2-5/+45
Generally the format of a git tag or commit message is: subject body body body body body body However, we occasionally see multiline subjects like: subject with multiple lines body body body body body body The rest of git treats these multiline subjects as something to be concatenated and shown as a single line (e.g., "git log --pretty=format:%s" will do so since f53bd74). For consistency, for-each-ref should do the same with its "%(subject)". Signed-off-by: Jeff King <peff@peff.net> Signed-off-by: Junio C Hamano <gitster@pobox.com>
2011-09-08for-each-ref: refactor subject and body placeholder parsingLibravatar Jeff King1-25/+29
The find_subpos function was a little hard to use, as well as to read. It would sometimes write into the subject and body pointers, and sometimes not. The body pointer sometimes could be compared to subject, and sometimes not. When actually duplicating the subject, the caller was forced to figure out again how long the subject is (which is not too big a deal when the subject is a single line, but hard to extend). The refactoring makes the function more straightforward, both to read and to use. We will always put something into the subject and body pointers, and we return explicit lengths for them, too. This lays the groundwork both for more complex subject parsing (e.g., multiline), as well as splitting the body into subparts (like the text versus the signature). Signed-off-by: Jeff King <peff@peff.net> Signed-off-by: Junio C Hamano <gitster@pobox.com>
2011-09-08t6300: add more body-parsing testsLibravatar Jeff King1-0/+20
The current tests don't actually check parsing commit and tag messages that have both a subject and a body (they just have single-line messages). Signed-off-by: Jeff King <peff@peff.net> Signed-off-by: Junio C Hamano <gitster@pobox.com>
2011-09-08t7004: factor out gpg setupLibravatar Jeff King6-28/+27
Other test scripts may want to look at or verify signed tags, and the setup is non-trivial. Let's factor this out into lib-gpg.sh for other tests to use. Signed-off-by: Jeff King <peff@peff.net> Signed-off-by: Junio C Hamano <gitster@pobox.com>
2011-08-25Git 1.7.7-rc0Libravatar Junio C Hamano2-3/+10
Signed-off-by: Junio C Hamano <gitster@pobox.com>
2011-08-25Merge branch 'jc/merge-reword'Libravatar Junio C Hamano2-4/+4
* jc/merge-reword: merge: reword the final message
2011-08-25Merge branch 'mg/branch-set-upstream-previous'Libravatar Junio C Hamano2-1/+15
* mg/branch-set-upstream-previous: branch.c: use the parsed branch name
2011-08-25Merge branch 'da/difftool-mergtool-refactor'Libravatar Junio C Hamano18-320/+432
* da/difftool-mergtool-refactor: mergetools/meld: Use '--output' when available mergetool--lib: Refactor tools into separate files mergetool--lib: Make style consistent with git difftool--helper: Make style consistent with git
2011-08-25Merge branch 'jc/maint-autofix-tag-in-head'Libravatar Junio C Hamano1-42/+45
* jc/maint-autofix-tag-in-head: commit: reduce use of redundant global variables
2011-08-25Merge branch 'di/fast-import-doc'Libravatar Junio C Hamano2-3/+54
* di/fast-import-doc: doc/fast-import: document feature import-marks-if-exists
2011-08-25Merge branch 'jn/plug-empty-tree-leak'Libravatar Junio C Hamano3-12/+30
* jn/plug-empty-tree-leak: merge-recursive: take advantage of hardcoded empty tree revert: plug memory leak in "cherry-pick root commit" codepath
2011-08-25Merge branch 'ac/describe-dirty-refresh'Libravatar Junio C Hamano1-2/+15
* ac/describe-dirty-refresh: describe: Refresh the index when run with --dirty
2011-08-25Merge branch 'di/parse-options-split'Libravatar Junio C Hamano6-152/+159
* di/parse-options-split: Reduce parse-options.o dependencies parse-options: export opterr, optbug
2011-08-25Merge branch 'js/i18n-scripts'Libravatar Junio C Hamano5-40/+44
* js/i18n-scripts: submodule: take advantage of gettextln and eval_gettextln. stash: take advantage of eval_gettextln pull: take advantage of eval_gettextln git-am: take advantage of gettextln and eval_gettextln. gettext: add gettextln, eval_gettextln to encode common idiom
2011-08-25Merge branch 'maint'Libravatar Junio C Hamano5-5/+5
* maint: whitespace: have SP on both sides of an assignment "=" update-ref: whitespace fix
2011-08-25whitespace: have SP on both sides of an assignment "="Libravatar Junio C Hamano4-4/+4
I've deliberately excluded the borrowed code in compat/nedmalloc directory. Signed-off-by: Junio C Hamano <gitster@pobox.com>
2011-08-25update-ref: whitespace fixLibravatar Pang Yan Han1-1/+1
Signed-off-by: Pang Yan Han <pangyanhan@gmail.com> Signed-off-by: Junio C Hamano <gitster@pobox.com>
2011-08-24Sync with 1.7.6.1Libravatar Junio C Hamano2-1/+4
Signed-off-by: Junio C Hamano <gitster@pobox.com>
2011-08-24Git 1.7.6.1Libravatar Junio C Hamano2-2/+3
Signed-off-by: Junio C Hamano <gitster@pobox.com>
2011-08-24Merge branch 'jc/maint-smart-http-race-upload-pack' into maintLibravatar Junio C Hamano1-0/+2
* jc/maint-smart-http-race-upload-pack: get_indexed_object can return NULL if nothing is in that slot; check for it
2011-08-24get_indexed_object can return NULL if nothing is in that slot; check for itLibravatar Brian Harring1-0/+2
This fixes a segfault introduced by 051e400; via it, no longer able to trigger the http/smartserv race. Signed-off-by: Brian Harring <ferringb@gmail.com> Signed-off-by: Junio C Hamano <gitster@pobox.com>
2011-08-23Update draft release notes to 1.7.7Libravatar Junio C Hamano1-15/+9
2011-08-23Merge branch 'rt/zlib-smaller-window'Libravatar Junio C Hamano23-13/+99
* rt/zlib-smaller-window: test: consolidate definition of $LF Tolerate zlib deflation with window size < 32Kb
2011-08-23Merge branch 'jn/maint-test-return'Libravatar Junio C Hamano2-9/+13
* jn/maint-test-return: t3900: do not reference numbered arguments from the test script test: cope better with use of return for errors test: simplify return value of test_run_
2011-08-23Merge branch 'cb/maint-ls-files-error-report'Libravatar Junio C Hamano6-10/+88
* cb/maint-ls-files-error-report: ls-files: fix pathspec display on error
2011-08-23Merge branch 'maint'Libravatar Junio C Hamano1-0/+11
* maint: Update draft release notes for 1.7.6.1
2011-08-23Update draft release notes for 1.7.6.1Libravatar Junio C Hamano1-0/+11
Signed-off-by: Junio C Hamano <gitster@pobox.com>
2011-08-23Merge branch 'jc/maint-combined-diff-work-tree' into maintLibravatar Junio C Hamano1-4/+10
* jc/maint-combined-diff-work-tree: diff -c/--cc: do not mistake "resolved as deletion" as "use working tree" Conflicts: combine-diff.c
2011-08-23Merge branch 'cb/maint-exec-error-report' into maintLibravatar Junio C Hamano3-17/+33
* cb/maint-exec-error-report: notice error exit from pager error_routine: use parent's stderr if exec fails
2011-08-23Merge branch 'cb/maint-quiet-push' into maintLibravatar Junio C Hamano6-10/+39
* cb/maint-quiet-push: receive-pack: do not overstep command line argument array propagate --quiet to send-pack/receive-pack Conflicts: Documentation/git-receive-pack.txt Documentation/git-send-pack.txt
2011-08-23Merge branch 'jc/maint-smart-http-race-upload-pack' into maintLibravatar Junio C Hamano1-9/+98
* jc/maint-smart-http-race-upload-pack: helping smart-http/stateless-rpc fetch race
2011-08-23Merge branch 'jc/no-gitweb-test-without-cgi-etc' into maintLibravatar Junio C Hamano1-0/+5
* jc/no-gitweb-test-without-cgi-etc: t/gitweb-lib.sh: skip gitweb tests when perl dependencies are not met
2011-08-22Merge branch 'maint'Libravatar Junio C Hamano2-1/+82
* maint: add technical documentation about ref iteration Do not use C++-style comments
2011-08-22add technical documentation about ref iterationLibravatar Heiko Voigt1-0/+81
Signed-off-by: Heiko Voigt <hvoigt@hvoigt.net> Signed-off-by: Junio C Hamano <gitster@pobox.com>
2011-08-22Do not use C++-style commentsLibravatar Michael Haggerty1-1/+1
Detected by "gcc -std=iso9899:1990 ...". This patch applies against "maint". Signed-off-by: Michael Haggerty <mhagger@alum.mit.edu> Signed-off-by: Junio C Hamano <gitster@pobox.com>
2011-08-19commit: reduce use of redundant global variablesLibravatar Junio C Hamano1-42/+45
The file-scope global variable head_sha1[] was used to hold the object name of the current HEAD commit (unless we are about to make an initial commit). Also there is an independent "static int initial_commit". Fix all the functions on the call-chain that use these two variables to take a new "(const) struct commit *current_head" argument instead, and replace their uses, e.g. "if (initial_commit)" becomes "if (!current_head)" and a reference to "head_sha1" becomes "current_head->object.sha1". Signed-off-by: Junio C Hamano <gitster@pobox.com>
2011-08-19branch.c: use the parsed branch nameLibravatar Michael J Gruber2-1/+15
When setting up tracking info, branch.c uses the given branch specifier ("name"). Use the parsed name ("ref.buf") instead so that git branch --set-upstream @{-1} foo sets up tracking info for the previous branch rather than for a branch named "@{-1}". Signed-off-by: Michael J Gruber <git@drmicha.warpmail.net> Signed-off-by: Junio C Hamano <gitster@pobox.com>
2011-08-19mergetools/meld: Use '--output' when availableLibravatar David Aguilar1-1/+24
meld 1.5.0 and newer allow the output file to be specified when merging multiple files. Check whether the meld command supports '--output' and use it when available. Signed-off-by: David Aguilar <davvid@gmail.com> Signed-off-by: Junio C Hamano <gitster@pobox.com>
2011-08-19mergetool--lib: Refactor tools into separate filesLibravatar David Aguilar17-333/+369
Individual merge tools are now defined in a mergetools/$tool file which is sourced at runtime. The individual files are installed into $(git --exec-path)/mergetools/. New tools can be added by creating a new file instead of editing the git-mergetool--lib.sh scriptlet. http://thread.gmane.org/gmane.comp.version-control.git/134906/focus=135006 Signed-off-by: David Aguilar <davvid@gmail.com> Signed-off-by: Junio C Hamano <gitster@pobox.com>
2011-08-19mergetool--lib: Make style consistent with gitLibravatar David Aguilar1-53/+100
Use the predominant conditional style where "then" appears alone on the line after the test expression. Remove spaces after ">" output redirections. Remove unnecessary parentheses around the kdiff3 commands. Signed-off-by: David Aguilar <davvid@gmail.com> Signed-off-by: Junio C Hamano <gitster@pobox.com>
2011-08-19difftool--helper: Make style consistent with gitLibravatar David Aguilar1-6/+12
Use the predominant conditional style where "then" appears alone on the line after the test expression. Signed-off-by: David Aguilar <davvid@gmail.com> Signed-off-by: Junio C Hamano <gitster@pobox.com>
2011-08-18Update draft release notes to 1.7.7Libravatar Junio C Hamano1-0/+6
Signed-off-by: Junio C Hamano <gitster@pobox.com>
2011-08-18Merge branch 'db/am-skip-blank-at-the-beginning'Libravatar Junio C Hamano2-3/+26
* db/am-skip-blank-at-the-beginning: am: ignore leading whitespace before patch
2011-08-18Merge branch 'ma/am-exclude'Libravatar Junio C Hamano2-2/+5
* ma/am-exclude: am: Document new --exclude=<path> option am: pass exclude down to apply
2011-08-18Merge branch 'maint'Libravatar Junio C Hamano1-0/+2
* maint: fetch-pack: check for valid commit from server
2011-08-18fetch-pack: check for valid commit from serverLibravatar Nguyễn Thái Ngọc Duy1-0/+2
A malicious server can return ACK with non-existent SHA-1 or not a commit. lookup_commit() in this case may return NULL. Do not let fetch-pack crash by accessing NULL address in this case. Signed-off-by: Nguyễn Thái Ngọc Duy <pclouds@gmail.com> Signed-off-by: Junio C Hamano <gitster@pobox.com>
2011-08-17Update draft release notes to 1.7.7Libravatar Junio C Hamano1-1/+34
Signed-off-by: Junio C Hamano <gitster@pobox.com>
2011-08-17Merge branch 'mh/check-attr-relative'Libravatar Junio C Hamano14-115/+322
* mh/check-attr-relative: (29 commits) test-path-utils: Add subcommand "prefix_path" test-path-utils: Add subcommand "absolute_path" git-check-attr: Normalize paths git-check-attr: Demonstrate problems with relative paths git-check-attr: Demonstrate problems with unnormalized paths git-check-attr: test that no output is written to stderr Rename git_checkattr() to git_check_attr() git-check-attr: Fix command-line handling to match docs git-check-attr: Drive two tests using the same raw data git-check-attr: Add an --all option to show all attributes git-check-attr: Error out if no pathnames are specified git-check-attr: Process command-line args more systematically git-check-attr: Handle each error separately git-check-attr: Extract a function error_with_usage() git-check-attr: Introduce a new variable git-check-attr: Extract a function output_attr() Allow querying all attributes on a file Remove redundant check Remove redundant call to bootstrap_attr_stack() Extract a function collect_all_attrs() ...
2011-08-17Merge branch 'js/bisect-no-checkout'Libravatar Junio C Hamano7-178/+430
* js/bisect-no-checkout: bisect: add support for bisecting bare repositories bisect: further style nitpicks bisect: replace "; then" with "\n<tab>*then" bisect: cleanup whitespace errors in git-bisect.sh. bisect: add documentation for --no-checkout option. bisect: add tests for the --no-checkout option. bisect: introduce --no-checkout support into porcelain. bisect: introduce support for --no-checkout option. bisect: add tests to document expected behaviour in presence of broken trees. bisect: use && to connect statements that are deferred with eval. bisect: move argument parsing before state modification.