summaryrefslogtreecommitdiff
AgeCommit message (Collapse)AuthorFilesLines
2013-09-20Merge branch 'np/lookup-object-hashing'Libravatar Junio C Hamano1-12/+10
Micro optimize hash function used in the object hash table. * np/lookup-object-hashing: lookup_object: remove hashtable_index() and optimize hash_obj()
2013-09-20Merge branch 'hu/cherry-pick-previous-branch'Libravatar Junio C Hamano2-0/+22
Just like "git checkout -" knows to check out and "git merge -" knows to merge the branch you were previously on, "git cherry-pick" now understands "git cherry-pick -" to pick from the previous branch. * hu/cherry-pick-previous-branch: cherry-pick: allow "-" as abbreviation of '@{-1}'
2013-09-20Merge branch 'mm/status-without-comment-char'Libravatar Junio C Hamano11-852/+967
"git status" now omits the prefix to make its output a comment in a commit log editor, which is not necessary for human consumption. We may want to tighten the output to omit unnecessary trailing blank lines, but that does not have to be in the scope of this series. * mm/status-without-comment-char: t7508: avoid non-portable sed expression status: add missing blank line after list of "other" files tests: don't set status.displayCommentPrefix file-wide status: disable display of '#' comment prefix by default submodule summary: ignore --for-status option wt-status: use argv_array API builtin/stripspace.c: fix broken indentation
2013-09-20Merge branch 'rh/peeling-tag-to-tag'Libravatar Junio C Hamano3-3/+15
Make "foo^{tag}" to peel a tag to itself, i.e. no-op., and fail if "foo" is not a tag. "git rev-parse --verify v1.0^{tag}" would be a more convenient way to say "test $(git cat-file -t v1.0) = tag". * rh/peeling-tag-to-tag: peel_onion: do not assume length of x_type globals peel_onion(): add support for <rev>^{tag}
2013-09-20Merge branch 'jx/branch-vv-always-compare-with-upstream'Libravatar Junio C Hamano4-48/+175
"git branch -v -v" (and "git status") did not distinguish among a branch that does not build on any other branch, a branch that is in sync with the branch it builds on, and a branch that is configured to build on some other branch that no longer exists. * jx/branch-vv-always-compare-with-upstream: status: always show tracking branch even no change branch: report invalid tracking branch as gone
2013-09-20Merge branch 'nd/fetch-into-shallow'Libravatar Junio C Hamano12-160/+152
When there is no sufficient overlap between old and new history during a fetch into a shallow repository, we unnecessarily sent objects the sending side knows the receiving end has. * nd/fetch-into-shallow: Add testcase for needless objects during a shallow fetch list-objects: mark more commits as edges in mark_edges_uninteresting list-objects: reduce one argument in mark_edges_uninteresting upload-pack: delegate rev walking in shallow fetch to pack-objects shallow: add setup_temporary_shallow() shallow: only add shallow graft points to new shallow file move setup_alternate_shallow and write_shallow_commits to shallow.c
2013-09-19Merge branch 'jk/config-int-range-check'Libravatar Junio C Hamano1-0/+1
* jk/config-int-range-check: compat/mingw.h: define PRId64
2013-09-19compat/mingw.h: define PRId64Libravatar Johannes Sixt1-0/+1
Provide PRId64 alongside PRIuMAX. Signed-off-by: Johannes Sixt <j6t@kdbg.org> Signed-off-by: Junio C Hamano <gitster@pobox.com>
2013-09-18Merge branch 'maint'Libravatar Junio C Hamano1-0/+50
* maint: Start preparing for 1.8.4.1
2013-09-18Start preparing for 1.8.4.1Libravatar Junio C Hamano2-1/+51
Signed-off-by: Junio C Hamano <gitster@pobox.com>
2013-09-18Merge branch 'bc/completion-for-bash-3.0' into maintLibravatar Junio C Hamano3-3/+7
Some people still use rather old versions of bash, which cannot grok some constructs like 'printf -v varname' the prompt and completion code started to use recently. * bc/completion-for-bash-3.0: contrib/git-prompt.sh: handle missing 'printf -v' more gracefully t9902-completion.sh: old Bash still does not support array+=('') notation git-completion.bash: use correct Bash/Zsh array length syntax
2013-09-18Merge branch 'mm/no-shell-escape-in-die-message' into maintLibravatar Junio C Hamano2-1/+14
Fixes a minor bug in "git rebase -i" (there could be others, as the root cause is pretty generic) where the code feeds a random, data dependeant string to 'echo' and expects it to come out literally. * mm/no-shell-escape-in-die-message: die_with_status: use "printf '%s\n'", not "echo"
2013-09-18Merge branch 'jl/some-submodule-config-are-not-boolean' into maintLibravatar Junio C Hamano2-0/+16
* jl/some-submodule-config-are-not-boolean: avoid segfault on submodule.*.path set to an empty "true"
2013-09-18Merge branch 'tr/log-full-diff-keep-true-parents' into maintLibravatar Junio C Hamano8-3/+134
Output from "git log --full-diff -- <pathspec>" looked strange, because comparison was done with the previous ancestor that touched the specified <pathspec>, causing the patches for paths outside the pathspec to show more than the single commit has changed. * tr/log-full-diff-keep-true-parents: log: use true parents for diff when walking reflogs log: use true parents for diff even when rewriting
2013-09-18Merge branch 'jc/transport-do-not-use-connect-twice-in-fetch' into maintLibravatar Junio C Hamano4-31/+134
The auto-tag-following code in "git fetch" tries to reuse the same transport twice when the serving end does not cooperate and does not give tags that point to commits that are asked for as part of the primary transfer. Unfortunately, Git-aware transport helper interface is not designed to be used more than once, hence this does not work over smart-http transfer. * jc/transport-do-not-use-connect-twice-in-fetch: builtin/fetch.c: Fix a sparse warning fetch: work around "transport-take-over" hack fetch: refactor code that fetches leftover tags fetch: refactor code that prepares a transport fetch: rename file-scope global "transport" to "gtransport" t5802: add test for connect helper
2013-09-18Merge branch 'sp/clip-read-write-to-8mb' into maintLibravatar Junio C Hamano6-27/+26
Send a large request to read(2)/write(2) as a smaller but still reasonably large chunks, which would improve the latency when the operation needs to be killed and incidentally works around broken 64-bit systems that cannot take a 2GB write or read in one go. * sp/clip-read-write-to-8mb: Revert "compat/clipped-write.c: large write(2) fails on Mac OS X/XNU" xread, xwrite: limit size of IO to 8MB
2013-09-18Merge branch 'jk/mailmap-incomplete-line' into maintLibravatar Junio C Hamano2-13/+24
* jk/mailmap-incomplete-line: mailmap: handle mailmap blobs without trailing newlines
2013-09-18Update draft release notes to 1.8.5 for the fourth batch of topicsLibravatar Junio C Hamano1-0/+31
2013-09-18Merge branch 'jc/url-match'Libravatar Junio C Hamano1-1/+5
While normalizing a URL, we forgot that the buffer that holds it could be relocated when it grows, which was a brown-paper-bag bug that can lead to a crash introduced on 'master' post 1.8.4 release. * jc/url-match: urlmatch.c: recompute pointer after append_normalized_escapes
2013-09-18Merge branch 'jc/cvsserver-perm-bit-fix'Libravatar Junio C Hamano1-1/+1
"git cvsserver" computed the permission mode bits incorrectly for executable files. * jc/cvsserver-perm-bit-fix: cvsserver: pick up the right mode bits
2013-09-18Merge branch 'bc/send-email-ssl-die-message-fix'Libravatar Junio C Hamano1-1/+1
When send-email comes up with an error message to die with upon failure to start an SSL session, it tried to read the error string from a wrong place. * bc/send-email-ssl-die-message-fix: send-email: don't call methods on undefined values
2013-09-18Merge branch 'uh/git-svn-serf-fix'Libravatar Junio C Hamano1-0/+8
"git-svn" used with SVN 1.8.0 when talking over https:// connection dumped core due to a bug in the serf library that SVN uses. Work it around on our side, even though the SVN side is being fixed. * uh/git-svn-serf-fix: git-svn: fix termination issues for remote svn connections
2013-09-18Merge branch 'fc/contrib-bzr-hg-fixes'Libravatar Junio C Hamano6-292/+327
* fc/contrib-bzr-hg-fixes: contrib/remote-helpers: quote variable references in redirection targets contrib/remote-helpers: style updates for test scripts remote-hg: use notes to keep track of Hg revisions remote-helpers: cleanup more global variables remote-helpers: trivial style fixes remote-hg: improve basic test remote-hg: add missing &&s in the test remote-hg: fix test remote-bzr: make bzr branches configurable per-repo remote-bzr: fix export of utf-8 authors
2013-09-18Merge branch 'js/add-i-mingw'Libravatar Junio C Hamano1-1/+1
The implementation of "add -i" has a crippling code to work around ActiveState Perl limitation but it by mistake also triggered on Git for Windows where MSYS perl is used. * js/add-i-mingw: add--interactive: fix external command invocation on Windows
2013-09-18Merge branch 'ks/p4-view-spec'Libravatar Junio C Hamano2-165/+61
* ks/p4-view-spec: git p4: implement view spec wildcards with "p4 where" git p4 test: sanitize P4CHARSET
2013-09-18Merge branch 'jk/duplicate-objects-in-packs'Libravatar Junio C Hamano5-3/+316
A packfile that stores the same object more than once is broken and will be rejected by "git index-pack" that is run when receiving data over the wire. * jk/duplicate-objects-in-packs: t5308: check that index-pack --strict detects duplicate objects test index-pack on packs with recoverable delta cycles add tests for indexing packs with delta cycles sha1-lookup: handle duplicate keys with GIT_USE_LOOKUP test-sha1: add a binary output mode
2013-09-18Merge branch 'nd/git-dir-pointing-at-gitfile'Libravatar Junio C Hamano2-5/+8
We made sure that we notice the user-supplied GIT_DIR is actually a gitfile, but did not do the same when the default ".git" is a gitfile. * nd/git-dir-pointing-at-gitfile: Make setup_git_env() resolve .git file when $GIT_DIR is not specified
2013-09-18Merge branch 'jk/pager-bypass-cat-for-default-pager'Libravatar Junio C Hamano1-1/+1
If a build-time fallback is set to "cat" instead of "less", we should apply the same "no subprocess or pipe" optimization as we apply to user-supplied GIT_PAGER=cat. * jk/pager-bypass-cat-for-default-pager: pager: turn on "cat" optimization for DEFAULT_PAGER
2013-09-18Merge branch 'fc/t3200-fixes'Libravatar Junio C Hamano1-6/+7
* fc/t3200-fixes: t: branch: fix broken && chains t: branch: fix typo t: branch: trivial style fix
2013-09-18Merge branch 'fc/rev-parse-test-updates'Libravatar Junio C Hamano1-33/+80
Modernize tests. * fc/rev-parse-test-updates: rev-parse test: use standard test functions for setup rev-parse test: use test_cmp instead of "test" builtin rev-parse test: use test_must_fail, not "if <command>; then false; fi" rev-parse test: modernize quoting and whitespace
2013-09-17Update draft release notes to 1.8.5 for the first half of the fourth batchLibravatar Junio C Hamano1-0/+22
Signed-off-by: Junio C Hamano <gitster@pobox.com>
2013-09-17Merge branch 'jk/remove-remote-helpers-in-python'Libravatar Junio C Hamano16-1815/+0
Remove now disused remote-helpers framework for helpers written in Python. * jk/remove-remote-helpers-in-python: git_remote_helpers: remove little used Python library
2013-09-17Merge branch 'ss/doclinks'Libravatar Junio C Hamano7-10/+10
When we converted many documents that were traditionally text-only to be formatted to AsciiDoc, we did not update links that point at them to refer to the formatted HTML files. * ss/doclinks: Documentation: make AsciiDoc links always point to HTML files
2013-09-17Merge branch 'rh/ishes-doc'Libravatar Junio C Hamano30-83/+118
We liberally use "committish" and "commit-ish" (and "treeish" and "tree-ish"); as these are non-words, let's unify these terms to their dashed form. More importantly, clarify the documentation on object peeling using these terms. * rh/ishes-doc: glossary: fix and clarify the definition of 'ref' revisions.txt: fix and clarify <rev>^{<type>} glossary: more precise definition of tree-ish (a.k.a. treeish) use 'commit-ish' instead of 'committish' use 'tree-ish' instead of 'treeish' glossary: define commit-ish (a.k.a. committish) glossary: mention 'treeish' as an alternative to 'tree-ish'
2013-09-17Merge branch 'dw/diff-no-index-doc'Libravatar Junio C Hamano2-5/+22
When the user types "git diff" outside a working tree, thinking he is inside one, the current error message that is a single-liner "usage: git diff --no-index <path> <path>" may not be sufficient to make him realize the mistake. Add "Not a git repository" to the error message when we fell into the "--no-index" mode without an explicit command line option to instruct us to do so. * dw/diff-no-index-doc: diff --no-index: describe in a separate paragraph diff --no-index: clarify operation when not inside a repository
2013-09-17Merge branch 'ta/user-manual'Libravatar Junio C Hamano1-79/+63
Update the user's manual to more recent versions of Git. * ta/user-manual: "git prune" is safe Remove irrelevant reference from "Tying it all together" Remove unnecessary historical note from "Object storage format" Improve section "Merging multiple trees" Improve section "Manipulating branches" Simplify "How to make a commit" Fix some typos and improve wording Use "git merge" instead of "git pull ." Use current output for "git repack" Use current "detached HEAD" message Call it "Git User Manual" and remove reference to very old Git version
2013-09-17Merge branch 'fc/trivial'Libravatar Junio C Hamano4-16/+12
* fc/trivial: pull: use $curr_branch_short more add: trivial style cleanup reset: trivial style cleanup branch: trivial style fix reset: trivial refactoring
2013-09-17Merge branch 'fc/fast-export'Libravatar Junio C Hamano1-40/+47
Code simpification. * fc/fast-export: fast-export: refactor get_tags_and_duplicates() fast-export: make extra_refs global
2013-09-17Merge branch 'ab/gitweb-author-initials'Libravatar Junio C Hamano1-0/+1
* ab/gitweb-author-initials: gitweb: Fix the author initials in blame for non-ASCII names
2013-09-17Merge branch 'jk/has-sha1-file-retry-packed'Libravatar Junio C Hamano1-1/+4
When an object is not found after checking the packfiles and then loose object directory, read_sha1_file() re-checks the packfiles to prevent racing with a concurrent repacker; teach the same logic to has_sha1_file(). * jk/has-sha1-file-retry-packed: has_sha1_file: re-check pack directory before giving up
2013-09-17Merge branch 'jk/write-broken-index-with-nul-sha1'Libravatar Junio C Hamano3-4/+63
Earlier we started rejecting an attempt to add 0{40} object name to the index and to tree objects, but it sometimes is necessary to allow so to be able to use tools like filter-branch to correct such broken tree objects. * jk/write-broken-index-with-nul-sha1: write_index: optionally allow broken null sha1s
2013-09-17Merge branch 'jx/clean-interactive'Libravatar Junio C Hamano1-2/+2
Finishing touches to update the document to adjust to a new option "git clean" learned recently. * jx/clean-interactive: documentation: clarify notes for clean.requireForce
2013-09-17Merge branch 'tb/precompose-autodetect-fix'Libravatar Junio C Hamano4-7/+4
On MacOS X, we detected if the filesystem needs the "pre-composed unicode strings" workaround, but did not automatically enable it. Now we do. * tb/precompose-autodetect-fix: Set core.precomposeunicode to true on e.g. HFS+
2013-09-17Merge branch 'kk/tests-with-no-perl'Libravatar Junio C Hamano3-44/+67
Some tests were not skipped under NO_PERL build. * kk/tests-with-no-perl: reset test: modernize style t/t7106-reset-unborn-branch.sh: Add PERL prerequisite add -i test: use skip_all instead of repeated PERL prerequisite Make test "using invalid commit with -C" more strict
2013-09-17Merge branch 'ap/commit-author-mailmap'Libravatar Junio C Hamano2-1/+18
"git commit --author=$name", when $name is not in the canonical "A. U. Thor <au.thor@example.xz>" format, looks for a matching name from existing history, but did not consult mailmap to grab the preferred author name. * ap/commit-author-mailmap: commit: search author pattern against mailmap
2013-09-17Merge branch 'jk/free-tree-buffer'Libravatar Junio C Hamano10-23/+24
* jk/free-tree-buffer: clear parsed flag when we free tree buffers
2013-09-17Merge branch 'maint'Libravatar Junio C Hamano1-1/+1
* maint: t7406-submodule-update: add missing &&
2013-09-17t7508: avoid non-portable sed expressionLibravatar Eric Sunshine1-1/+2
2556b996 (status: disable display of '#' comment prefix by default; 2013-09-06) introduced tests which fail on Mac OS X due to unportable use of \t (for TAB) in a sed expression. POSIX [1][2] also disallows it. Fix this. [1]: http://pubs.opengroup.org/onlinepubs/9699919799/utilities/sed.html#tag_20_116_13_02 [2]: http://pubs.opengroup.org/onlinepubs/9699919799/basedefs/V1_chap09.html#tag_09_03_02 Signed-off-by: Eric Sunshine <sunshine@sunshineco.com> Acked-by: Matthieu Moy <Matthieu.Moy@imag.fr> Signed-off-by: Junio C Hamano <gitster@pobox.com>
2013-09-17t7406-submodule-update: add missing &&Libravatar Tay Ray Chuan1-1/+1
322bb6e (2011 Aug 11) introduced a new subshell at the end of a test case but omitted a '&&' to join the two; fix this. Signed-off-by: Tay Ray Chuan <rctay89@gmail.com> Signed-off-by: Junio C Hamano <gitster@pobox.com>
2013-09-12urlmatch.c: recompute pointer after append_normalized_escapesLibravatar Thomas Rast1-1/+5
When append_normalized_escapes is called, its internal strbuf_add* calls can cause the strbuf's buf to be reallocated changing the value of the buf pointer. Do not use the strbuf buf pointer from before any append_normalized_escapes calls afterwards. Instead recompute the needed pointer. Signed-off-by: Thomas Rast <trast@inf.ethz.ch> Signed-off-by: Kyle J. McKay <mackyle@gmail.com> Signed-off-by: Junio C Hamano <gitster@pobox.com>