summaryrefslogtreecommitdiff
AgeCommit message (Collapse)AuthorFilesLines
2013-02-04t5551: fix expected error outputLibravatar Junio C Hamano1-2/+1
We should probably get rid of the check of message instead, but in the meantime this should do. Signed-off-by: Junio C Hamano <gitster@pobox.com>
2013-02-04Verify Content-Type from smart HTTP serversLibravatar Shawn Pearce8-17/+59
Before parsing a suspected smart-HTTP response verify the returned Content-Type matches the standard. This protects a client from attempting to process a payload that smells like a smart-HTTP server response. JGit has been doing this check on all responses since the dawn of time. I mistakenly failed to include it in git-core when smart HTTP was introduced. At the time I didn't know how to get the Content-Type from libcurl. I punted, meant to circle back and fix this, and just plain forgot about it. Signed-off-by: Shawn Pearce <spearce@spearce.org> Signed-off-by: Junio C Hamano <gitster@pobox.com>
2013-01-30Merge branch 'tb/t0050-maint' into maintLibravatar Junio C Hamano1-35/+17
Update tests that were expecting to fail due to a bug that was fixed earlier. * tb/t0050-maint: t0050: Use TAB for indentation t0050: honor CASE_INSENSITIVE_FS in add (with different case) t0050: known breakage vanished in merge (case change)
2013-01-29Merge branch 'nd/fix-directory-attrs-off-by-one' into maintLibravatar Junio C Hamano1-20/+18
The attribute mechanism didn't allow limiting attributes to be applied to only a single directory itself with "path/" like the exclude mechanism does. The initial implementation of this that was merged to 'maint' and 1.8.1.1 had severe performance degradations. * nd/fix-directory-attrs-off-by-one: attr: avoid calling find_basename() twice per path attr: fix off-by-one directory component length calculation
2013-01-29Merge branch 'ph/rebase-preserve-all-merges' into maintLibravatar Junio C Hamano1-1/+6
"git rebase --preserve-merges" lost empty merges in recent versions of Git. * ph/rebase-preserve-all-merges: rebase --preserve-merges: keep all merge commits including empty ones
2013-01-29README: update stale and/or incorrect informationLibravatar Junio C Hamano1-8/+7
Ramkumar Ramachandra noticed that the old address for the marc archive no longer works. Update it to its marc.info address, and also refer to the gmane site. Remove the reference to "note from the maintainer", which is not usually followed by any useful discussion on status, direction nor tasks. Also replace the reference to "What's in git.git" with "What's cooking". Signed-off-by: Junio C Hamano <gitster@pobox.com>
2013-01-28Git 1.8.1.2Libravatar Junio C Hamano2-1/+13
Signed-off-by: Junio C Hamano <gitster@pobox.com>
2013-01-28Merge branch 'ss/help-htmlpath-config-doc' into maintLibravatar Junio C Hamano1-0/+6
* ss/help-htmlpath-config-doc: config.txt: Document help.htmlpath config parameter
2013-01-28Merge branch 'nd/attr-debug-fix' into maintLibravatar Junio C Hamano1-1/+1
* nd/attr-debug-fix: attr: make it build with DEBUG_ATTR again
2013-01-28Merge branch 'ds/completion-silence-in-tree-path-probe' into maintLibravatar Junio C Hamano1-1/+1
* ds/completion-silence-in-tree-path-probe: git-completion.bash: silence "not a valid object" errors
2013-01-28Merge branch 'jn/maint-trim-vim-contrib' into maintLibravatar Junio C Hamano1-13/+3
* jn/maint-trim-vim-contrib: contrib/vim: simplify instructions for old vim support
2013-01-28Merge branch 'pe/doc-email-env-is-trumped-by-config' into maintLibravatar Junio C Hamano1-2/+2
* pe/doc-email-env-is-trumped-by-config: git-commit-tree(1): correct description of defaults
2013-01-28Merge branch 'mk/complete-tcsh' into maintLibravatar Junio C Hamano1-12/+21
Command line completion for "tcsh" emitted an unwanted space after completing a single directory name. * mk/complete-tcsh: Prevent space after directories in tcsh completion
2013-01-28Merge branch 'ap/status-ignored-in-ignored-directory' into maintLibravatar Junio C Hamano3-22/+225
Output from "git status --ignored" did not work well when used with "--untracked". * ap/status-ignored-in-ignored-directory: status: always report ignored tracked directories git-status: Test --ignored behavior dir.c: Make git-status --ignored more consistent
2013-01-28Merge branch 'er/stop-recommending-parsecvs' into maintLibravatar Junio C Hamano1-4/+2
* er/stop-recommending-parsecvs: Remove the suggestion to use parsecvs, which is currently broken.
2013-01-28Merge branch 'mh/ceiling' into maintLibravatar Junio C Hamano11-165/+202
An element on GIT_CEILING_DIRECTORIES list that does not name the real path to a directory (i.e. a symbolic link) could have caused the GIT_DIR discovery logic to escape the ceiling. * mh/ceiling: string_list_longest_prefix(): remove function setup_git_directory_gently_1(): resolve symlinks in ceiling paths longest_ancestor_length(): require prefix list entries to be normalized longest_ancestor_length(): take a string_list argument for prefixes longest_ancestor_length(): use string_list_split() Introduce new function real_path_if_valid() real_path_internal(): add comment explaining use of cwd Introduce new static function real_path_internal()
2013-01-21t0050: Use TAB for indentationLibravatar Torsten Bögershausen1-33/+15
Use one TAB for indentation and remove empty lines Signed-off-by: Torsten Bögershausen <tboegi@web.de> Signed-off-by: Junio C Hamano <gitster@pobox.com>
2013-01-21t0050: honor CASE_INSENSITIVE_FS in add (with different case)Libravatar Torsten Bögershausen1-1/+1
The test case "add (with different case)" indicates a known breakage when run on a case insensitive file system. The test is invalid for case sensitive file system, it will always fail. Check the precondition CASE_INSENSITIVE_FS before running it. Signed-off-by: Torsten Bögershausen <tboegi@web.de> Signed-off-by: Junio C Hamano <gitster@pobox.com>
2013-01-21t0050: known breakage vanished in merge (case change)Libravatar Torsten Bögershausen1-1/+1
This test case has passed since this commit: commit 0047dd2fd1fc1980913901c5fa098357482c2842 Author: Steffen Prohaska <prohaska@zib.de> Date: Thu May 15 07:19:54 2008 +0200 t0050: Fix merge test on case sensitive file systems Remove the known breakage by using test_expect_success Signed-off-by: Torsten Bögershausen <tboegi@web.de> Signed-off-by: Junio C Hamano <gitster@pobox.com>
2013-01-21git-for-each-ref.txt: 'raw' is a supported date formatLibravatar John Keeping1-1/+1
Commit 7dff9b3 (Support 'raw' date format) added a raw date format. Update the git-for-each-ref documentation to include this. Signed-off-by: John Keeping <john@keeping.me.uk> Signed-off-by: Junio C Hamano <gitster@pobox.com>
2013-01-20Start preparing for 1.8.1.2Libravatar Junio C Hamano2-1/+14
Signed-off-by: Junio C Hamano <gitster@pobox.com>
2013-01-20Merge branch 'nz/send-email-headers-are-case-insensitive' into maintLibravatar Junio C Hamano1-5/+5
When users spell "cc:" in lowercase in the fake "header" in the trailer part, "git send-email" failed to pick up the addresses from there. As e-mail headers field names are case insensitive, this script should follow suit and treat "cc:" and "Cc:" the same way. * nz/send-email-headers-are-case-insensitive: git-send-email: treat field names as case-insensitively
2013-01-20Merge branch 'rs/zip-with-uncompressed-size-in-the-header' into maintLibravatar Junio C Hamano1-5/+2
"git archive" did not record uncompressed size in the header when streaming a zip archive, which confused some implementations of unzip. * rs/zip-with-uncompressed-size-in-the-header: archive-zip: write uncompressed size into header even with streaming
2013-01-20Merge branch 'rs/zip-tests' into maintLibravatar Junio C Hamano5-80/+140
* rs/zip-tests: t5003: check if unzip supports symlinks t5000, t5003: move ZIP tests into their own script t0024, t5000: use test_lazy_prereq for UNZIP t0024, t5000: clear variable UNZIP, use GIT_UNZIP instead
2013-01-16attr: avoid calling find_basename() twice per pathLibravatar Duy Nguyen1-27/+18
find_basename() is only used inside collect_all_attrs(), called once in prepare_attr_stack, then again after prepare_attr_stack() returns. Both calls return exact same value. Reorder the code to do the same task once. Also avoid strlen() because we knows the length after finding basename. Signed-off-by: Nguyễn Thái Ngọc Duy <pclouds@gmail.com> Signed-off-by: Junio C Hamano <gitster@pobox.com>
2013-01-15config.txt: Document help.htmlpath config parameterLibravatar Sebastian Staudt1-0/+6
Signed-off-by: Sebastian Staudt <koraktor@gmail.com> Signed-off-by: Junio C Hamano <gitster@pobox.com>
2013-01-15attr: make it build with DEBUG_ATTR againLibravatar Nguyễn Thái Ngọc Duy1-1/+1
Commit 82dce99 (attr: more matching optimizations from .gitignore - 2012-10-15) changed match_attr structure but it did not update DEBUG_ATTR-specific code. This fixes it. Signed-off-by: Nguyễn Thái Ngọc Duy <pclouds@gmail.com> Signed-off-by: Junio C Hamano <gitster@pobox.com>
2013-01-15attr: fix off-by-one directory component length calculationLibravatar Nguyễn Thái Ngọc Duy1-0/+7
94bc671 (Add directory pattern matching to attributes - 2012-12-08) uses find_basename() to calculate the length of directory part in prepare_attr_stack. This function expects the directory without the trailing slash (as "origin" field in match_attr struct is without the trailing slash). find_basename() includes the trailing slash and confuses push/pop algorithm. Consider path = "abc/def" and the push down code: while (1) { len = strlen(attr_stack->origin); if (dirlen <= len) break; cp = memchr(path + len + 1, '/', dirlen - len - 1); if (!cp) cp = path + dirlen; dirlen is 4, not 3, without this patch. So when attr_stack->origin is "abc", it'll miss the exit condition because 4 <= 3 is wrong. It'll then try to push "abc/" down the attr stack (because "cp" would be NULL). So we have both "abc" and "abc/" in the stack. Next time when "abc/ghi" is checked, "abc/" is popped out because of the off-by-one dirlen, only to be pushed back in again by the above code. This repeats for all files in the same directory. Which means at least one failed open syscall per file, or more if .gitattributes exists. This is the perf result with 10 runs on git.git: Test 94bc671^ 94bc671 HEAD ---------------------------------------------------------------------------------------------------------- 7810.1: grep worktree, cheap regex 0.02(0.01+0.04) 0.05(0.03+0.05) +150.0% 0.02(0.01+0.04) +0.0% 7810.2: grep worktree, expensive regex 0.25(0.94+0.01) 0.26(0.94+0.02) +4.0% 0.25(0.93+0.02) +0.0% 7810.3: grep --cached, cheap regex 0.11(0.10+0.00) 0.12(0.10+0.02) +9.1% 0.10(0.10+0.00) -9.1% 7810.4: grep --cached, expensive regex 0.61(0.60+0.01) 0.62(0.61+0.01) +1.6% 0.61(0.60+0.00) +0.0% Reported-by: Ross Lagerwall <rosslagerwall@gmail.com> Signed-off-by: Nguyễn Thái Ngọc Duy <pclouds@gmail.com> Signed-off-by: Junio C Hamano <gitster@pobox.com>
2013-01-14rebase --preserve-merges: keep all merge commits including empty onesLibravatar Phil Hord1-1/+6
Since 90e1818f9a (git-rebase: add keep_empty flag, 2012-04-20) 'git rebase --preserve-merges' fails to preserve empty merge commits unless --keep-empty is also specified. Merge commits should be preserved in order to preserve the structure of the rebased graph, even if the merge commit does not introduce changes to the parent. Teach rebase not to drop merge commits only because they are empty. A special case which is not handled by this change is for a merge commit whose parents are now the same commit because all the previous different parents have been dropped as a result of this rebase or some previous operation. Signed-off-by: Phil Hord <hordp@cisco.com> Acked-by: Neil Horman <nhorman@tuxdriver.com> Signed-off-by: Junio C Hamano <gitster@pobox.com>
2013-01-14Git 1.8.1.1Libravatar Junio C Hamano3-2/+54
Signed-off-by: Junio C Hamano <gitster@pobox.com>
2013-01-14Merge branch 'jk/complete-commit-c' into maintLibravatar Junio C Hamano1-0/+7
* jk/complete-commit-c: completion: complete refs for "git commit -c"
2013-01-14Merge branch 'jk/unify-exit-code-by-receiving-signal' into maintLibravatar Junio C Hamano4-7/+5
* jk/unify-exit-code-by-receiving-signal: run-command: encode signal death as a positive integer
2013-01-14Merge branch 'jn/xml-depends-on-asciidoc-conf' into maintLibravatar Junio C Hamano1-5/+3
* jn/xml-depends-on-asciidoc-conf: docs: manpage XML depends on asciidoc.conf
2013-01-14Merge branch 'jk/maint-fast-import-doc-reorder' into maintLibravatar Junio C Hamano1-46/+52
* jk/maint-fast-import-doc-reorder: git-fast-import(1): reorganise options git-fast-import(1): combine documentation of --[no-]relative-marks
2013-01-14Merge branch 'jk/shortlog-no-wrap-doc' into maintLibravatar Junio C Hamano1-0/+3
* jk/shortlog-no-wrap-doc: git-shortlog(1): document behaviour of zero-width wrap
2013-01-14Merge branch 'jk/maint-fast-import-doc-dedup-done' into maintLibravatar Junio C Hamano1-5/+2
* jk/maint-fast-import-doc-dedup-done: git-fast-import(1): remove duplicate '--done' option
2013-01-14Merge branch 'jc/comment-cygwin-win32api-in-makefile' into maintLibravatar Junio C Hamano1-0/+4
* jc/comment-cygwin-win32api-in-makefile: Makefile: add comment on CYGWIN_V15_WIN32API
2013-01-14Merge branch 'rs/leave-base-name-in-name-field-of-tar' into maintLibravatar Junio C Hamano1-0/+2
A tar archive created by "git archive" recorded a directory in a way that made NetBSD's implementation of "tar" sometimes unhappy. * rs/leave-base-name-in-name-field-of-tar: archive-tar: split long paths more carefully
2013-01-14Merge branch 'jl/interrupt-clone-remove-separate-git-dir' into maintLibravatar Junio C Hamano2-2/+14
When "git clone --separate-git-dir=$over_there" is interrupted, it failed to remove the real location of the $GIT_DIR it created. This was most visible when interrupting a submodule update. * jl/interrupt-clone-remove-separate-git-dir: clone: support atomic operation with --separate-git-dir
2013-01-14Merge branch 'jc/maint-fmt-merge-msg-no-edit-lose-credit' into maintLibravatar Junio C Hamano3-8/+17
"git merge --no-edit" computed who were involved in the work done on the side branch, even though that information is to be discarded without getting seen in the editor. * jc/maint-fmt-merge-msg-no-edit-lose-credit: merge --no-edit: do not credit people involved in the side branch
2013-01-14Merge branch 'jc/apply-trailing-blank-removal' into maintLibravatar Junio C Hamano1-6/+17
"git apply" misbehaved when fixing whitespace breakages by removing excess trailing blank lines. * jc/apply-trailing-blank-removal: apply.c:update_pre_post_images(): the preimage can be truncated
2013-01-14Merge branch 'pf/editor-ignore-sigint' into maintLibravatar Junio C Hamano2-7/+25
The behaviour visible to the end users was confusing, when they attempt to kill a process spawned in the editor that was in turn launched by Git with SIGINT (or SIGQUIT), as Git would catch that signal and die. We ignore these signals now. * pf/editor-ignore-sigint: fix compilation with NO_PTHREADS launch_editor: propagate signals from editor to git run-command: do not warn about child death from terminal launch_editor: ignore terminal signals while editor has control launch_editor: refactor to use start/finish_command run-command: drop silent_exec_failure arg from wait_or_whine
2013-01-14Merge branch 'mk/maint-graph-infinity-loop' into maintLibravatar Junio C Hamano3-6/+16
* mk/maint-graph-infinity-loop: graph.c: infinite loop in git whatchanged --graph -m
2013-01-11Merge branch 'as/api-allocation-doc' into maintLibravatar Junio C Hamano1-6/+8
* as/api-allocation-doc: api-allocation-growing.txt: encourage better variable naming
2013-01-11Merge branch 'jk/enable-test-lint-by-default' into maintLibravatar Junio C Hamano1-0/+1
We have two simple and quick tests to catch common mistakes when writing test scripts, but we did not run them by default when running tests. * jk/enable-test-lint-by-default: tests: turn on test-lint by default
2013-01-11Merge branch 'ap/merge-stop-at-prepare-commit-msg-failure' into maintLibravatar Junio C Hamano2-2/+17
"git merge" started calling prepare-commit-msg hook like "git commit" does some time ago, but forgot to pay attention to the exit status of the hook. * ap/merge-stop-at-prepare-commit-msg-failure: merge: Honor prepare-commit-msg return code
2013-01-11Merge branch 'jc/submittingpatches' into maintLibravatar Junio C Hamano1-84/+91
* jc/submittingpatches: SubmittingPatches: give list and maintainer addresses SubmittingPatches: remove overlong checklist SubmittingPatches: mention subsystems with dedicated repositories SubmittingPatches: who am I and who cares?
2013-01-11Merge branch 'os/gitweb-highlight-uncaptured' into maintLibravatar Junio C Hamano1-1/+1
"gitweb", when sorting by age to show repositories with new activities first, used to sort repositories with absolutely nothing in it early, which was not very useful. * os/gitweb-highlight-uncaptured: gitweb: fix error in sanitize when highlight is enabled
2013-01-11Merge branch 'jn/less-reconfigure' into maintLibravatar Junio C Hamano1-2/+8
When autoconf is used, any build on a different commit always ran "config.status --recheck" even when unnecessary. * jn/less-reconfigure: build: do not automatically reconfigure unless configure.ac changed
2013-01-11Merge branch 'kb/maint-bundle-doc' into maintLibravatar Junio C Hamano1-5/+4
* kb/maint-bundle-doc: Documentation: full-ness of a bundle is significant for cloning Documentation: correct example restore from bundle