summaryrefslogtreecommitdiff
AgeCommit message (Collapse)Author
2010-07-15Merge branch 'mg/revision-doc'Junio C Hamano
* mg/revision-doc: Documentation: link to gitrevisions rather than git-rev-parse Documentation: gitrevisions Documentation: split off rev doc into include file
2010-07-15Merge branch 'jk/maint-status-keep-index-timestamp'Junio C Hamano
* jk/maint-status-keep-index-timestamp: do not write out index when status does not have to
2010-07-15Merge branch 'jc/rebase-i-commit-msg-fix'Junio C Hamano
* jc/rebase-i-commit-msg-fix: rebase-i: do not get fooled by a log message ending with backslash rebase-i: style fix
2010-07-15Merge branch 'ab/submodule-add-f'Junio C Hamano
* ab/submodule-add-f: git submodule: add submodules with git add -f <path>
2010-07-15Merge branch 'bc/maint-makefile-fixes'Junio C Hamano
* bc/maint-makefile-fixes: Makefile: work around ksh's failure to handle missing list argument to for loop Makefile: remove some unnecessary curly braces
2010-07-15Merge branch 'maint'Junio C Hamano
* maint: Documentation: add submodule.* to the big configuration variable list gitmodules.5: url can be a relative path gitweb: fix esc_url
2010-07-15Documentation: add submodule.* to the big configuration variable listJonathan Nieder
The url, path, and the update items in [submodule "foo"] stanzas are nicely explained in the .gitmodules and ‘git submodule’ documentation. Point there from the config documentation. Signed-off-by: Jonathan Nieder <jrnieder@gmail.com> Acked-by: Johan Herland <johan@herland.net> Signed-off-by: Junio C Hamano <gitster@pobox.com>
2010-07-15gitmodules.5: url can be a relative pathJonathan Nieder
There is already excellent documentation for this facility in git-submodule.1, but it is not so discoverable. Relative paths in .gitmodules can be useful for serving the same repository over multiple protocols, for example. Thanks to Peter for pointing this out. Cc: Peter Krefting <peter@softwolves.pp.se> Signed-off-by: Jonathan Nieder <jrnieder@gmail.com> Acked-by: Johan Herland <johan@herland.net> Signed-off-by: Junio C Hamano <gitster@pobox.com>
2010-07-15gitweb: fix esc_urlPavan Kumar Sunkara
Earlier, 452e225 (gitweb: fix esc_param, 2009-10-13) fixed CGI escaping rules used in esc_url. A very similar logic exists in esc_param and needs to be fixed the same way. Signed-off-by: Pavan Kumar Sunkara <pavan.sss1991@gmail.com> Signed-off-by: Junio C Hamano <gitster@pobox.com>
2010-07-14git --paginate: paginate external commands againJonathan Nieder
73e25e7c (git --paginate: do not commit pager choice too early, 2010-06-26) failed to take some cases into account. 1b. Builtins that do not use RUN_SETUP (like git config) do not find GIT_DIR set correctly when the pager is launched from run_builtin(). So the core.pager configuration is not honored from subdirectories of the toplevel for them. 4a. External git commands (like git request-pull) relied on the early pager launch to take care of handling the -p option. Ever since 73e25e7c, they do not honor the -p option at all. 4b. Commands invoked through ! aliases (like ls) were also relying on the early pager launch. Fix (4a) by launching the pager (if requested) before running such a “dashed external”. For simplicity, this still does not search for a .git directory before running the external command; when run from a subdirectory of the toplevel, therefore, the “[core] pager” configuration is still not honored. Fix (4b) by launching pager if requested before carrying out such an alias. Actually doing this has no effect, since the pager (if any) would have already been launched in a failed attempt to try a dashed external first. The choice-of-pager-not-honored-from- subdirectory bug still applies here, too. (1b) is not a regression. There is no need to fix it yet. Noticed by Junio. Signed-off-by: Jonathan Nieder <jrnieder@gmail.com> Signed-off-by: Junio C Hamano <gitster@pobox.com>
2010-07-14MERGE_RR is in .git, not .git/rr-cacheJay Soffian
0af0ac7 (Move MERGE_RR from .git/rr-cache/ into .git/) moved the location of MERGE_RR but I found a few references to the old location. Signed-off-by: Jay Soffian <jaysoffian@gmail.com> Signed-off-by: Junio C Hamano <gitster@pobox.com>
2010-07-14merge-tree: fix where two branches share no changesWill Palmer
15b4f7a (merge-tree: use ll_merge() not xdl_merge(), 2010-01-16) introduced a regression to merge-tree to cause it to segfault when merging files which existed in one branch, but not in the other or in the merge-base. This was caused by referencing entry->path at a time when entry was known to be possibly-NULL. To correct the problem, we save the path of the entry we came in with, as the path should be the same among all the stages no matter which sides are involved in the merge. Signed-off-by: Will Palmer <wmpalmer@gmail.com> Signed-off-by: Junio C Hamano <gitster@pobox.com>
2010-07-14add basic tests for merge-treeWill Palmer
merge-tree had no test cases, so here we add some very basic tests for it, including some known-breakages. [jc: with obvious/trivial fixups] Signed-off-by: Will Palmer <wmpalmer@gmail.com> Signed-off-by: Junio C Hamano <gitster@pobox.com>
2010-07-14Git 1.7.2-rc3v1.7.2-rc3Junio C Hamano
Signed-off-by: Junio C Hamano <gitster@pobox.com>
2010-07-14Merge branch 'jc/read-tree-cache-tree-fix'Junio C Hamano
* jc/read-tree-cache-tree-fix: Fix "read-tree -m A B" priming the cache-tree
2010-07-14Use dev_t for device id (st_dev) from stat in setup_git_directory_gently()Raja R Harinath
The original declaration was int, which seems to cause trouble on my machine. It causes spurious "filesystem boundary" errors when running the testsuite. The cause seems to be $ stat -c%d . 2147549952 which is too large for a 32-bit int type. Using the correct type, dev_t, solves the issue. (Because I'm paranoid and forgetful, I checked -- yes, Unix v7 had dev_t.) Other uses of st_dev seem to be reasonably safe. fill_stat_cache_info truncates it to an 'unsigned int', but that value seems to be used only to validate the cache, and only if USE_STDEV is defined. Signed-off-by: Raja R Harinath <harinath@hurrynot.org> Signed-off-by: Junio C Hamano <gitster@pobox.com>
2010-07-13diff A...B: give one possible diff when there are more than one merge-baseJunio C Hamano
We instead showed a combined diff that explains one of the randomly chosen merge-base as if it were the result of merging all the other merge bases and two tips given, which made no sense at all. An alternative is to simply fail such a request, telling the user that there are criss-cross merges, but it wouldn't be so helpful. Noticed by James Pickens. Signed-off-by: Junio C Hamano <gitster@pobox.com>
2010-07-13Merge branch 'maint'Junio C Hamano
* maint: git fetch documentation: describe short '-p' synonym to '--prune' option format-patch: document the format.to configuration setting
2010-07-13git fetch documentation: describe short '-p' synonym to '--prune' optionOren Held
It's already implemented, just undocumented. Signed-off-by: Oren Held <orenhe@il.ibm.com> Signed-off-by: Junio C Hamano <gitster@pobox.com>
2010-07-13format-patch: document the format.to configuration settingMiklos Vajna
[jc: with simplification from Jonathan Nieder] Signed-off-by: Miklos Vajna <vmiklos@frugalware.org> Signed-off-by: Junio C Hamano <gitster@pobox.com>
2010-07-12git add: Add the "--ignore-missing" option for the dry runJens Lehmann
Sometimes it is useful to know if a file or directory will be ignored before it is added to the work tree. An example is "git submodule add", where it would be really nice to be able to fail with an appropriate error message before the submodule is cloned and checked out. Signed-off-by: Jens Lehmann <Jens.Lehmann@web.de> Signed-off-by: Junio C Hamano <gitster@pobox.com>
2010-07-12test-lib: TAP compliance for skipping tests on requestMichael J Gruber
Make the output TAP compliant for tests skipped on request (GIT_SKIP_TESTS). Signed-off-by: Michael J Gruber <git@drmicha.warpmail.net> Acked-by: Ævar Arnfjörð Bjarmason <avarab@gmail.com> Signed-off-by: Junio C Hamano <gitster@pobox.com>
2010-07-12test-lib: simplify GIT_SKIP_TESTS loopMichael J Gruber
04ece59 (GIT_SKIP_TESTS: allow users to omit tests that are known to break, 2006-12-28) introduced GIT_SKIP_TESTS, and since then we have had two nested loops iterating over GIT_SKIP_TESTS with the same loop variable. Reduce this to one loop. Signed-off-by: Michael J Gruber <git@drmicha.warpmail.net> Signed-off-by: Junio C Hamano <gitster@pobox.com>
2010-07-12Merge branch 'maint'Junio C Hamano
* maint: Documentation: Spelling fix in protocol-capabilities.txt checkout: accord documentation to what git does t0005: work around strange $? in ksh when program terminated by a signal
2010-07-12t3000 (ls-files -o): modernize styleJonathan Nieder
This script is part of the second batch of tests, from the same day the test infrastructure was added to git. Update it to use a more modern style in the spirit of v1.6.4-rc0~45^2~2 (2009-05-22). In particular: - Put setup code inside test assertions, to avoid unexpected breakages and avoid stray output without -v (as t/README recommends); and - Put the test title on the same line as the "test_expect_success", and end the line with a single-quote to begin the body of the test which is one multi-line string. Signed-off-by: Jonathan Nieder <jrnieder@gmail.com> Signed-off-by: Junio C Hamano <gitster@pobox.com>
2010-07-10Documentation: Spelling fix in protocol-capabilities.txtFredrik Skolmli
Signed-off-by: Fredrik Skolmli <fredrik@frsk.net> Signed-off-by: Junio C Hamano <gitster@pobox.com>
2010-07-09merge-recursive: use "up-to-date" instead of "uptodate" in error message for ↵Nicolas Sebrecht
consistency Signed-off-by: Nicolas Sebrecht <nicolas.s.dev@gmx.fr> Signed-off-by: Junio C Hamano <gitster@pobox.com>
2010-07-09checkout: accord documentation to what git doesNicolas Sebrecht
Signed-off-by: Nicolas Sebrecht <nicolas.s.dev@gmx.fr> Signed-off-by: Junio C Hamano <gitster@pobox.com>
2010-07-09t0005: work around strange $? in ksh when program terminated by a signalJohannes Sixt
ksh93 is known to report $? of programs that terminated by a signal as 256 + signal number instead of 128 + signal number like other POSIX compliant shells (ksh's behavior is still POSIX compliant in this regard). Signed-off-by: Johannes Sixt <j6t@kdbg.org> Signed-off-by: Junio C Hamano <gitster@pobox.com>
2010-07-09Merge remote branch 'ko/master' into jc/read-tree-cache-tree-fixJunio C Hamano
* ko/master: (2325 commits) Git 1.7.2-rc2 backmerge a few more fixes to 1.7.1.X series fix git branch -m in presence of cross devices t/t0006: specify timezone as EST5 not EST to comply with POSIX add missing && to submodule-merge testcase t/README: document more test helpers test-date: fix sscanf type conversion xdiff: optimise for no whitespace difference when ignoring whitespace. gitweb: Move evaluate_gitweb_config out of run_request parse_date: fix signedness in timezone calculation t0006: test timezone parsing rerere.txt: Document forget subcommand t/README: proposed rewording... t/README: Document the do's and don'ts of tests t/README: Add a section about skipping tests t/README: Document test_expect_code t/README: Document test_external* t/README: Document the prereq functions, and 3-arg test_* t/README: Typo: paralell -> parallel t/README: The trash is in 't/trash directory.$name' ... Conflicts: builtin-read-tree.c
2010-07-09diff.c: fix a graph output bugBo Yang
When --graph is in effect, the line-prefix typically has colored graph line segments and ends with reset. The color sequence "set" given to this function is for showing the metainfo part of the patch text and (1) it should not be applied to the graph lines, and (2) it will be reset at the end of line_prefix so it won't be in effect anyway. Signed-off-by: Bo Yang <struggleyb.nku@gmail.com> Signed-off-by: Junio C Hamano <gitster@pobox.com>
2010-07-09tests: Use skip_all=* to skip testsÆvar Arnfjörð Bjarmason
Change tests to skip with skip_all=* + test_done instead of using say + test_done. This is a follow-up to "tests: Skip tests in a way that makes sense under TAP" (fadb5156e4). I missed these cases when prepearing that patch, hopefully this is all of them. Signed-off-by: Ævar Arnfjörð Bjarmason <avarab@gmail.com> Signed-off-by: Junio C Hamano <gitster@pobox.com>
2010-07-09Fix "read-tree -m A B" priming the cache-treeJunio C Hamano
In 456156d a shortcut to priming the index tree reference was introduced, but the justification for it was completely bogus. "read-tree -m A B" is to take the index (and the working tree) that is largely based on (but does not have to match exactly) A and update it to B, while carrying the local change that does not overlap the difference between A and B, so there is no reason to expect that the resulting index should match the tree B. Noticed and test provided by Heiko Voigt. Signed-off-by: Junio C Hamano <gitster@pobox.com>
2010-07-09Reorganize `git-log' man page to clarify common diff options.Eli Barzilay
This will reduce considerably the common confusion where people miss the `--follow' option, and wonder why `-M'/`-C' is not working. * Move the diff options include to after the log-specific flags, and add a "Common diff options" subtitle before them. (These options apply only when patches are shown, which is not a common use case among newbies, so having them first is confusing.) * Move the `--follow' description to the top of the listed options. The options before that seem less important: `--full-diff' applies only when patches are shown, `--source' and `--decorate' are less useful with many common commit specifications. * Clarify that `--follow' works only for a single path argument. Signed-off-by: Eli Barzilay <eli@barzilay.org> Signed-off-by: Junio C Hamano <gitster@pobox.com>
2010-07-08t9118 (git-svn): prevent early failure from taking down later testsJonathan Nieder
When test #2 fails, the cwd is project/, causing all the remaining tests in the same script to get confused and fail. So in the spirit of v1.7.1.1~53^2~10 (t5550-http-fetch: Use subshell for repository operations, 2010-04-17), use a subshell for svn working copy operations. This way, the cwd will reliably return to the top of the trash directory and later tests can still be run when a command has failed. Reported-by: A Large Angry SCM <gitzilla@gmail.com> Signed-off-by: Jonathan Nieder <jrnieder@gmail.com> Acked-by: Eric Wong <normalperson@yhbt.net>
2010-07-08t9118: avoid PEG revision identifier in testsMichael J Gruber
@ is SVN's identifier for PEG revisions. But SVN's treatment of PEG identifiers in copy target URLs changed in r954995/r952973, i.e. between 1.6.11 and 1.6.12. They get eaten now (which is considered the right way). Therefore, avoid the @ in the tests with funky branch names. Signed-off-by: Michael J Gruber <git@drmicha.warpmail.net> Acked-by: Eric Wong <normalperson@yhbt.net>
2010-07-07grep -O: Do not pass color sequences as filenames to pagerNazri Ramliy
With a .gitconfig like this: [color] ui = auto [color "grep"] filename = magenta if stdout is a terminal, the grep machinery will output the color sequence \e[36m before each filename in its output. In the case of "git grep -O foo", output is argv for the pager. Disable color when calling the grep machinery in this case. Signed-off-by: Nazri Ramliy <ayiehere@gmail.com> Signed-off-by: Jonathan Nieder <jrnieder@gmail.com> Signed-off-by: Junio C Hamano <gitster@pobox.com>
2010-07-07Git 1.7.2-rc2v1.7.2-rc2Junio C Hamano
Signed-off-by: Junio C Hamano <gitster@pobox.com>
2010-07-07Merge branch 'ab/tap'Junio C Hamano
* ab/tap: t/README: document more test helpers t/README: proposed rewording... t/README: Document the do's and don'ts of tests t/README: Add a section about skipping tests t/README: Document test_expect_code t/README: Document test_external* t/README: Document the prereq functions, and 3-arg test_* t/README: Typo: paralell -> parallel t/README: The trash is in 't/trash directory.$name' t/t9700/test.pl: don't access private object members, use public access methods t9700: Use Test::More->builder, not $Test::Builder::Test tests: Say "pass" rather than "ok" on empty lines for TAP tests: Skip tests in a way that makes sense under TAP test-lib: output a newline before "ok" under a TAP harness test-lib: Make the test_external_* functions TAP-aware test-lib: Adjust output to be valid TAP format
2010-07-07Merge branch 'maint'Junio C Hamano
* maint: backmerge a few more fixes to 1.7.1.X series rev-parse: fix --parse-opt --keep-dashdash --stop-at-non-option fix git branch -m in presence of cross devices Conflicts: RelNotes builtin/rev-parse.c
2010-07-07backmerge a few more fixes to 1.7.1.X seriesJunio C Hamano
Signed-off-by: Junio C Hamano <gitster@pobox.com>
2010-07-07Merge branch 'maint-1.6.4' into maintJunio C Hamano
* maint-1.6.4: rev-parse: fix --parse-opt --keep-dashdash --stop-at-non-option
2010-07-07rev-parse: fix --parse-opt --keep-dashdash --stop-at-non-optionUwe Kleine-König
The ?: operator has a lower priority than |, so the implicit associativity made the 6th argument of parse_options be PARSE_OPT_KEEP_DASHDASH if keep_dashdash was true discarding PARSE_OPT_STOP_AT_NON_OPTION and PARSE_OPT_SHELL_EVAL. Signed-off-by: Uwe Kleine-König <u.kleine-koenig@pengutronix.de> Signed-off-by: Junio C Hamano <gitster@pobox.com>
2010-07-07Merge branch 'mg/doc-rev-parse-treepath-syntax' into maintJunio C Hamano
* mg/doc-rev-parse-treepath-syntax: git-rev-parse.txt: Add more examples for caret and colon git-rev-parse.txt: Document ":path" specifier
2010-07-07Merge branch 'tr/receive-pack-aliased-update-fix' into maintJunio C Hamano
* tr/receive-pack-aliased-update-fix: check_aliased_update: strcpy() instead of strcat() to copy receive-pack: detect aliased updates which can occur with symrefs receive-pack: switch global variable 'commands' to a parameter Conflicts: t/t5516-fetch-push.sh
2010-07-07fix git branch -m in presence of cross devicesPierre Habouzit
When you have for example a bare repository stored on NFS, and that you create new workdirs locally (using contrib's git-new-workdir), logs/refs is a symlink to a different device. Hence when the reflogs are renamed, all must happen below logs/refs or one gets cross device rename errors like: git branch -m foo error: unable to move logfile logs/refs/heads/master to tmp-renamed-log: Invalid cross-device link fatal: Branch rename failed The fix is hence to use logs/refs/.tmp-renamed-log as a temporary log name, instead of just tmp-renamed-log. Signed-off-by: Pierre Habouzit <madcoder@debian.org> Signed-off-by: Junio C Hamano <gitster@pobox.com>
2010-07-07t/t0006: specify timezone as EST5 not EST to comply with POSIXBrandon Casey
POSIX requires that both the timezone "standard" and "offset" be specified in the TZ environment variable. This causes a problem on IRIX which does not understand the timezone 'EST'. Signed-off-by: Brandon Casey <casey@nrlssc.navy.mil> Signed-off-by: Junio C Hamano <gitster@pobox.com>
2010-07-07do not write out index when status does not have toJunio C Hamano
Some codepaths, such as "git status" and "git commit --dry-run", tried to opportunisticly refresh the index and write the result out. But they did so without checking if there was actually any change that needs to be written out. Noticed by Jeff King and Daniel at Rutgers.edu Signed-off-by: Junio C Hamano <gitster@pobox.com>
2010-07-07Merge branch 'maint'Junio C Hamano
* maint: add missing && to submodule-merge testcase test-date: fix sscanf type conversion
2010-07-07add missing && to submodule-merge testcaseHeiko Voigt
Signed-off-by: Heiko Voigt <hvoigt@hvoigt.net> Signed-off-by: Junio C Hamano <gitster@pobox.com>