summaryrefslogtreecommitdiff
AgeCommit message (Collapse)AuthorFilesLines
2016-05-17Merge branch 'sb/submodule-init'Libravatar Junio C Hamano7-141/+461
Update of "git submodule" to move pieces of logic to C continues. * sb/submodule-init: submodule init: redirect stdout to stderr submodule--helper update-clone: abort gracefully on missing .gitmodules submodule init: fail gracefully with a missing .gitmodules file submodule: port init from shell to C submodule: port resolve_relative_url from shell to C
2016-05-13Twelfth batch for 2.9Libravatar Junio C Hamano1-0/+20
Signed-off-by: Junio C Hamano <gitster@pobox.com>
2016-05-13Merge branch 'sb/submodule-module-list-pathspec-fix'Libravatar Junio C Hamano1-1/+1
* sb/submodule-module-list-pathspec-fix: submodule deinit test: fix broken && chain in subshell
2016-05-13Merge branch 'jc/commit-tree-ignore-commit-gpgsign'Libravatar Junio C Hamano4-10/+16
"git commit-tree" plumbing command required the user to always sign its result when the user sets the commit.gpgsign configuration variable, which was an ancient mistake. Rework "git rebase" that relied on this mistake so that it reads commit.gpgsign and pass (or not pass) the -S option to "git commit-tree" to keep the end-user expectation the same, while teaching "git commit-tree" to ignore the configuration variable. This will stop requiring the users to sign commit objects used internally as an implementation detail of "git stash". * jc/commit-tree-ignore-commit-gpgsign: commit-tree: do not pay attention to commit.gpgsign
2016-05-13git-multimail: update to release 1.3.1Libravatar Matthieu Moy4-4/+20
The changes are described in CHANGES. Signed-off-by: Matthieu Moy <Matthieu.Moy@imag.fr> Signed-off-by: Junio C Hamano <gitster@pobox.com>
2016-05-10Eleventh batch for 2.9Libravatar Junio C Hamano1-0/+21
Signed-off-by: Junio C Hamano <gitster@pobox.com>
2016-05-10Merge branch 'svn/bad-ref' of git://bogomips.org/git-svnLibravatar Junio C Hamano1-1/+2
* 'svn/bad-ref' of git://bogomips.org/git-svn: Git/SVN: die when there is no commit metadata
2016-05-10Merge branch 'sk/gitweb-highlight-encoding'Libravatar Junio C Hamano1-0/+3
Some multi-byte encoding can have a backslash byte as a later part of one letter, which would confuse "highlight" filter used in gitweb. * sk/gitweb-highlight-encoding: gitweb: apply fallback encoding before highlight
2016-05-10Merge branch 'sb/clean-test-fix'Libravatar Junio C Hamano1-1/+1
* sb/clean-test-fix: t7300: mark test with SANITY
2016-05-10Merge branch 'rn/glossary-typofix'Libravatar Junio C Hamano1-1/+1
* rn/glossary-typofix: Documentation: fix typo 'In such these cases'
2016-05-10Merge branch 'ls/travis-submitting-patches'Libravatar Junio C Hamano1-17/+63
* ls/travis-submitting-patches: Documentation: add setup instructions for Travis CI
2016-05-10Merge branch 'js/close-packs-before-gc'Libravatar Junio C Hamano1-0/+1
* js/close-packs-before-gc: t5510: run auto-gc in the foreground
2016-05-10Merge branch 'ew/normal-to-e'Libravatar Junio C Hamano1-0/+1
* ew/normal-to-e: .mailmap: update to my shorter email address
2016-05-10Merge branch 'ls/p4-lfs'Libravatar Junio C Hamano3-10/+24
Recent update to Git LFS broke "git p4" by changing the output from its "lfs pointer" subcommand. * ls/p4-lfs: git-p4: fix Git LFS pointer parsing travis-ci: express Linux/OS X dependency versions more clearly travis-ci: update Git-LFS and P4 to the latest version
2016-05-10Merge branch 'sb/misc-cleanups'Libravatar Junio C Hamano2-10/+7
* sb/misc-cleanups: submodule-config: don't shadow `cache` config.c: drop local variable
2016-05-10Merge branch 'ew/doc-split-pack-disables-bitmap'Libravatar Junio C Hamano4-9/+23
Doc update. * ew/doc-split-pack-disables-bitmap: pack-objects: warn on split packs disabling bitmaps
2016-05-08Git/SVN: die when there is no commit metadataLibravatar Christian Couder1-1/+2
When passing a bad --trunk option to `git svn clone`, like for example the same URL that we are cloning: C:\Windows\system32>git svn clone https://mycompany.svn.beanstalkapp.com/myproject --no-metadata -A c:\temp\svn_to_git_users.txt --trunk=https://mycompany.svn.beanstalkapp.com/myproject --tags=https://mycompany.svn.beanstalkapp.com/myproject/tags --branches=https://mycompany.svn.beanstalkapp.com/myproject/branches c:\code\Git_myproject One gets an "Use of uninitialized value $u in substitution (s///)" error: [...] W: +empty_dir: branches/20080918_DBDEPLOY/vendor/src/csharp/MS WCSF Contrib/src/Services W: +empty_dir: branches/20080918_DBDEPLOY/vendor/src/csharp/RealWorldControls/References r530 = c276e3b039d8e38759c6fb17443349732552d7a2 (refs/remotes/origin/trunk) Found possible branch point: https://mycompany.svn.beanstalkapp.com/myproject/trunk => https://mycompany.svn.beanstalkapp.com/myproject/branches/20080918_DBDEPLOY, 529 Use of uninitialized value $u in substitution (s///) at /mingw32/share/perl5/site_perl/Git/SVN.pm line 101. Use of uninitialized value $u in concatenation (.) or string at /mingw32/share/perl5/site_perl/Git/SVN.pm line 101. refs/remotes/origin/trunk: 'https://mycompany.svn.beanstalkapp.com/myproject' not found in '' C:\Windows\system32> Let's fix that by just die()ing when we have an uninitialized value because we cannot get commit metadata from a ref. Signed-off-by: Christian Couder <chriscool@tuxfamily.org> Signed-off-by: Eric Wong <e@80x24.org>
2016-05-06Sync with maintLibravatar Junio C Hamano1-0/+9
* maint: Almost ready for 2.8.3
2016-05-06Almost ready for 2.8.3Libravatar Junio C Hamano1-0/+9
Signed-off-by: Junio C Hamano <gitster@pobox.com>
2016-05-06Merge branch 'sb/submodule-path-misc-bugs' into maintLibravatar Junio C Hamano3-11/+133
"git submodule" reports the paths of submodules the command recurses into, but this was incorrect when the command was not run from the root level of the superproject. * sb/submodule-path-misc-bugs: t7407: make expectation as clear as possible submodule update: test recursive path reporting from subdirectory submodule update: align reporting path for custom command execution submodule status: correct path handling in recursive submodules submodule update --init: correct path handling in recursive submodules submodule foreach: correct path display in recursive submodules
2016-05-06Merge branch 'ky/imap-send-openssl-1.1.0' into maintLibravatar Junio C Hamano5-28/+21
Upcoming OpenSSL 1.1.0 will break compilation b updating a few APIs we use in imap-send, which has been adjusted for the change. * ky/imap-send-openssl-1.1.0: configure: remove checking for HMAC_CTX_cleanup imap-send: avoid deprecated TLSv1_method() imap-send: check NULL return of SSL_CTX_new() imap-send: use HMAC() function provided by OpenSSL
2016-05-06Merge branch 'js/replace-edit-use-editor-configuration' into maintLibravatar Junio C Hamano1-0/+1
"git replace -e" did not honour "core.editor" configuration. * js/replace-edit-use-editor-configuration: replace --edit: respect core.editor
2016-05-06Merge branch 'cc/apply' into maintLibravatar 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-05-06Merge branch 'kn/for-each-tag-branch' into maintLibravatar Junio C Hamano1-1/+1
A minor documentation update. * kn/for-each-tag-branch: for-each-ref: fix description of '--contains' in manpage
2016-05-06Tenth batch for 2.9Libravatar Junio C Hamano1-2/+30
Signed-off-by: Junio C Hamano <gitster@pobox.com>
2016-05-06Merge branch 'jk/diff-compact-heuristic'Libravatar Junio C Hamano3-4/+49
Patch output from "git diff" and friends has been tweaked to be more readable by using a blank line as a strong hint that the contents before and after it belong to a logically separate unit. * jk/diff-compact-heuristic: diff: undocument the compaction heuristic knobs for experimentation xdiff: implement empty line chunk heuristic xdiff: add recs_match helper function
2016-05-06Merge branch 'ls/p4-lfs-test-fix-2.7.0'Libravatar Junio C Hamano1-1/+1
Fix a broken test. * ls/p4-lfs-test-fix-2.7.0: t9824: fix wrong reference value t9824: fix broken &&-chain in a subshell
2016-05-06Merge branch 'bc/object-id'Libravatar Junio C Hamano21-98/+109
Move from unsigned char[20] to struct object_id continues. * bc/object-id: match-trees: convert several leaf functions to use struct object_id tree-walk: convert tree_entry_extract() to use struct object_id struct name_entry: use struct object_id instead of unsigned char sha1[20] match-trees: convert shift_tree() and shift_tree_by() to use object_id test-match-trees: convert to use struct object_id sha1-name: introduce a get_oid() function
2016-05-06Merge branch 'bw/rebase-merge-entire-branch'Libravatar Junio C Hamano3-3/+14
"git rebase -m" could be asked to rebase an entire branch starting from the root, but failed by assuming that there always is a parent commit to the first commit on the branch. * bw/rebase-merge-entire-branch: git-rebase--merge: don't include absent parent as a base
2016-05-06Merge branch 'jc/drop-git-spec-in'Libravatar Junio C Hamano2-343/+6
As nobody maintains our in-tree git.spec.in and distros use their own spec file, we stopped pretending that we support "make rpm". * jc/drop-git-spec-in: Makefile: remove dependency on git.spec Makefile: stop pretending to support rpmbuild
2016-05-06Merge branch 'js/http-custom-headers'Libravatar Junio C Hamano7-10/+61
HTTP transport clients learned to throw extra HTTP headers at the server, specified via http.extraHeader configuration variable. * js/http-custom-headers: http: support sending custom HTTP headers
2016-05-06Merge branch 'sb/clone-shallow-passthru'Libravatar Junio C Hamano3-3/+100
"git clone" learned "--shallow-submodules" option. * sb/clone-shallow-passthru: clone: add `--shallow-submodules` flag
2016-05-06Merge branch 'ld/p4-test-py3'Libravatar Junio C Hamano2-6/+7
The test scripts for "git p4" (but not "git p4" implementation itself) has been updated so that they would work even on a system where the installed version of Python is python 3. * ld/p4-test-py3: git-p4 tests: time_in_seconds should use $PYTHON_PATH git-p4 tests: work with python3 as well as python2 git-p4 tests: cd to / before running python
2016-05-06Merge branch 'sb/config-exit-status-list'Libravatar Junio C Hamano1-3/+3
Doc update. * sb/config-exit-status-list: config doc: improve exit code listing
2016-05-03Sync with maintLibravatar Junio C Hamano8-143/+476
* maint: git-multimail: update to release 1.3.0
2016-05-03Ninth batch for 2.9Libravatar Junio C Hamano1-46/+30
Signed-off-by: Junio C Hamano <gitster@pobox.com>
2016-05-03Merge branch 'nf/mergetool-prompt'Libravatar Junio C Hamano4-5/+5
UI consistency improvements. * nf/mergetool-prompt: difftool/mergetool: make the form of yes/no questions consistent
2016-05-03Merge branch 'jd/send-email-to-whom'Libravatar Junio C Hamano1-2/+3
A question by "git send-email" to ask the identity of the sender has been updated. * jd/send-email-to-whom: send-email: fix grammo in the prompt that asks e-mail recipients
2016-05-03Merge branch 'rt/string-list-lookup-cleanup'Libravatar Junio C Hamano1-4/+4
Code cleanup. * rt/string-list-lookup-cleanup: string_list: use string-list API in unsorted_string_list_lookup()
2016-05-03Merge branch 'jk/fix-attribute-macro-in-2.5'Libravatar Junio C Hamano1-1/+1
Code fixup. * jk/fix-attribute-macro-in-2.5: remote.c: spell __attribute__ correctly
2016-05-03Merge branch 'sg/test-lib-simplify-expr-away'Libravatar Junio C Hamano1-5/+5
Code cleanup. * sg/test-lib-simplify-expr-away: test-lib: simplify '--option=value' parsing
2016-05-03Merge branch 'nd/remove-unused'Libravatar Junio C Hamano4-27/+0
Code cleanup. * nd/remove-unused: wrapper.c: delete dead function git_mkstemps() dir.c: remove dead function fnmatch_icase()
2016-05-03Merge branch 'js/name-rev-use-oldest-ref'Libravatar Junio C Hamano2-7/+14
"git describe --contains" often made a hard-to-justify choice of tag to give name to a given commit, because it tried to come up with a name with smallest number of hops from a tag, causing an old commit whose close descendant that is recently tagged were not described with respect to an old tag but with a newer tag. It did not help that its computation of "hop" count was further tweaked to penalize being on a side branch of a merge. The logic has been updated to favor using the tag with the oldest tagger date, which is a lot easier to explain to the end users: "We describe a commit in terms of the (chronologically) oldest tag that contains the commit." * js/name-rev-use-oldest-ref: name-rev: include taggerdate in considering the best name
2016-05-03Merge branch 'jd/p4-jobs-in-commit'Libravatar Junio C Hamano4-42/+162
"git p4" learned to record P4 jobs in Git commit that imports from the history in Perforce. * jd/p4-jobs-in-commit: git-p4: add P4 jobs to git commit message git-p4: clean-up code style in tests
2016-05-03Merge branch 'en/merge-fixes'Libravatar Junio C Hamano1-5/+3
"merge-recursive" strategy incorrectly checked if a path that is involved in its internal merge exists in the working tree. * en/merge-fixes: merge-recursive: do not check working copy when creating a virtual merge base merge-recursive: remove duplicate code
2016-05-03git-multimail: update to release 1.3.0Libravatar Matthieu Moy8-143/+476
The changes are described in CHANGES. Contributions-by: Matthieu Moy <Matthieu.Moy@imag.fr> Contributions-by: Stefan Tatschner <rumpelsepp@sevenbyte.org> Contributions-by: Simon P <simon.git@le-huit.fr> Contributions-by: Leander Hasty <leander@1stplayable.com> Signed-off-by: Matthieu Moy <Matthieu.Moy@imag.fr> Signed-off-by: Junio C Hamano <gitster@pobox.com>
2016-05-03t7300: mark test with SANITYLibravatar Stefan Beller1-1/+1
The test runs `chmod 0` on a file to test a case where Git fails to read it, but that would not work if it is run as root. Reported-by: Jan Keromnes <janx@linux.com> Fix-proposed-by: Junio C Hamano <gitster@pobox.com> Signed-off-by: Stefan Beller <sbeller@google.com> Signed-off-by: Junio C Hamano <gitster@pobox.com>
2016-05-03gitweb: apply fallback encoding before highlightLibravatar Shin Kojima1-0/+3
Some multi-byte character encodings (such as Shift_JIS and GBK) have characters whose final bytes is an ASCII '\' (0x5c), and they will be displayed as funny-characters even if $fallback_encoding is correct. This is because `highlight` command always expects UTF-8 encoded strings from STDIN. $ echo 'my $v = "申";' | highlight --syntax perl | w3m -T text/html -dump my $v = "申"; $ echo 'my $v = "申";' | iconv -f UTF-8 -t Shift_JIS | highlight \ --syntax perl | iconv -f Shift_JIS -t UTF-8 | w3m -T text/html -dump iconv: (stdin):9:135: cannot convert my $v = " This patch prepare git blob objects to be encoded into UTF-8 before highlighting in the manner of `to_utf8` subroutine. Signed-off-by: Shin Kojima <shin@kojima.org> Reviewed-by: Jakub Narębski <jnareb@gmail.com> Signed-off-by: Junio C Hamano <gitster@pobox.com>
2016-05-03commit-tree: do not pay attention to commit.gpgsignLibravatar Junio C Hamano4-10/+16
ba3c69a9 (commit: teach --gpg-sign option, 2011-10-05) introduced a "signed commit" by teaching the --[no]-gpg-sign option and the commit.gpgsign configuration variable to various commands that create commits. Teaching these to "git commit" and "git merge", both of which are end-user facing Porcelain commands, was perfectly fine. Allowing the plumbing "git commit-tree" to suddenly change the behaviour to surprise the scripts by paying attention to commit.gpgsign was not. Among the in-tree scripts, filter-branch, quiltimport, rebase and stash are the commands that run "commit-tree". If any of these wants to allow users to always sign every single commit, they should offer their own configuration (e.g. "filterBranch.gpgsign") with an option to disable signing (e.g. "git filter-branch --no-gpgsign"). Ignoring commit.gpgsign option _obviously_ breaks the backward compatibility, but it is easy to follow the standard pattern in scripts to honor whatever configuration variable they choose to follow. E.g. case $(git config --bool commit.gpgsign) in true) sign=-S ;; *) sign= ;; esac && git commit-tree $sign ...whatever other args... Do so to make sure that "git rebase" keeps paying attention to the configuration variable, which unfortunately is a documented mistake. Helped-by: Jeff King <peff@peff.net> Signed-off-by: Junio C Hamano <gitster@pobox.com>
2016-05-03submodule init: redirect stdout to stderrLibravatar Stefan Beller2-7/+20
Reroute the output of stdout to stderr as it is just informative messages, not to be consumed by machines. This should not regress any scripts that try to parse the current output, as the output is already internationalized and therefore unstable. We want to init submodules from the helper for `submodule update` in a later patch and the stdout output of said helper is consumed by the parts of `submodule update` which are still written in shell. So we have to be careful which messages are on stdout. Signed-off-by: Stefan Beller <sbeller@google.com> Signed-off-by: Junio C Hamano <gitster@pobox.com>