summaryrefslogtreecommitdiff
AgeCommit message (Collapse)AuthorFilesLines
2012-05-11dir: simplify fill_directory()Libravatar René Scharfe1-8/+1
Now that read_directory_recursive() (reached through read_directory()) respects the string length limit we provide, we don't need to create a NUL-limited copy of the common prefix anymore. Signed-off-by: Rene Scharfe <rene.scharfe@lsrfire.ath.cx> Signed-off-by: Junio C Hamano <gitster@pobox.com>
2012-05-11dir: respect string length argument of read_directory_recursive()Libravatar René Scharfe1-8/+8
A directory name is passed to read_directory_recursive() as a length-limited string, through the parameters base and baselen. Suprisingly, base must be a NUL-terminated string as well, as it is passed to opendir(), ignoring baselen. Fix this by postponing the call to opendir() until the length-limted string is added to a strbuf, which provides a NUL in the right place. Signed-off-by: Rene Scharfe <rene.scharfe@lsrfire.ath.cx> Signed-off-by: Junio C Hamano <gitster@pobox.com>
2012-05-08Merge branch 'rs/maint-dir-strbuf' into rs/dir-strbufLibravatar Junio C Hamano1-39/+37
By René Scharfe * rs/maint-dir-strbuf: dir: convert to strbuf
2012-05-08dir: convert to strbufLibravatar René Scharfe1-39/+36
The functions read_directory_recursive() and treat_leading_path() both use buffers sized to fit PATH_MAX characters. The latter can be made to overrun its buffer, e.g. like this: $ a=0123456789abcdef $ a=$a$a$a$a$a$a$a$a $ a=$a$a$a$a$a$a$a$a $ a=$a$a$a$a$a$a$a$a $ git add $a/a Instead of trying to add a check and potentionally forgetting to address similar cases, convert the involved functions and their helpers to use struct strbuf. The patch is suprisingly large because the helpers treat_path() and treat_one_path() modify the buffer as well and thus need to be converted, too. Signed-off-by: Rene Scharfe <rene.scharfe@lsrfire.ath.cx> Signed-off-by: Junio C Hamano <gitster@pobox.com>
2012-05-07The ninth batch of topics graduated to 'master'Libravatar Junio C Hamano1-50/+19
Signed-off-by: Junio C Hamano <gitster@pobox.com>
2012-05-07Merge branch 'nh/empty-rebase'Libravatar Junio C Hamano1-3/+11
By Neil Horman * nh/empty-rebase: git cherry-pick: do not dereference a potential NULL pointer
2012-05-07Merge branch 'zj/diff-empty-chmod'Libravatar Junio C Hamano2-34/+74
"git diff --stat" used to fully count a binary file with modified execution bits whose contents is unmodified, which was not right. By Zbigniew Jędrzejewski-Szmek (4) and Johannes Sixt (1) * zj/diff-empty-chmod: t4006: Windows do not have /dev/zero diff --stat: do not run diff on indentical files diff --stat: report mode-only changes for binary files like text files tests: check --[short]stat output after chmod test: modernize style of t4006 Conflicts: diff.c
2012-05-07Merge branch 'jk/maint-tformat-with-z'Libravatar Junio C Hamano2-1/+29
"log -z --pretty=tformat:..." does not terminate each record with NUL and this is a beginning of an attempt to fix it. It still is not right but the patch does not make externally observable behaviour worse. By Jan Krüger (1) and Junio C Hamano (1) * jk/maint-tformat-with-z: log-tree: the previous one is still not quite right log-tree: use custom line terminator in line termination mode
2012-05-07Merge branch 'th/difftool-diffall'Libravatar Junio C Hamano4-87/+398
Rolls the two-directory-diff logic from diffall script (in contrib/) into "git difftool" framework. By Tim Henigan * th/difftool-diffall: difftool: print list of valid tools with '--tool-help' difftool: teach difftool to handle directory diffs difftool: eliminate setup_environment function difftool: stop appending '.exe' to git difftool: remove explicit change of PATH difftool: exit(0) when usage is printed difftool: add '--no-gui' option difftool: parse options using Getopt::Long
2012-05-07Sync with maintLibravatar Junio C Hamano2-2/+49
2012-05-07Start preparing for 1.7.10.2Libravatar Junio C Hamano2-1/+47
Signed-off-by: Junio C Hamano <gitster@pobox.com>
2012-05-07Merge branch 'jk/maint-gitweb-test-use-sane-perl' into maintLibravatar Junio C Hamano3-3/+3
When using a Perl script on a system where "perl" found on user's $PATH could be ancient or otherwise broken, we allow builders to specify the path to a good copy of Perl with $PERL_PATH. The gitweb test forgot to use that Perl when running its test. By Jeff King (1) and Zbigniew Jędrzejewski-Szmek (1) * jk/maint-gitweb-test-use-sane-perl: Consistently use perl from /usr/bin/ for scripts t/gitweb-lib: use $PERL_PATH to run gitweb
2012-05-07Merge branch 'js/daemon-test-race-fix' into maintLibravatar Junio C Hamano1-11/+11
The test scaffolding for git-daemon was flaky. By Johannes Sixt * js/daemon-test-race-fix: t5570: fix forwarding of git-daemon messages via cat
2012-05-07Merge branch 'jk/maint-config-bogus-section' into maintLibravatar Junio C Hamano2-1/+31
"git config --rename-section" to rename an existing section into a bogus one did not check the new name. By Jeff King * jk/maint-config-bogus-section: config: reject bogus section names for --rename-section
2012-05-07Merge branch 'pw/t5800-import-race-fix' into maintLibravatar Junio C Hamano2-0/+20
The test scaffolding for fast-import was flaky. By Pete Wyckoff * pw/t5800-import-race-fix: git-remote-testgit: fix race when spawning fast-import
2012-05-07Merge branch 'rt/cherry-revert-conflict-summary' into maintLibravatar Junio C Hamano1-1/+1
In the older days, the header "Conflicts:" in "cherry-pick" and "merge" was separated by a blank line from the list of paths that follow for readability, but when "merge" was rewritten in C, we lost it by mistake. Remove the newline from "cherry-pick" to make them match again. By Ralf Thielow * rt/cherry-revert-conflict-summary: sequencer: remove additional blank line
2012-05-07Merge branch 'cb/maint-report-mount-point-correctly-in-setup' into maintLibravatar Junio C Hamano1-9/+13
The filesystem boundary was not correctly reported when .git directory discovery stopped at a mount point. By Clemens Buchacher * cb/maint-report-mount-point-correctly-in-setup: properly keep track of current working directory
2012-05-07git p4 doc: fix formattingLibravatar Pete Wyckoff1-1/+3
Attach example sections to previous level of indenting. Fix a trailing :: Signed-off-by: Pete Wyckoff <pw@padd.com> Signed-off-by: Junio C Hamano <gitster@pobox.com>
2012-05-04Makefile: keep many variable list sortedLibravatar Nguyễn Thái Ngọc Duy1-13/+13
We tend to keep long lists sorted (extensions are not taken into account), which helps spot a name easily by eye. Rearrange a few items so these lists remain sorted. Signed-off-by: Nguyễn Thái Ngọc Duy <pclouds@gmail.com> Signed-off-by: Junio C Hamano <gitster@pobox.com>
2012-05-03git cherry-pick: do not dereference a potential NULL pointerLibravatar Neil Horman1-3/+11
In the case the pointer could be NULL, the function that gave the caller the NULL pointer would already have issued an error message, so simply returning early with an error status without issuing a new message is sufficient. The same for parse_commit() that will show necessary error message when the argument is not NULL, and will return error silently when the argument is NULL. Noticed-by: Michael Mueller Signed-off-by: Neil Horman <nhorman@tuxdriver.com> Signed-off-by: Junio C Hamano <gitster@pobox.com>
2012-05-03Merge branch 'maint'Libravatar Junio C Hamano0-0/+0
* maint:
2012-05-03Merge branch 'jc/merge-reduce-parents-early' into maintLibravatar Junio C Hamano5-71/+276
Octopus merge strategy did not reduce heads that are recorded in the final commit correctly. By Junio C Hamano (4) and Michał Kiedrowicz (1) * jc/merge-reduce-parents-early: fmt-merge-msg: discard needless merge parents builtin/merge.c: reduce parents early builtin/merge.c: collect other parents early builtin/merge.c: remove "remoteheads" global variable merge tests: octopus with redundant parents
2012-05-03Merge branch 'cb/cherry-pick-rev-path-confusion' into maintLibravatar Junio C Hamano3-11/+19
The command line parser choked "git cherry-pick $name" when $name can be both revision name and a pathname, even though $name can never be a path in the context of the command. By Clemens Buchacher * cb/cherry-pick-rev-path-confusion: cherry-pick: do not expect file arguments
2012-05-03Merge branch 'cb/http-multi-curl-auth' into maintLibravatar Junio C Hamano2-10/+26
HTTP transport that requires authentication did not work correctly when multiple connections are used simultaneously. By Jeff King (3) and Clemens Buchacher (1) * cb/http-multi-curl-auth: http: use newer curl options for setting credentials http: clean up leak in init_curl_http_auth fix http auth with multiple curl handles http auth fails with multiple curl handles
2012-05-03Merge branch 'mb/fetch-call-a-non-branch-a-ref' into maintLibravatar Junio C Hamano2-4/+43
The report from "git fetch" said "new branch" even for a non branch ref. By Marc Branchaud * mb/fetch-call-a-non-branch-a-ref: fetch: describe new refs based on where it came from fetch: Give remote_ref to update_local_ref() as well
2012-05-03Merge branch 'rl/maint-stash-i18n-save-error' into maintLibravatar Junio C Hamano1-2/+2
i18n marking for an error message for "git stash --notavalidoption" was incorrect. By Ross Lagerwall * rl/maint-stash-i18n-save-error: stash: use eval_gettextln correctly
2012-05-03Merge branch 'jm/maint-strncpy-diff-no-index' into maintLibravatar Junio C Hamano1-21/+17
"diff --no-index" codepath had a few places that used fixed-size buffer and truncated paths that are too long. By Jim Meyering (1) and Junio C Hamano (1) * jm/maint-strncpy-diff-no-index: diff --no-index: use strbuf for temporary pathnames diff: avoid stack-buffer-read-overrun for very long name
2012-05-03Merge branch 'jk/maint-push-progress'Libravatar Junio C Hamano3-2/+39
"git push" over smart-http lost progress output and this resurrects it. By Jeff King * jk/maint-push-progress: t5541: test more combinations of --progress teach send-pack about --[no-]progress send-pack: show progress when isatty(2)
2012-05-03Merge branch 'nd/columns'Libravatar Junio C Hamano27-48/+1105
A couple of commands learn --column option to produce columnar output. By Nguyễn Thái Ngọc Duy (9) and Zbigniew Jędrzejewski-Szmek (1) * nd/columns: tag: add --column column: support piping stdout to external git-column process status: add --column branch: add --column help: reuse print_columns() for help -a column: add dense layout support t9002: work around shells that are unable to set COLUMNS to 1 column: add columnar layout Stop starting pager recursively Add column layout skeleton and git-column
2012-05-03doc/config: fix inline literalsLibravatar Jeff King1-2/+2
Since commit 6cf378f, asciidoc backticks are now inline literals; therefore quoting {tilde} inside them is wrong (this instance was missed in 6cf378f because it happened on a parallel line of development). Signed-off-by: Jeff King <peff@peff.net> Signed-off-by: Junio C Hamano <gitster@pobox.com>
2012-05-02The eighth batch of topics graduated to 'master'Libravatar Junio C Hamano1-32/+42
Signed-off-by: Junio C Hamano <gitster@pobox.com>
2012-05-02Merge branch 'master' of git://git.bogomips.org/git-svnLibravatar Junio C Hamano1-7/+25
via Eric Wong * 'master' of git://git.bogomips.org/git-svn: git-svn: introduce SVN version comparison function
2012-05-02Merge branch 'tr/xdiff-fast-hash'Libravatar Junio C Hamano2-0/+118
Use word-at-a-time comparison to find end of line or NUL (end of buffer), borrowed from the linux-kernel discussion. By Thomas Rast * tr/xdiff-fast-hash: xdiff: choose XDL_FAST_HASH code on sizeof(long) instead of __WORDSIZE xdiff: load full words in the inner loop of xdl_hash_record
2012-05-02Merge branch 'jk/maint-gitweb-test-use-sane-perl'Libravatar Junio C Hamano3-3/+3
When using a Perl script on a system where "perl" found on user's $PATH could be ancient or otherwise broken, we allow builders to specify the path to a good copy of Perl with $PERL_PATH. The gitweb test forgot to use that Perl when running its test. By Jeff King (1) and Zbigniew Jędrzejewski-Szmek (1) * jk/maint-gitweb-test-use-sane-perl: Consistently use perl from /usr/bin/ for scripts t/gitweb-lib: use $PERL_PATH to run gitweb
2012-05-02Merge branch 'pw/message-cleanup'Libravatar Junio C Hamano15-24/+24
Many error/warning messages had extra trailing newlines that are unnecessary. By Pete Wyckoff * pw/message-cleanup: remove blank filename in error message remove superfluous newlines in error messages
2012-05-02Merge branch 'zj/diff-stat-smaller-num-columns'Libravatar Junio C Hamano77-353/+400
Spend only minimum number of columns necessary to show the number of lines in the output from "diff --stat", instead of always allocating 4 columns even when showing changes that are much smaller than 1000 lines. By Zbigniew Jędrzejewski-Szmek * zj/diff-stat-smaller-num-columns: diff --stat: use less columns for change counts
2012-05-02Merge branch 'pw/p4-various'Libravatar Junio C Hamano4-35/+308
Miscellaneous updates to "git p4". By Pete Wyckoff * pw/p4-various: git p4: submit files with wildcards git p4: fix writable file after rename or copy git p4: test submit git p4: bring back files in deleted client directory
2012-05-02Merge branch 'jc/rerere-train'Libravatar Junio C Hamano1-1/+1
A script written long time ago proved to be useful this week for me ;-) with a minor tweak. * jc/rerere-train: contrib/rerere-train: use installed git-sh-setup
2012-05-02Merge branch 'ab/i18n'Libravatar Junio C Hamano2-45/+44
Fix some constructs that build messages meant for i18n by concatenating pieces of strings. By Ævar Arnfjörð Bjarmason * ab/i18n: git-commit: remove lego in i18n messages git-commit: remove lego in i18n messages git-branch: remove lego in i18n messages
2012-05-02Merge branch 'lp/diffstat-with-graph'Libravatar Junio C Hamano4-6/+130
"log --graph" was not very friendly with "--stat" option and its output had line breaks at wrong places. By Lucian Poston (5) and Zbigniew Jędrzejewski-Szmek (2) * lp/diffstat-with-graph: t4052: work around shells unable to set COLUMNS to 1 Prevent graph_width of stat width from falling below min t4052: Test diff-stat output with minimum columns t4052: Adjust --graph --stat output for prefixes Adjust stat width calculations to take --graph output into account Add output_prefix_length to diff_options t4052: test --stat output with --graph
2012-05-02Merge branch 'zj/mksh-columns-breakage'Libravatar Junio C Hamano1-0/+1
A broken shell may not let us set an environment value to an arbitrary value, interfering with some of the tests. Introduce a test prerequisite so that we can skip some tests on such a platform. By Zbigniew Jędrzejewski-Szmek * zj/mksh-columns-breakage: test-lib: skip test with COLUMNS=1 under mksh
2012-05-02Merge branch 'jk/doc-asciidoc-inline-literal'Libravatar Junio C Hamano53-194/+192
Our documentation was written for an ancient version of AsciiDoc, making the source not very readable. By Jeff King * jk/doc-asciidoc-inline-literal: docs: stop using asciidoc no-inline-literal
2012-05-02Merge branch 'nd/i18n'Libravatar Junio C Hamano17-384/+499
More message strings marked for i18n. By Nguyễn Thái Ngọc Duy (10) and Jonathan Nieder (1) * nd/i18n: help: replace underlining "help -a" headers using hyphens with a blank line i18n: bundle: mark strings for translation i18n: index-pack: mark strings for translation i18n: apply: update say_patch_name to give translators complete sentence i18n: apply: mark strings for translation i18n: remote: mark strings for translation i18n: make warn_dangling_symref() automatically append \n i18n: help: mark strings for translation i18n: mark relative dates for translation strbuf: convenience format functions with \n automatically appended Makefile: feed all header files to xgettext
2012-05-02Merge branch 'mm/simple-push'Libravatar Junio C Hamano6-31/+157
New users tend to work on one branch at a time and push the result out. The current and upstream modes of push is a more suitable default mode than matching mode for these people, but neither is surprise-free depending on how the project is set up. Introduce a "simple" mode that is a subset of "upstream" but only works when the branch is named the same between the remote and local repositories. The plan is to make it the new default when push.default is not configured. By Matthieu Moy (5) and others * mm/simple-push: push.default doc: explain simple after upstream push: document the future default change for push.default (matching -> simple) t5570: use explicit push refspec push: introduce new push.default mode "simple" t5528-push-default.sh: add helper functions Undocument deprecated alias 'push.default=tracking' Documentation: explain push.default option a bit more
2012-05-02Merge branch 'jc/index-v4'Libravatar Junio C Hamano9-91/+300
Trivially shrinks the on-disk size of the index file to save both I/O and checksum overhead. The topic should give a solid base to build on further updates, with the code refactoring in its earlier parts, and the backward compatibility mechanism in its later parts. * jc/index-v4: index-v4: document the entry format unpack-trees: preserve the index file version of original update-index: upgrade/downgrade on-disk index version read-cache.c: write prefix-compressed names in the index read-cache.c: read prefix-compressed names in index on-disk version v4 read-cache.c: move code to copy incore to ondisk cache to a helper function read-cache.c: move code to copy ondisk to incore cache to a helper function read-cache.c: report the header version we do not understand read-cache.c: make create_from_disk() report number of bytes it consumed read-cache.c: allow unaligned mapping of the index file cache.h: hide on-disk index details varint: make it available outside the context of pack
2012-05-02git-svn: introduce SVN version comparison functionLibravatar Junio C Hamano1-7/+25
With double-digit version components in SVN::Core::VERSION, a naive string comparison is no longer sufficient and a numeric comparison is required for correct results. This fixes a regression introduced in commit 082afee621aeb2d3746c8ae290af98823f981f34 ("git-svn: use platform specific auth providers") where SVN version "1.6.6" was incorrectly assumed to be newer than the required "1.6.12" version. [mk: fix namespace references] [ew: commit message] Tested-by: Matthijs Kooijman <matthijs@stdin.nl> Acked-by: Eric Wong <normalperson@yhbt.net> Signed-off-by: Junio C Hamano <gitster@pobox.com>
2012-05-02t4006: Windows do not have /dev/zeroLibravatar Johannes Sixt1-1/+1
We only need to have a file with _some_ binary contents; be nice to our Windows friends and avoid using /dev/zero Signed-off-by: Johannes Sixt <j.sixt@viscovery.net> Signed-off-by: Junio C Hamano <gitster@pobox.com>
2012-05-01diff --stat: do not run diff on indentical filesLibravatar Zbigniew Jędrzejewski-Szmek1-2/+5
If two objects are known to be equal, there is no point running the diff. Signed-off-by: Zbigniew Jędrzejewski-Szmek <zbyszek@in.waw.pl> Signed-off-by: Junio C Hamano <gitster@pobox.com>
2012-05-01diff --stat: report mode-only changes for binary files like text filesLibravatar Zbigniew Jędrzejewski-Szmek2-22/+24
Mode-only changes to binary files without content change were reported as if they were rewritten, but text files in the same situation were reported as "unchanged". Let's treat binary files like text files here, and simply say that they are unchanged. Output of --shortstat is modified in the same way. Reported-by: Martin Mareš <mj@ucw.cz> Signed-off-by: Zbigniew Jędrzejewski-Szmek <zbyszek@in.waw.pl> Signed-off-by: Junio C Hamano <gitster@pobox.com>
2012-05-01Merge branch 'master' of https://github.com/git-l10n/git-poLibravatar Junio C Hamano3-931/+1069
By Jiang Xin (2) and Ralf Thielow (1) via Jiang Xin * 'master' of https://github.com/git-l10n/git-po: l10n: Update German translation l10n: Update Simplified Chinese translation l10n: Update git.pot (33 new, 24 deleted messages)