summaryrefslogtreecommitdiff
Commit message (Collapse)AuthorAgeFilesLines
* Move read_in_full() and write_in_full() to wrapper.cJunio C Hamano2008-07-202-38/+38
| | | | | | | A few compat/* layer functions call these functions, but we would really want to keep them thin, without depending too much on the libgit proper. Signed-off-by: Junio C Hamano <gitster@pobox.com>
* Link shell with compat layer functionsJunio C Hamano2008-07-201-3/+7
| | | | | | | | | This in the short term will break on platforms that use compat implemenations that call outside compat layer, but that is exactly what we want. To give incentive to fix things for people who are affected and more importantly have environment to test their fixes. Signed-off-by: Junio C Hamano <gitster@pobox.com>
* Merge branch 'maint'Junio C Hamano2008-07-203-2/+91
|\ | | | | | | | | | | | | | | | | * maint: fix usage string for git grep refresh-index: fix bitmask assignment Conflicts: builtin-grep.c
| * fix usage string for git grepJonathan Nieder2008-07-201-1/+1
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Without this patch, git-grep gives confusing usage information: $ git grep --confused usage: git grep <option>* <rev>* [-e] <pattern> [<path>...] $ git grep HEAD pattern fatal: ambiguous argument 'pattern': unknown revision or path no t in the working tree. Use '--' to separate paths from revisions So put <pattern> before the <rev>s, in accordance with actual correct usage. While we're changing the usage string, we might as well include the "--" separating revisions and paths, too. Signed-off-by: Jonathan Nieder <jrnieder@uchicago.edu> Signed-off-by: Junio C Hamano <gitster@pobox.com>
| * refresh-index: fix bitmask assignmentJunio C Hamano2008-07-202-1/+90
| | | | | | | | | | | | | | | | | | | | 5fdeacb (Teach update-index about --ignore-submodules, 2008-05-14) added a new refresh option flag but did not assign a unique bit for it correctly, and broke "update-index --ignore-missing". This fixes it. Signed-off-by: Junio C Hamano <gitster@pobox.com>
* | git-svn: fix git svn info to work without argumentsDmitry Potapov2008-07-201-1/+1
| | | | | | | | | | | | | | | | | | | | | | | | | | | | commit 2fe403e7452bd6e1e8232445cf5434ce8f1af973 broke "git-svn info ." due to replacing '.' with '' in canonicalize_path for the top directory, while find_file_type_and_diff_status was not corrected. Bug reports: http://thread.gmane.org/gmane.comp.version-control.git/87822/ http://bugs.debian.org/490400 Signed-off-by: Dmitry Potapov <dpotapov@gmail.com> Signed-off-by: Junio C Hamano <gitster@pobox.com>
* | builtin-push.c: Cleanup - use OPT_BIT() and remove some variablesMichele Ballabio2008-07-201-21/+8
| | | | | | | | | | Signed-off-by: Michele Ballabio <barra_cuda@katamail.com> Signed-off-by: Junio C Hamano <gitster@pobox.com>
* | builtin-merge.c: Fix option parsingMichele Ballabio2008-07-202-3/+4
| | | | | | | | | | | | | | | | | | | | Now "git merge -m" needs a message, and errors out with the usage text if none is given. This way, t7600-merge.sh is fixed. Signed-off-by: Michele Ballabio <barra_cuda@katamail.com> Acked-by: Miklos Vajna <vmiklos@frugalware.org> Signed-off-by: Junio C Hamano <gitster@pobox.com>
* | Teach 'git merge' that some merge strategies no longer existMiklos Vajna2008-07-201-2/+0
| | | | | | | | | | | | | | | | | | | | | | | | | | | | 'recur' co-existed with 'recursive' when rewriting it in C, but it no longer available. 'stupid' was also recently removed. "git merge -s confused origin" still includes them in the list of available merge strategies. [jc: this is a squash of two micropatches] Signed-off-by: Miklos Vajna <vmiklos@frugalware.org> Signed-off-by: Nanako Shiraishi <nanako3@lavabit.com> Signed-off-by: Junio C Hamano <gitster@pobox.com>
* | cvsserver: Add testsuite for packed refsLars Noschinski2008-07-201-0/+7
| | | | | | | | | | | | | | Check that req_update shows refs, even if all refs are packed. Signed-off-by: Lars Noschinski <lars@public.noschinski.de> Signed-off-by: Junio C Hamano <gitster@pobox.com>
* | Getting closer to 1.6.0-rc0Junio C Hamano2008-07-192-5/+13
| | | | | | | | | | | | Update the links to "stale" versions of documentation to link to 1.5.6.4 Signed-off-by: Junio C Hamano <gitster@pobox.com>
* | Merge branch 'maint'Junio C Hamano2008-07-196-16/+31
|\ \ | |/ | | | | | | | | | | | | | | * maint: GIT 1.5.6.4 builtin-rm: fix index lock file path http-fetch: do not SEGV after fetching a bad pack idx file rev-list: honor --quiet option api-run-command.txt: typofix
| * GIT 1.5.6.4v1.5.6.4Junio C Hamano2008-07-191-6/+10
| | | | | | | | Signed-off-by: Junio C Hamano <gitster@pobox.com>
| * builtin-rm: fix index lock file pathOlivier Marin2008-07-192-5/+17
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | When hold_locked_index() is called with a relative git_dir and you are outside the work tree, the lock file become relative to the current directory. So when later setup_work_tree() change the current directory it breaks lock file path and commit_locked_index() fails. This patch move index locking code after setup_work_tree() call to make lock file relative to the working tree as it should be and add a test case. Noticed by Nick Andrew. Signed-off-by: Olivier Marin <dkr@freesurf.fr> Signed-off-by: Junio C Hamano <gitster@pobox.com>
| * Merge branch 'sp/maint-index-pack' into maintJunio C Hamano2008-07-181-29/+113
| |\ | | | | | | | | | | | | | | | | | | | | | * sp/maint-index-pack: index-pack: Honor core.deltaBaseCacheLimit when resolving deltas index-pack: Track the object_entry that creates each base_data index-pack: Chain the struct base_data on the stack for traversal index-pack: Refactor base arguments of resolve_delta into a struct
| * | http-fetch: do not SEGV after fetching a bad pack idx fileJunio C Hamano2008-07-181-0/+2
| | | | | | | | | | | | Signed-off-by: Junio C Hamano <gitster@pobox.com>
| * | rev-list: honor --quiet optionJunio C Hamano2008-07-171-4/+1
| | | | | | | | | | | | | | | | | | | | | | | | Nick Andrew noticed that rev-list lets --quiet option to be parsed by underlying diff_options parser but did not pick up the result. This resulted in --quiet option to become effectively a no-op. Signed-off-by: Junio C Hamano <gitster@pobox.com>
| * | api-run-command.txt: typofixStephan Beyer2008-07-171-1/+1
| | | | | | | | | | | | | | | | | | | | | Replace "run_command_v_opt_dir" by "run_command_v_opt_cd". Signed-off-by: Stephan Beyer <s-beyer@gmx.net> Signed-off-by: Junio C Hamano <gitster@pobox.com>
* | | Support gitlinks in fast-import.Alexander Gavrilov2008-07-195-5/+227
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Currently fast-import/export cannot be used for repositories with submodules. This patch extends the relevant programs to make them correctly process gitlinks. Links can be represented by two forms of the Modify command: M 160000 SHA1 some/path which sets the link target explicitly, or M 160000 :mark some/path where the mark refers to a commit. The latter form can be used by importing tools to build all submodules simultaneously in one physical repository, and then simply fetch them apart. Signed-off-by: Alexander Gavrilov <angavrilov@gmail.com> Signed-off-by: Junio C Hamano <gitster@pobox.com>
* | | .mailmap updateJunio C Hamano2008-07-191-0/+9
| | | | | | | | | | | | | | | | | | | | | A few people sent in patches under slightly different spelling recently. Hopefully this catches most of them if not all (with help from Dscho). Signed-off-by: Junio C Hamano <gitster@pobox.com>
* | | Documentation/git-merge.txt: Partial rewrite of How Merge WorksPetr Baudis2008-07-191-47/+29
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | The git-merge documentation's "HOW MERGE WORKS" section is confusingly composed and actually omits the most interesting part, the merging of the arguments into HEAD itself, surprisingly not actually mentioning the fast-forward merge anywhere. This patch replaces the "[NOTE]" screenful of highly technical details by a single sentence summing up the interesting information, and instead explains how are the arguments compared with HEAD and the three possible inclusion states that are named "Already up-to-date", "Fast-forward" and "True merge". It also makes it clear that the rest of the section talks only about the true merge situation, and slightly expands the talk on solving conflicts. Junio initiated the removal of the Note screenful altogether and offered many stylistical fixes. Signed-off-by: Petr Baudis <pasky@suse.cz> Signed-off-by: Junio C Hamano <gitster@pobox.com>
* | | archive: remove unused headersRené Scharfe2008-07-193-9/+0
| | | | | | | | | | | | | | | | | | | | | Remove obsolete #includes. Signed-off-by: Rene Scharfe <rene.scharfe@lsrfire.ath.cx> Signed-off-by: Junio C Hamano <gitster@pobox.com>
* | | archive: make zip compression level independent from core gitRené Scharfe2008-07-193-5/+8
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | zlib_compression_level is the compression level used for git's object store. It's 1 by default, which is the fastest setting. This variable is also used as the default compression level for ZIP archives created by git archive. For archives, however, zlib's own default of 6 is more appropriate, as it's favouring small size over speed -- archive creation is not that performance critical most of the time. This patch makes git archive independent from git's internal compression level setting. It affects invocations of git archive without explicitly specified compression level option, only. Signed-off-by: Rene Scharfe <rene.scharfe@lsrfire.ath.cx> Signed-off-by: Junio C Hamano <gitster@pobox.com>
* | | Documentation: How to ignore local changes in tracked filesPetr Baudis2008-07-192-3/+18
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | This patch explains more carefully that `.gitignore` concerns only untracked files and refers the reader to git update-index --assume-unchanged in the need of ignoring uncommitted changes in already tracked files. The description of this option is lifted to a more "porcelainish" level and explains the caveats of this usecase. Whether feasible or not, I believe adding this functionality to the porcelain is out of the scope of this patch. (And I personally think that referring to the plumbing in the case of such a special usage is fine.) This is currently probably one of the top FAQs at #git and the --assume-unchanged switch is not widely known; gitignore(5) is the first place where people are likely to look for it. Signed-off-by: Petr Baudis <pasky@suse.cz> Signed-off-by: Junio C Hamano <gitster@pobox.com>
* | | Documentation/git-submodule.txt: Further clarify the descriptionPetr Baudis2008-07-191-22/+47
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | This patch rewrites the general description yet again, first clarifying the high-level concept, mentioning the difference to remotes and using the subtree merge strategy, then getting to the details about tree entries and .gitmodules file. The patch also makes few smallar grammar fixups within the rest of the description and clarifies how does 'init' relate to 'update --init'. Cc: Heikki Orsila <shdl@zakalwe.fi> Signed-off-by: Petr Baudis <pasky@suse.cz> Signed-off-by: Junio C Hamano <gitster@pobox.com>
* | | Add ANSI control code emulation for the Windows consolePeter Harris2008-07-193-1/+357
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | This adds only the minimum necessary to keep git pull/merge's diffstat from wrapping. Notably absent is support for the K (erase) operation, and support for POSIX write. Signed-off-by: Peter Harris <git@peter.is-a-geek.org> Signed-off-by: Johannes Sixt <johannes.sixt@telecom.at> Signed-off-by: Junio C Hamano <gitster@pobox.com>
* | | builtin-clone: rewrite guess_dir_name()Johannes Sixt2008-07-191-29/+32
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | The function has to do three small and independent tasks, but all of them were crammed into a single loop. This rewrites the function entirely by unrolling these tasks. We also now use is_dir_sep(c) instead of c == '/' to increase portability. Signed-off-by: Johannes Sixt <johannes.sixt@telecom.at> Signed-off-by: Junio C Hamano <gitster@pobox.com>
* | | Teach lookup_prog not to select directoriesEric Raible2008-07-191-1/+2
| | | | | | | | | | | | | | | | | | | | | | | | | | | Without this simple fix "git gui" in the git source directory finds the git-gui directory instead of the tcl script in /usr/bin. Signed-off-by: Eric Raible <raible@gmail.com> Signed-off-by: Johannes Sixt <johannes.sixt@telecom.at> Signed-off-by: Junio C Hamano <gitster@pobox.com>
* | | testsuite for cvs co -cFabian Emmes2008-07-191-0/+11
| | | | | | | | | | | | | | | | | | | | | | | | Check that all branches are displayed. Signed-off-by: Fabian Emmes <fabian.emmes@rwth-aachen.de> Signed-off-by: Lars Noschinski <lars@public.noschinski.de> Signed-off-by: Junio C Hamano <gitster@pobox.com>
* | | cvsserver: Add cvs co -c supportLars Noschinski2008-07-191-0/+12
| | | | | | | | | | | | | | | | | | | | | | | | Implement cvs checkout's -c option by returning a list of all "modules". This is more useful than displaying a perl warning if -c is given. Signed-off-by: Lars Noschinski <lars@public.noschinski.de> Signed-off-by: Junio C Hamano <gitster@pobox.com>
* | | cvsserver: Add support for packed refsLars Noschinski2008-07-191-14/+8
| | | | | | | | | | | | | | | | | | | | | | | | req_update still parses /refs/heads manually. Replace this by a call to show-ref. Signed-off-by: Lars Noschinski <lars@public.noschinski.de> Signed-off-by: Junio C Hamano <gitster@pobox.com>
* | | Testsuite: Unset CVS_SERVERFabian Emmes2008-07-191-0/+1
| | | | | | | | | | | | | | | | | | | | | | | | | | | The CVS_SERVER environment variable can cause some of the cvsimport tests to fail. So unset this variable at the beginning of the test script. Signed-off-by: Fabian Emmes <fabian.emmes@rwth-aachen.de> Signed-off-by: Lars Noschinski <lars@public.noschinski.de> Signed-off-by: Junio C Hamano <gitster@pobox.com>
* | | Link git-shell only to a subset of libgit.aStephan Beyer2008-07-191-0/+3
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Commit 5b8e6f85 introduced stubs for three functions that make no sense for git-shell. But those stubs defined libgit.a functions a second time so that a linker can complain. Now git-shell is only linked to a subset of libgit.a. Signed-off-by: Stephan Beyer <s-beyer@gmx.net> Signed-off-by: Junio C Hamano <gitster@pobox.com>
* | | t9001 (send-email): Do not use hardcoded /bin/sh in testJunio C Hamano2008-07-191-4/+4
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Scriptlets used form inside this test began with hardcoded "#!/bin/sh". By setting SHELL_PATH the user is already telling us that what the vendor has in /bin/sh isn't POSIX enough, and we really should try to honor that request. Originally noticed by SungHyun Nam who later tested this patch and verified that it fixes the issue on Solaris 9. Signed-off-by: Junio C Hamano <gitster@pobox.com>
* | | builtin-remote.c: fix earlier "skip_prefix()" conversionJunio C Hamano2008-07-171-32/+19
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | The original code relied on an insane definition of skip_prefix() that returned an empty string for a NULL input and returned the original if the given "prefix" is not a prefix at all (it would have been justifiable if it were called "come_up_with_a_short_name_to_report_ref()" or something, though). In any case, when we replaced it with a more saner definition of the function whose behaviour is true to its name, its callers needed to be adjusted but the conversion missed one call site. This introduces a helper function "abbrev_ref()" whose purpose is to get a full refname and its possible prefix and to strip the prefix part if it matches, or refname itself in full if it doesn't. This makes the callers easier to read again. Signed-off-by: Junio C Hamano <gitster@pobox.com>
* | | Documentation/RelNotes-1.6.0.txt: Expand on the incompatible packfilesPetr Baudis2008-07-171-1/+3
| | | | | | | | | | | | | | | | | | | | | | | | Note that v1.4.4.5 supports pack index v2, and describe how to keep your repositories backwards-compatible, shall you need to. Signed-off-by: Petr Baudis <pasky@suse.cz> Signed-off-by: Junio C Hamano <gitster@pobox.com>
* | | mailinfo: off-by-one fix for [PATCH (foobar)] removal from Subject: lineJunio C Hamano2008-07-161-4/+3
| | | | | | | | | | | | | | | | | | | | | | | | A patch title "[PATCH] 1" was sanitized by the original code by stripping the "[PATCH]" from the front, but after the conversion to use strbuf this behaviour was broken due to a counting error. Signed-off-by: Junio C Hamano <gitster@pobox.com>
* | | read-cache.c: typofixJunio C Hamano2008-07-161-1/+1
| | | | | | | | | | | | Signed-off-by: Junio C Hamano <gitster@pobox.com>
* | | Update draft release notes for 1.6.0Junio C Hamano2008-07-161-6/+13
| | | | | | | | | | | | Signed-off-by: Junio C Hamano <gitster@pobox.com>
* | | Merge branch 'mv/dashless'Junio C Hamano2008-07-165-18/+22
|\ \ \ | | | | | | | | | | | | | | | | | | | | | | | | | | | | * mv/dashless: make remove-dashes: apply to scripts and programs as well, not just to builtins git-bisect: use dash-less form on git bisect log t1007-hash-object.sh: use quotes for the test description t0001-init.sh: change confusing directory name
| * | | make remove-dashes: apply to scripts and programs as well, not just to builtinsMiklos Vajna2008-07-112-10/+10
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | All programs and scripts are now moved outside PATH, so it's a good idea not to use the dashed forms for them, either. Signed-off-by: Miklos Vajna <vmiklos@frugalware.org> Signed-off-by: Junio C Hamano <gitster@pobox.com>
| * | | git-bisect: use dash-less form on git bisect logMiklos Vajna2008-07-111-4/+8
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Given that users are supposed to type 'git bisect' now, make the output of 'git bisect log' consistent with this. Signed-off-by: Miklos Vajna <vmiklos@frugalware.org> Signed-off-by: Junio C Hamano <gitster@pobox.com>
| * | | t1007-hash-object.sh: use quotes for the test descriptionMiklos Vajna2008-07-111-1/+1
| | | | | | | | | | | | | | | | | | | | Signed-off-by: Miklos Vajna <vmiklos@frugalware.org> Signed-off-by: Junio C Hamano <gitster@pobox.com>
| * | | t0001-init.sh: change confusing directory nameMiklos Vajna2008-07-111-3/+3
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | using git-init as directory name confused 'make remove-dashes', so just drop the 'git-' prefix. Signed-off-by: Miklos Vajna <vmiklos@frugalware.org> Signed-off-by: Junio C Hamano <gitster@pobox.com>
* | | | Merge branch 'ls/mailinfo'Junio C Hamano2008-07-163-410/+431
|\ \ \ \ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | * ls/mailinfo: git-mailinfo: use strbuf's instead of fixed buffers Add some useful functions for strbuf manipulation. Make some strbuf_*() struct strbuf arguments const. Conflicts: builtin-mailinfo.c
| * | | | git-mailinfo: use strbuf's instead of fixed buffersLukas Sandström2008-07-131-405/+352
| | | | | | | | | | | | | | | | | | | | | | | | | Signed-off-by: Lukas Sandström <lukass@etek.chalmers.se> Signed-off-by: Junio C Hamano <gitster@pobox.com>
| * | | | Add some useful functions for strbuf manipulation.Lukas Sandström2008-07-132-0/+76
| | | | | | | | | | | | | | | | | | | | | | | | | Signed-off-by: Lukas Sandström <lukass@etek.chalmers.se> Signed-off-by: Junio C Hamano <gitster@pobox.com>
| * | | | Make some strbuf_*() struct strbuf arguments const.Lukas Sandström2008-07-132-4/+4
| |/ / / | | | | | | | | | | | | | | | | Signed-off-by: Lukas Sandström <lukass@etek.chalmers.se> Signed-off-by: Junio C Hamano <gitster@pobox.com>
* | | | Documentation/git-submodule.txt: Add Description sectionPetr Baudis2008-07-161-0/+22
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Figuring out how submodules work conceptually is quite a bumpy ride for a newcomer; the user manual helps (if one knows to actually look into it), but the reference documentation should provide good quick intro as well. This patch attempts to do that, with suggestions from Heikki Orsila. Cc: Heikki Orsila <shdl@zakalwe.fi> Signed-off-by: Petr Baudis <pasky@suse.cz> Signed-off-by: Junio C Hamano <gitster@pobox.com>
* | | | Merge branch 'sb/dashless'Junio C Hamano2008-07-16139-335/+350
|\ \ \ \ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | * sb/dashless: Make usage strings dash-less t/: Use "test_must_fail git" instead of "! git" t/test-lib.sh: exit with small negagive int is ok with test_must_fail Conflicts: builtin-blame.c builtin-mailinfo.c builtin-mailsplit.c builtin-shortlog.c git-am.sh t/t4150-am.sh t/t4200-rerere.sh