summaryrefslogtreecommitdiff
AgeCommit message (Collapse)AuthorFilesLines
2012-07-16t4012: Make --shortstat test more robustLibravatar Alexander Strasser1-2/+2
The --shortstat test depends on the same scenario as the --stat test. Use the part of the same expected result for the --stat test to avoid duplicating it manually. Signed-off-by: Alexander Strasser <eclipse7@gmx.net> Signed-off-by: Junio C Hamano <gitster@pobox.com>
2012-07-16t4012: Break up pipe into serial redirectionsLibravatar Alexander Strasser1-1/+2
Do not hide possible git errors by masking its process exit status. Signed-off-by: Alexander Strasser <eclipse7@gmx.net> Signed-off-by: Junio C Hamano <gitster@pobox.com>
2012-07-16t4012: Actually quote the sed scriptLibravatar Alexander Strasser1-2/+2
The nested quoting is not needed in this cases, thus the previous version did work just fine. Nevertheless the usage is misleading, so just achieve nested quoting by using double quotes instead. Lower the probability of breakage in the future and make the code easier to read. NOTE: Just dropping the single quotes around the sed arguments would have also been possible. Signed-off-by: Alexander Strasser <eclipse7@gmx.net> Signed-off-by: Junio C Hamano <gitster@pobox.com>
2012-07-11t4012: Unquote git command fragment in test titleLibravatar Alexander Strasser1-1/+1
The command fragments are quoted nowhere else in title texts of this file, thus make this one consistent with all other titles. Signed-off-by: Alexander Strasser <eclipse7@gmx.net> Signed-off-by: Junio C Hamano <gitster@pobox.com>
2012-07-11t4012: modernize style for quotingLibravatar Alexander Strasser1-15/+20
This quoting style is used by all newly added test code. Signed-off-by: Alexander Strasser <eclipse7@gmx.net> Signed-off-by: Junio C Hamano <gitster@pobox.com>
2012-07-11Git 1.7.11.2Libravatar Junio C Hamano4-3/+57
Signed-off-by: Junio C Hamano <gitster@pobox.com>
2012-07-11Merge branch 'jc/maint-blame-unique-abbrev' into maintLibravatar Junio C Hamano1-4/+21
"git blame" did not try to make sure that the abbreviated commit object names in its output are unique. * jc/maint-blame-unique-abbrev: blame: compute abbreviation width that ensures uniqueness
2012-07-11Merge branch 'rj/platform-pread-may-be-thread-unsafe' into maintLibravatar Junio C Hamano2-2/+10
On Cygwin, the platform pread(2) is not thread safe, just like our own compat/ emulation, and cannot be used in the index-pack program. Makefile variable NO_THREAD_SAFE_PREAD can be defined to avoid use of this function in a threaded program. * rj/platform-pread-may-be-thread-unsafe: index-pack: Disable threading on cygwin
2012-07-11Merge branch 'th/diff-no-index-fixes' into maintLibravatar Junio C Hamano5-24/+112
"git diff --no-index" did not correctly handle relative paths and did not correctly give exit codes when run under "--quiet" option. * th/diff-no-index-fixes: diff-no-index: exit(1) if 'diff --quiet <repo file> <external file>' finds changes diff: handle relative paths in no-index
2012-07-11Merge branch 'nd/clone-single-fix' into maintLibravatar Junio C Hamano2-3/+11
"git clone --single-branch" to clone a single branch did not limit the cloning to the specified branch. * nd/clone-single-fix: clone: fix ref selection in --single-branch --branch=xxx
2012-07-11Merge branch 'jc/rev-list-simplify-merges-first-parent' into maintLibravatar Junio C Hamano1-12/+29
When "git log" gets "--simplify-merges/by-decoration" together with "--first-parent", the combination of these options makes the simplification logic to use in-core commit objects that haven't been examined for relevance, either producing incorrect result or taking too long to produce any output. Teach the simplification logic to ignore commits that the first-parent traversal logic ignored when both are in effect to work around the issue. * jc/rev-list-simplify-merges-first-parent: revision: ignore side parents while running simplify-merges revision: note the lack of free() in simplify_merges() revision: "simplify" options imply topo-order sort
2012-07-11Merge branch 'hv/submodule-update-nuke-submodules' into maintLibravatar Junio C Hamano1-6/+0
"git add" allows adding a regular file to the path where a submodule used to exist, but "git update-index" did not allow an equivalent operation to Porcelain writers. * hv/submodule-update-nuke-submodules: update-index: allow overwriting existing submodule index entries
2012-07-11Merge branch 'jk/diff-no-index-pager' into maintLibravatar Junio C Hamano3-15/+22
"git diff --no-index" did not work with pagers correctly. * jk/diff-no-index-pager: do not run pager with diff --no-index --quiet fix pager.diff with diff --no-index
2012-07-11Merge branch 'mm/verify-filename-fix' into maintLibravatar Junio C Hamano8-10/+44
"git diff COPYING HEAD:COPYING" gave a nonsense error message that claimed that the treeish HEAD did not have COPYING in it. * mm/verify-filename-fix: verify_filename(): ask the caller to chose the kind of diagnosis sha1_name: do not trigger detailed diagnosis for file arguments
2012-07-11Merge branch 'cn/cherry-pick-range-docs' into maintLibravatar Junio C Hamano2-1/+13
The documentation for "git cherry-pick A B..C" was misleading. * cn/cherry-pick-range-docs: git-cherry-pick.txt: clarify the use of revision range notation Documentation: --no-walk is no-op if range is specified
2012-07-11Merge branch 'jc/ustar-checksum-is-unsigned' into maintLibravatar Junio C Hamano1-3/+3
"git archive" incorrectly computed the header checksum; the symptom was observed only when using pathnames with hi-bit set. * jc/ustar-checksum-is-unsigned: archive: ustar header checksum is computed unsigned
2012-07-11Merge branch 'jc/bundle-complete-notice' into maintLibravatar Junio C Hamano1-6/+10
Running "git bundle verify" on a bundle that records a complete history said "it requires these 0 commits". * jc/bundle-complete-notice: tweak "bundle verify" of a complete history
2012-07-11Merge branch 'jc/ls-files-i-dir' into maintLibravatar Junio C Hamano6-10/+109
"git ls-files --exclude=t -i" did not consider anything under t/ as excluded, as it did not pay attention to exclusion of leading paths while walking the index. Other two users of excluded() are also updated. * jc/ls-files-i-dir: dir.c: make excluded() file scope static unpack-trees.c: use path_excluded() in check_ok_to_remove() builtin/add.c: use path_excluded() path_excluded(): update API to less cache-entry centric ls-files -i: micro-optimize path_excluded() ls-files -i: pay attention to exclusion of leading paths
2012-07-11Merge branch 'jc/request-pull-match-tagname' into maintLibravatar Junio C Hamano1-7/+22
"git request-pull $url dev" when the tip of "dev" branch was tagged with "ext4-for-linus" used the contents from the tag in the output but still asked the "dev" branch to be pulled, not the tag. * jc/request-pull-match-tagname: request-pull: really favor a matching tag
2012-07-02Merge branch 'maint' of git://github.com/git-l10n/git-po into maintLibravatar Junio C Hamano1-562/+2270
Update Swedish translation (1066t0f0u)
2012-07-02blame: compute abbreviation width that ensures uniquenessLibravatar Junio C Hamano1-4/+21
Julia Lawall noticed that in linux-next repository the commit object 60d5c9f5 (shown with the default abbreviation width baked into "git blame") in output from $ git blame -L 3675,3675 60d5c9f5b -- \ drivers/staging/brcm80211/brcmfmac/wl_iw.c is no longer unique in the repository, which results in "short SHA1 60d5c9f5 is ambiguous". Compute the minimum abbreviation width that ensures uniqueness when the user did not specify the --abbrev option to avoid this. Signed-off-by: Junio C Hamano <gitster@pobox.com>
2012-07-01Update Swedish translation (1066t0f0u)Libravatar Peter Krefting1-562/+2270
Signed-off-by: Peter Krefting <peter@softwolves.pp.se>
2012-06-26index-pack: Disable threading on cygwinLibravatar Junio C Hamano2-2/+10
The Cygwin implementation of pread() is not thread-safe since, just like the emulation provided by compat/pread.c, it uses a sequence of seek-read-seek calls. In order to avoid failues due to thread-safety issues, commit b038a61 disables threading when NO_PREAD is defined. (ie when using the emulation code in compat/pread.c). We introduce a new build variable, NO_THREAD_SAFE_PREAD, which allows use to disable the threaded index-pack code on cygwin, in addition to the above NO_PREAD case. Signed-off-by: Ramsay Jones <ramsay@ramsay1.demon.co.uk> Signed-off-by: Junio C Hamano <gitster@pobox.com>
2012-06-25git-submodule.sh: fix filename in comment.Libravatar Michał Górny1-1/+1
Signed-off-by: Michał Górny <mgorny@gentoo.org> Signed-off-by: Junio C Hamano <gitster@pobox.com>
2012-06-25git-add--interactive.perl: Remove two unused variablesLibravatar Thomas Badie1-2/+0
The patch 8f0bef6 refactored this script and made the variable $fh unneeded in subs diff_applies and patch_update_file, but forgot to remove them. Signed-off-by: Thomas Badie <badie@lrde.epita.fr> Signed-off-by: Junio C Hamano <gitster@pobox.com>
2012-06-22Documentation: Fix misspellingsLibravatar Leila Muhtasib5-6/+6
Signed-off-by: Leila Muhtasib <muhtasib@gmail.com> Signed-off-by: Junio C Hamano <gitster@pobox.com>
2012-06-22clone: fix ref selection in --single-branch --branch=xxxLibravatar Nguyễn Thái Ngọc Duy2-3/+11
- do not fetch HEAD - do not also fetch refs following "xxx" Signed-off-by: Nguyễn Thái Ngọc Duy <pclouds@gmail.com> Signed-off-by: Junio C Hamano <gitster@pobox.com>
2012-06-22diff-no-index: exit(1) if 'diff --quiet <repo file> <external file>' finds ↵Libravatar Tim Henigan2-2/+73
changes When running 'git diff --quiet <file1> <file2>', if file1 or file2 is outside the repository, it will exit(0) even if the files differ. It should exit(1) when they differ. This happens because 'diff_no_index' looks at the 'found_changes' member from 'diff_options' to determine if changes were made. This is the wrong thing to do, since it is only set if xdiff is actually run and it finds a change (the diff machinery will optimize out the xdiff call when it is not necessary) and in that case HAS_CHANGED flag needs to be taken into account. Use diff_result_code() that knows all these details for the correct exit value instead. Signed-off-by: Tim Henigan <tim.henigan@gmail.com> Signed-off-by: Junio C Hamano <gitster@pobox.com>
2012-06-22diff: handle relative paths in no-indexLibravatar Jeff King4-22/+39
When diff-no-index is given a relative path to a file outside the repository, it aborts with error. However, if the file is given using an absolute path, the diff runs as expected. The two cases should be treated the same. Tests and commit message by Tim Henigan. Signed-off-by: Jeff King <peff@peff.net> Signed-off-by: Tim Henigan <tim.henigan@gmail.com> Signed-off-by: Junio C Hamano <gitster@pobox.com>
2012-06-21Git 1.7.11.1Libravatar Junio C Hamano4-3/+13
Signed-off-by: Junio C Hamano <gitster@pobox.com>
2012-06-20docs: always define git-relative-html-prefix attributeLibravatar Jeff King1-0/+2
Commit fe77b41 introduced a new attribute to let the linkgit macro create cross-directory HTML references from the technical/ and howto/ subdirectories back to the main documentation. We define that attribute to "../" on the command-line when building inside those subdirectories, and otherwise leave it unset under the assumption that it would default to being blank. Instead, asciidoc omits the link entirely, leading to broken documentation. Fix this by defining git-relative-html-prefix to blank in asciidoc.conf (and an instance on the command-line, when present, will override it). Signed-off-by: Jeff King <peff@peff.net> Signed-off-by: Junio C Hamano <gitster@pobox.com>
2012-06-19git-commit-tree(1): update synopsisLibravatar Junio C Hamano1-1/+1
Even with many new kinds of options, the command still takes the single <tree> as the first argument. Probably we would want to update the command to allow it to take <tree>-ish at the end for consistency. Signed-off-by: Junio C Hamano <gitster@pobox.com>
2012-06-19Documentation: spelling fixesLibravatar Miklos Vajna6-6/+6
Signed-off-by: Miklos Vajna <vmiklos@frugalware.org> Signed-off-by: Junio C Hamano <gitster@pobox.com>
2012-06-18verify_filename(): ask the caller to chose the kind of diagnosisLibravatar Matthieu Moy7-10/+33
verify_filename() can be called in two different contexts. Either we just tried to interpret a string as an object name, and it fails, so we try looking for a working tree file (i.e. we finished looking at revs that come earlier on the command line, and the next argument must be a pathname), or we _know_ that we are looking for a pathname, and shouldn't even try interpreting the string as an object name. For example, with this change, we get: $ git log COPYING HEAD:inexistant fatal: HEAD:inexistant: no such path in the working tree. Use '-- <path>...' to specify paths that do not exist locally. $ git log HEAD:inexistant fatal: Path 'inexistant' does not exist in 'HEAD' Signed-off-by: Matthieu Moy <Matthieu.Moy@imag.fr> Signed-off-by: Junio C Hamano <gitster@pobox.com>
2012-06-18sha1_name: do not trigger detailed diagnosis for file argumentsLibravatar Matthieu Moy2-1/+12
diagnose_invalid_sha1_path() is meant to be called to diagnose a misspelt <treeish>:<pathname> when <pathname> does not exist in <treeish>. However, the code may call it if <treeish>:<pathname> is invalid (which triggers another call with only_to_die == 1), but for another reason. This happens when calling e.g. git log existing-file HEAD:existing-file because existing-file is a path and not a revision, the code verifies that the arguments that follow to be paths. This leads to an incorrect message like "existing-file does not exist in HEAD", even though the path exists in HEAD. Check that the search for <pathname> in <treeish> fails before triggering the diagnosis. Signed-off-by: Matthieu Moy <Matthieu.Moy@imag.fr> Signed-off-by: Junio C Hamano <gitster@pobox.com>
2012-06-17Git 1.7.11Libravatar Junio C Hamano3-10/+6
Signed-off-by: Junio C Hamano <gitster@pobox.com>
2012-06-17Sync with 1.7.10.5Libravatar Junio C Hamano2-1/+14
2012-06-17Git 1.7.10.5Libravatar Junio C Hamano4-3/+16
Signed-off-by: Junio C Hamano <gitster@pobox.com>
2012-06-17Do not autosquash in case of an implied interactive rebaseLibravatar Vincent van Ravesteijn1-0/+1
The option to autosquash is only used in case of an interactive rebase. When merges are preserved, rebase uses an interactive rebase internally, but in this case autosquash should still be disabled. Signed-off-by: Vincent van Ravesteijn <vfr@lyx.org> Signed-off-by: Junio C Hamano <gitster@pobox.com>
2012-06-17Merge branch 'js/maint-fast-export-mark-error' into maintLibravatar Junio C Hamano1-1/+1
"git fast-export" did not give a readable error message when the same mark erroneously appeared twice in the --import-marks input.
2012-06-15Merge git://github.com/git-l10n/git-poLibravatar Junio C Hamano2-703/+927
Updated Italian translations. * git://github.com/git-l10n/git-po: l10n: it.po: translate 212 new messages
2012-06-15Merge branch 'as/diff-shortstat-ignore-binary'Libravatar Junio C Hamano2-1/+13
# By Alexander Strasser * as/diff-shortstat-ignore-binary: diff: Only count lines in show_shortstats
2012-06-15diff: Only count lines in show_shortstatsLibravatar Alexander Strasser2-1/+13
Do not mix byte and line counts. Binary files have byte counts; skip them when accumulating line insertions/deletions. The regression was introduced in e18872b. Signed-off-by: Alexander Strasser <eclipse7@gmx.net> Signed-off-by: Junio C Hamano <gitster@pobox.com>
2012-06-15do not run pager with diff --no-index --quietLibravatar Jeff King1-3/+3
There is no point in running a pager when --quiet is given, since we are producing no output. The regular diff code path handles this already, because --quiet implies --exit-code, and we check for --exit-code when deciding not to run the pager. However, the "quiet implies exit-code" logic is done in diff_setup_done, and the no-index code path sets up its pager before running diff_setup_done, and misses this case. We can fix this by reordering our initialization. Currently we do: 1. read command line arguments into diff_options 2. Set pager if EXIT_CODE not requested 3. always set EXIT_CODE, since we are emulating traditional diff 4. call diff_setup_done We can fix the problem by moving pager initialization (step 2) after step 4. But step 3 must come after step 2 (since we want to know whether the _user_ requested --exit-code, not whether we turned it on unconditionally). So we must move both. Signed-off-by: Jeff King <peff@peff.net> Signed-off-by: Junio C Hamano <gitster@pobox.com>
2012-06-15fix pager.diff with diff --no-indexLibravatar Jeff King3-13/+20
git-diff does not rely on the git wrapper to setup its pager; instead, it sets it up on its own after seeing whether --quiet or --exit-code has been specified. After diff_no_index was split off from cmd_diff, commit b3fde6c (git diff --no-index: default to page like other diff frontends, 2008-05-26) duplicated the one-liner from cmd_diff to turn on the pager. Later, commit 8f0359f (Allow pager of diff command be enabled/disabled, 2008-07-21) taught the the version in cmd_diff to respect the pager.diff config, but the version in diff_no_index was left behind. This meant that git -c pager.diff=0 diff a b would not use a pager, but git -c pager.diff=0 diff --no-index a b would. Let's fix it by factoring out a common function. While we're there, let's update the antiquated comment, which claims that the pager interferes with propagating the exit code; this has not been the case since ea27a18 (spawn pager via run_command interface, 2008-07-22). Signed-off-by: Jeff King <peff@peff.net> Signed-off-by: Junio C Hamano <gitster@pobox.com>
2012-06-15perl/Makefile: install Git::SVN::* when NO_PERL_MAKEMAKER=yes, tooLibravatar Jonathan Nieder1-7/+24
v1.7.11-rc1~12^2~2 (2012-05-27) and friends split some git-svn code into separate modules but did not update the fallback rules to install them when NO_PERL_MAKEMAKER is set. Add the appropriate rules so users without MakeMaker can use git-svn again. Affected modules: Git::SVN::Prompt, Git::SVN::Fetcher, Git::SVN::Editor, Git::SVN::Ra, Git::SVN::Memoize::YAML. Reported-by: Adam Roben <adam@roben.org> Signed-off-by: Jonathan Nieder <jrnieder@gmali.com> Signed-off-by: Junio C Hamano <gitster@pobox.com>
2012-06-15perl/Makefile.PL: warn about duplicate module list in perl/MakefileLibravatar Jonathan Nieder1-0/+4
Adding or removing a module requires modifying both files to support builds with and without MakeMaker. Add a comment to remind patch authors and reviewers at the crucial moment. Longer term, it would be nicer to maintain a single list, perhaps in a separate file used by both build systems. Signed-off-by: Jonathan Nieder <jrnieder@gmail.com> Signed-off-by: Junio C Hamano <gitster@pobox.com>
2012-06-15git-cherry-pick.txt: clarify the use of revision range notationLibravatar Carlos Martín Nieto1-1/+12
When given a set of commits, cherry-pick will apply the changes for all of them. Specifying a simple range will also work as expected. This can lead the user to think that git cherry-pick A B..C may apply A and then B..C, but that is not what happens. Instead the revs are given to a single invocation of rev-list, which will consider A and C as positive revs and B as a negative one. The commit A will not be used if it is an ancestor of B. Add a note about this and add an example with this particular syntax, which has shown up on the list a few times. Signed-off-by: Carlos Martín Nieto <cmn@elego.de> Signed-off-by: Junio C Hamano <gitster@pobox.com>
2012-06-15Documentation: --no-walk is no-op if range is specifiedLibravatar Carlos Martín Nieto1-0/+1
The existing description can be misleading and cause the reader to think that --no-walk will do something if they specify a range in the command line instead of a set of revs. Signed-off-by: Carlos Martín Nieto <cmn@elego.de> Signed-off-by: Junio C Hamano <gitster@pobox.com>
2012-06-14l10n: it.po: translate 212 new messagesLibravatar Marco Paolone2-703/+927
Signed-off-by: Marco Paolone <marcopaolone@gmail.com> Signed-off-by: Stefano Lattarini <stefano.lattarini@gmail.com>