summaryrefslogtreecommitdiff
AgeCommit message (Collapse)AuthorFilesLines
2016-04-13Merge branch 'ep/trace-doc-sample-fix'Libravatar Junio C Hamano1-1/+1
Fix a typo in an example in the trace API documentation. * ep/trace-doc-sample-fix: api-trace.txt: fix typo
2016-04-13Merge branch 'jc/makefile-redirection-stderr'Libravatar Junio C Hamano1-2/+2
A minor fix in the Makefile. * jc/makefile-redirection-stderr: Makefile: fix misdirected redirections
2016-04-13Merge branch 'lt/pretty-expand-tabs'Libravatar Junio C Hamano9-10/+220
When "git log" shows the log message indented by 4-spaces, the remainder of a line after a HT does not align in the way the author originally intended. The command now expands tabs by default in such a case, and allows the users to override it with a new option, '--no-expand-tabs'. * lt/pretty-expand-tabs: pretty: test --expand-tabs pretty: allow tweaking tabwidth in --expand-tabs pretty: enable --expand-tabs by default for selected pretty formats pretty: expand tabs in indented logs to make things line up properly
2016-04-13Merge branch 'mj/pull-rebase-autostash'Libravatar Junio C Hamano3-10/+103
"git pull --rebase" learned "--[no-]autostash" option, so that the rebase.autostash configuration variable set to true can be overridden from the command line. * mj/pull-rebase-autostash: t5520: test --[no-]autostash with pull.rebase=true t5520: reduce commom lines of code t5520: factor out common "failing autostash" code t5520: factor out common "successful autostash" code t5520: use better test to check stderr output t5520: ensure consistent test conditions t5520: use consistent capitalization in test titles pull --rebase: add --[no-]autostash flag git-pull.c: introduce git_pull_config()
2016-04-13Merge branch 'jn/mergetools-examdiff'Libravatar Junio C Hamano3-20/+44
"git mergetools" learned to drive ExamDiff. * jn/mergetools-examdiff: mergetools: add support for ExamDiff mergetools: create mergetool_find_win32_cmd() helper function for winmerge
2016-04-13Merge branch 'es/format-patch-doc-hide-no-patch'Libravatar Junio C Hamano1-1/+1
"git format-patch --help" showed `-s` and `--no-patch` as if these are valid options to the command. We already hide `--patch` option from the documentation, because format-patch is about showing the diff, and the documentation now hides these options as well. * es/format-patch-doc-hide-no-patch: git-format-patch.txt: don't show -s as shorthand for multiple options
2016-04-13Merge branch 'js/mingw-tests-2.8'Libravatar Junio C Hamano2-11/+3
Code clean-up. * js/mingw-tests-2.8: Windows: shorten code by re-using convert_slashes()
2016-04-13Merge branch 'cc/apply'Libravatar Junio C Hamano1-15/+15
Minor code clean-up. * cc/apply: builtin/apply: free patch when parse_chunk() fails builtin/apply: handle parse_binary() failure apply: remove unused call to free() in gitdiff_{old,new}name() builtin/apply: get rid of useless 'name' variable
2016-04-13Merge branch 'sb/misc-cleanups'Libravatar Junio C Hamano4-11/+22
Assorted minor clean-ups. * sb/misc-cleanups: credential-cache, send_request: close fd when done bundle: don't leak an fd in case of early return abbrev_sha1_in_line: don't leak memory notes: don't leak memory in git_config_get_notes_strategy
2016-04-13Merge branch 'sk/send-pack-all-fix'Libravatar Junio C Hamano2-1/+13
"git send-pack --all <there>" was broken when its command line option parsing was written in the 2.6 timeframe. * sk/send-pack-all-fix: git-send-pack: fix --all option when used with directory
2016-04-13Merge branch 'sg/diff-multiple-identical-renames'Libravatar Junio C Hamano2-2/+15
"git diff -M" used to work better when two originally identical files A and B got renamed to X/A and X/B by pairing A to X/A and B to X/B, but this was broken in the 2.0 timeframe. * sg/diff-multiple-identical-renames: diffcore: fix iteration order of identical files during rename detection
2016-04-13Merge branch 'kn/for-each-tag-branch'Libravatar Junio C Hamano1-1/+1
A minor documentation update. * kn/for-each-tag-branch: for-each-ref: fix description of '--contains' in manpage
2016-04-13Merge branch 'ky/branch-d-worktree'Libravatar Junio C Hamano2-8/+20
When "git worktree" feature is in use, "git branch -d" allowed deletion of a branch that is checked out in another worktree * ky/branch-d-worktree: branch -d: refuse deleting a branch which is currently checked out
2016-04-13Merge branch 'rz/worktree-no-checkout'Libravatar Junio C Hamano3-12/+37
"git worktree add" can be given "--no-checkout" option to only create an empty worktree without checking out the files. * rz/worktree-no-checkout: worktree: add: introduce --checkout option
2016-04-13Merge branch 'rt/rebase-i-shorten-stop-report'Libravatar Junio C Hamano1-1/+2
The commit object name reported when "rebase -i" stops has been shortened. * rt/rebase-i-shorten-stop-report: rebase-i: print an abbreviated hash when stop for editing
2016-04-13Merge branch 'rt/completion-help'Libravatar Junio C Hamano1-3/+3
Shell completion (in contrib/) updates. * rt/completion-help: completion: add 'revisions' and 'everyday' to 'git help' completion: add option '--guides' to 'git help'
2016-04-13Merge branch 'ak/use-hashmap-iter-first-in-submodule-config'Libravatar Junio C Hamano1-2/+1
Minor code cleanup. * ak/use-hashmap-iter-first-in-submodule-config: submodule-config: use hashmap_iter_first()
2016-04-13Merge branch 'jk/check-repository-format'Libravatar Junio C Hamano7-114/+167
The repository set-up sequence has been streamlined (the biggest change is that there is no longer git_config_early()), so that we do not attempt to look into refs/* when we know we do not have a Git repository. * jk/check-repository-format: verify_repository_format: mark messages for translation setup: drop repository_format_version global setup: unify repository version callbacks init: use setup.c's repo version verification setup: refactor repo format reading and verification config: drop git_config_early check_repository_format_gently: stop using git_config_early lazily load core.sharedrepository wrap shared_repository global in get/set accessors setup: document check_repository_format()
2016-04-08Third batch for post 2.8 cycleLibravatar Junio C Hamano1-0/+24
Signed-off-by: Junio C Hamano <gitster@pobox.com>
2016-04-08Merge branch 'ss/msvc'Libravatar Junio C Hamano3-2/+6
Build updates for MSVC. * ss/msvc: MSVC: use shipped headers instead of fallback definitions MSVC: vsnprintf in Visual Studio 2015 doesn't need SNPRINTF_SIZE_CORR any more
2016-04-08Merge branch 'oa/doc-diff-check'Libravatar Junio C Hamano1-2/+2
A minor documentation update. * oa/doc-diff-check: Documentation: git diff --check detects conflict markers
2016-04-08Merge branch 'pb/opt-cmdmode-doc'Libravatar Junio C Hamano1-0/+7
Minor API documentation update. * pb/opt-cmdmode-doc: api-parse-options.txt: document OPT_CMDMODE()
2016-04-08Merge branch 'nd/apply-report-skip'Libravatar Junio C Hamano1-0/+2
"git apply -v" learned to report paths in the patch that were skipped via --include/--exclude mechanism or being outside the current working directory. * nd/apply-report-skip: apply: report patch skipping in verbose mode
2016-04-08Merge branch 'nd/apply-doc'Libravatar Junio C Hamano1-1/+3
A minor documentation update. * nd/apply-doc: git-apply.txt: mention the behavior inside a subdir git-apply.txt: remove a space
2016-04-08Merge branch 'jc/merge-refuse-new-root'Libravatar Junio C Hamano12-14/+57
"git merge" used to allow merging two branches that have no common base by default, which led to a brand new history of an existing project created and then get pulled by an unsuspecting maintainer, which allowed an unnecessary parallel history merged into the existing project. The command has been taught not to allow this by default, with an escape hatch "--allow-unrelated-histories" option to be used in a rare event that merges histories of two projects that started their lives independently. * jc/merge-refuse-new-root: merge: refuse to create too cool a merge by default
2016-04-06Second batch for post 2.8 cycleLibravatar Junio C Hamano2-2/+51
Signed-off-by: Junio C Hamano <gitster@pobox.com>
2016-04-06Merge branch 'la/tag-force-signing-annotated-tags'Libravatar Junio C Hamano3-6/+60
"git tag" can create an annotated tag without explicitly given an "-a" (or "-s") option (i.e. when a tag message is given). A new configuration variable, tag.forceSignAnnotated, can be used to tell the command to create signed tag in such a situation. * la/tag-force-signing-annotated-tags: tag: add the option to force signing of annotated tags
2016-04-06Merge branch 'jk/submodule-c-credential'Libravatar Junio C Hamano8-19/+172
"git -c credential.<var>=<value> submodule" can now be used to propagate configuration variables related to credential helper down to the submodules. * jk/submodule-c-credential: git_config_push_parameter: handle empty GIT_CONFIG_PARAMETERS git: submodule honor -c credential.* from command line quote: implement sq_quotef() submodule: fix segmentation fault in submodule--helper clone submodule: fix submodule--helper clone usage submodule: check argc count for git submodule--helper clone submodule: don't pass empty string arguments to submodule--helper clone
2016-04-06Merge branch 'jv/merge-nothing-into-void'Libravatar Junio C Hamano2-5/+15
"git merge FETCH_HEAD" dereferenced NULL pointer when merging nothing into an unborn history (which is arguably unusual usage, which perhaps was the reason why nobody noticed it). * jv/merge-nothing-into-void: merge: fix NULL pointer dereference when merging nothing into void
2016-04-06Merge branch 'ss/commit-squash-msg'Libravatar Junio C Hamano2-1/+38
When "git merge --squash" stopped due to conflict, the concluding "git commit" failed to read in the SQUASH_MSG that shows the log messages from all the squashed commits. * ss/commit-squash-msg: commit: do not lose SQUASH_MSG contents
2016-04-06Merge branch 'sb/rebase-x'Libravatar Junio C Hamano3-22/+10
"git rebase -x" can be used without passing "-i" option. * sb/rebase-x: t3404: cleanup double empty lines between tests rebase: decouple --exec from --interactive
2016-04-06Merge branch 'jk/test-httpd-config-nosystem'Libravatar Junio C Hamano1-0/+1
The tests that involve running httpd leaked the system-wide configuration in /etc/gitconfig to the tested environment. * jk/test-httpd-config-nosystem: t/lib-httpd: pass through GIT_CONFIG_NOSYSTEM env
2016-04-06Merge branch 'jk/send-email-rtrim-mailrc-alias'Libravatar Junio C Hamano1-1/+1
"git send-email" had trouble parsing alias file in mailrc format when lines in it had trailing whitespaces on them. * jk/send-email-rtrim-mailrc-alias: send-email: ignore trailing whitespace in mailrc alias file
2016-04-06Merge branch 'jk/credential-cache-comment-exit'Libravatar Junio C Hamano1-1/+10
A code clarification. * jk/credential-cache-comment-exit: credential-cache--daemon: clarify "exit" action semantics
2016-04-06Merge branch 'sb/clone-t57-t56'Libravatar Junio C Hamano10-0/+0
Rename bunch of tests on "git clone" for better organization. * sb/clone-t57-t56: clone tests: rename t57* => t56*
2016-04-06Merge branch 'ls/p4-map-user'Libravatar Junio C Hamano3-0/+81
"git p4" now allows P4 author names to be mapped to Git author names. * ls/p4-map-user: git-p4: map a P4 user to Git author name and email address
2016-04-06Merge branch 'cc/doc-recommend-performance-trace-to-file'Libravatar Junio C Hamano1-0/+43
A minor documentation update. * cc/doc-recommend-performance-trace-to-file: Documentation: talk about pager in api-trace.txt
2016-04-06Merge branch 'pb/t7502-drop-dup'Libravatar Junio C Hamano1-5/+0
Code clean-up. * pb/t7502-drop-dup: t/t7502 : drop duplicate test
2016-04-06Merge branch 'da/mergetool-delete-delete-conflict'Libravatar Junio C Hamano2-4/+85
"git mergetool" did not work well with conflicts that both sides deleted. * da/mergetool-delete-delete-conflict: mergetool: honor tempfile configuration when resolving delete conflicts mergetool: support delete/delete conflicts
2016-04-06Merge branch 'sb/submodule-parallel-update'Libravatar Junio C Hamano18-62/+445
A major part of "git submodule update" has been ported to C to take advantage of the recently added framework to run download tasks in parallel. * sb/submodule-parallel-update: clone: allow an explicit argument for parallel submodule clones submodule update: expose parallelism to the user submodule helper: remove double 'fatal: ' prefix git submodule update: have a dedicated helper for cloning run_processes_parallel: rename parameters for the callbacks run_processes_parallel: treat output of children as byte array submodule update: direct error message to stderr fetching submodules: respect `submodule.fetchJobs` config option submodule-config: drop check against NULL submodule-config: keep update strategy around
2016-04-06Merge branch 'ss/receive-pack-parse-options'Libravatar Junio C Hamano1-33/+20
The command line argument parser for "receive-pack" has been rewritten to use parse-options. * ss/receive-pack-parse-options: builtin/receive-pack.c: use parse_options API
2016-04-06Merge branch 'ss/exc-flag-is-a-collection-of-bits'Libravatar Junio C Hamano3-9/+9
Code clean-up. * ss/exc-flag-is-a-collection-of-bits: dir: store EXC_FLAG_* values in unsigned integers
2016-04-05api-trace.txt: fix typoLibravatar Elia Pinto1-1/+1
The correct api is trace_printf_key(), not trace_print_key(). Also do not throw a random string at printf(3)-like function; instead, feed it as a parameter that is fed to a "%s" conversion specifier. Signed-off-by: Elia Pinto <gitter.spiros@gmail.com> Signed-off-by: Junio C Hamano <gitster@pobox.com>
2016-04-05Makefile: fix misdirected redirectionsLibravatar Junio C Hamano1-2/+2
In general "echo 2>&1 $msg" to redirect a possible error message that comes from 'echo' itself into the same standard output stream $msg is getting written to does not make any sense; it is not like we are expecting to see any errors out of 'echo' in these statements, and even if it were the case, there is no reason to prevent the error messages from being sent to the standard error stream. These are clearly meant to send the argument given to echo to the standard error stream as error messages. Correctly redirect by saying "send what is written to the standard output to the standard error", i.e. "1>&2" aka ">&2". Signed-off-by: Junio C Hamano <gitster@pobox.com>
2016-04-04pretty: test --expand-tabsLibravatar Junio C Hamano1-0/+105
The test prepares a simple commit with HT on its log message lines, and makes sure that - formats that should or should not expand tabs by default do or do not expand tabs respectively, - with explicit --expand-tabs=<N> and short-hands --expand-tabs (equivalent to --expand-tabs=8) and --no-expand-tabs (equivalent to --expand-tabs=0) before or after the explicit --pretty=$fmt, the tabs are expanded (or not expanded) accordingly. The tests use the second line of the log message for formats other than --pretty=short, primarily because the first line of the email format is handled specially to add the [PATCH] prefix, etc. in a separate codepath (--pretty=short uses the first line because there is no other line to test). Signed-off-by: Junio C Hamano <gitster@pobox.com>
2016-04-04Windows: shorten code by re-using convert_slashes()Libravatar Johannes Sixt2-11/+3
Make a few more spots more readable by using the recently introduced, Windows-specific helper. Signed-off-by: Johannes Sixt <j6t@kdbg.org> Acked-by: Johannes Schindelin <Johannes.Schindelin@gmx.de> Signed-off-by: Junio C Hamano <gitster@pobox.com>
2016-04-04git-format-patch.txt: don't show -s as shorthand for multiple optionsLibravatar Eric Sunshine1-1/+1
git-format-patch recognizes -s as shorthand only for --signoff, however, its documentation shows -s as shorthand for both --signoff and --no-patch. Resolve this confusion by suppressing the bogus -s shorthand for --no-patch. While here, also avoid showing the --no-patch option in git-format-patch documentation since it doesn't make sense to ask to suppress the patch while at the same time explicitly asking to format the patch (which, after all, is the purpose of git-format-patch). Reported-by: Kevin Brodsky <corax26@gmail.com> Signed-off-by: Eric Sunshine <sunshine@sunshineco.com> Signed-off-by: Junio C Hamano <gitster@pobox.com>
2016-04-04t5520: test --[no-]autostash with pull.rebase=trueLibravatar Mehul Jain1-0/+10
The "--[no-]autostash" options for git-pull are only valid in rebase mode (i.e. either --rebase is used or pull.rebase=true). Existing tests already check the cases when --rebase is used but fail to check for pull.rebase=true case. Add two new tests to check that the --[no-]autostash options work with pull.rebase=true. Signed-off-by: Mehul Jain <mehul.jain2029@gmail.com> Reviewed-by: Eric Sunshine <sunshine@sunshineco.com> Signed-off-by: Junio C Hamano <gitster@pobox.com>
2016-04-04t5520: reduce commom lines of codeLibravatar Mehul Jain1-9/+7
These two tests are almost similar and thus can be folded in a for-loop. Helped-by: Eric Sunshine <sunshine@sunshineco.com> Signed-off-by: Mehul Jain <mehul.jain2029@gmail.com> Reviewed-by: Eric Sunshine <sunshine@sunshineco.com> Signed-off-by: Junio C Hamano <gitster@pobox.com>
2016-04-04t5520: factor out common "failing autostash" codeLibravatar Mehul Jain1-15/+11
Three tests contains repetitive lines of code. Factor out common code into test_pull_autostash_fail() and then call it in these tests. Helped-by: Eric Sunshine <sunshine@sunshineco.com> Signed-off-by: Mehul Jain <mehul.jain2029@gmail.com> Reviewed-by: Eric Sunshine <sunshine@sunshineco.com> Signed-off-by: Junio C Hamano <gitster@pobox.com>