summaryrefslogtreecommitdiff
Commit message (Collapse)AuthorAgeFilesLines
* autoconf: Fix copy'n'paste errorJakub Narebski2006-09-051-1/+1
| | | | | | Signed-off-by: Jonas Fonseca <fonseca@diku.dk> Signed-off-by: Jakub Narebski <jnareb@gmail.com> Signed-off-by: Junio C Hamano <junkio@cox.net>
* Merge branch 'jc/pack'Junio C Hamano2006-09-044-16/+100
|\ | | | | | | | | | | | | * jc/pack: more lightweight revalidation while reusing deflated stream in packing pack-objects: fix thinko in revalidate code pack-objects: re-validate data we copy from elsewhere.
| * more lightweight revalidation while reusing deflated stream in packingJunio C Hamano2006-09-034-41/+65
| | | | | | | | | | | | | | | | | | | | | | | | | | | | When copying from an existing pack and when copying from a loose object with new style header, the code makes sure that the piece we are going to copy out inflates well and inflate() consumes the data in full while doing so. The check to see if the xdelta really apply is quite expensive as you described, because you would need to have the image of the base object which can be represented as a delta against something else. Signed-off-by: Junio C Hamano <junkio@cox.net>
| * pack-objects: fix thinko in revalidate codeJunio C Hamano2006-09-031-6/+7
| | | | | | | | | | | | | | | | | | When revalidating an entry from an existing pack entry->size and entry->type are not necessarily the size of the final object when the entry is deltified, but for base objects they must match. Signed-off-by: Junio C Hamano <junkio@cox.net>
| * pack-objects: re-validate data we copy from elsewhere.Junio C Hamano2006-09-021-4/+63
| | | | | | | | | | | | | | | | | | | | | | When reusing data from an existing pack and from a new style loose objects, we used to just copy it staight into the resulting pack. Instead make sure they are not corrupt, but do so only when we are not streaming to stdout, in which case the receiving end will do the validation either by unpacking the stream or by constructing the .idx file. Signed-off-by: Junio C Hamano <junkio@cox.net>
* | autoconf: Quote AC_CACHE_CHECK argumentsJakub Narebski2006-09-041-4/+4
| | | | | | | | | | Signed-off-by: Jakub Narebski <jnareb@gmail.com> Signed-off-by: Junio C Hamano <junkio@cox.net>
* | autoconf: Check for subprocess.pyJakub Narebski2006-09-041-0/+10
| | | | | | | | | | | | | | | | Add custom test for checking if Python comes with subprocess.py, or should we use our own subprocess.py by defining WITH_OWN_SUBPROCESS_PY. Signed-off-by: Jakub Narebski <jnareb@gmail.com> Signed-off-by: Junio C Hamano <junkio@cox.net>
* | autoconf: Add -liconv to LIBS when NEEDS_LIBICONVJakub Narebski2006-09-041-0/+1
| | | | | | | | | | Signed-off-by: Jakub Narebski <jnareb@gmail.com> Signed-off-by: Junio C Hamano <junkio@cox.net>
* | gitweb: Divide page path into directories -- path's "breadcrumbs"Jakub Narebski2006-09-041-8/+21
| | | | | | | | | | | | | | | | | | | | | | | | | | Divide page path into directories, so that each part of path links to the "tree" view of the $hash_base (or HEAD, if $hash_base is not set) version of the directory. If the entity is blob, final part (basename) links to $hash_base or HEAD revision of the "raw" blob ("blob_plain" view). If the entity is tree, link to the "tree" view. Signed-off-by: Jakub Narebski <jnareb@gmail.com> Signed-off-by: Junio C Hamano <junkio@cox.net>
* | gitweb: Correct typo: '==' instead of 'eq' in git_difftree_bodyJakub Narebski2006-09-041-4/+4
| | | | | | | | | | Signed-off-by: Jakub Narebski <jnareb@gmail.com> Signed-off-by: Junio C Hamano <junkio@cox.net>
* | gitweb: Add GIT favicon, assuming image/png typeJakub Narebski2006-09-043-0/+7
| | | | | | | | | | Signed-off-by: Jakub Narebski <jnareb@gmail.com> Signed-off-by: Junio C Hamano <junkio@cox.net>
* | Fix git-fsck-objects SIGSEGV/divide-by-zeroLinus Torvalds2006-09-041-4/+5
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | If you try to fsck a repository that isn't entirely empty, but that has no inter-object references (ie all the objects are blobs, and don't refer to anything else), git-fsck-objects currently fails. This probably cannot happen in practice, but can be tested with something like git init-db touch dummy git add dummy git fsck-objects where the fsck will die by a divide-by-zero when it tries to look up the references from the one object it found (hash_obj() will do a modulus by refs_hash_size). On some other archiectures (ppc, sparc) the divide-by-zero will go unnoticed, and we'll instead SIGSEGV when we hit the "refs_hash[j]" access. So move the test that should protect against this from mark_reachable() into lookup_object_refs(), which incidentally in the process also fixes mark_reachable() itself (it used to not mark the one object that _was_ reachable, because it decided that it had no refs too early). Signed-off-by: Linus Torvalds <torvalds@osdl.org> Signed-off-by: Junio C Hamano <junkio@cox.net>
* | gitweb: Change the name of diff to parent link in "commit" view to "diffJakub Narebski2006-09-031-1/+1
| | | | | | | | | | | | | | | | | | | | | | Change the name of diff to parent (current commit to one of parents) link in "commit" view (git_commit subroutine) from "commitdiff" to "diff". Let's leave "commitdiff" for equivalent of git-show, or git-diff-tree with one revision, i.e. diff for a given commit to its parent (parents). Signed-off-by: Jakub Narebski <jnareb@gmail.com> Signed-off-by: Junio C Hamano <junkio@cox.net>
* | Update GIT_TRACE documentation.Christian Couder2006-09-031-1/+10
| | | | | | | | | | Signed-off-by: Christian Couder <chriscool@tuxfamily.org> Signed-off-by: Junio C Hamano <junkio@cox.net>
* | Merge branch 'master' into cc/traceJunio C Hamano2006-09-0245-312/+972
|\ \ | |/ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | * master: Trace into a file or an open fd and refactor tracing code. Replace uses of strdup with xstrdup. consolidate two copies of new style object header parsing code. Documentation: Fix howto/revert-branch-rebase.html generation fmt-merge-msg: fix off-by-one bug git-rev-list(1): group options; reformat; document more options Constness tightening for move/link_temp_to_file() gitweb: Fix git_blame Include config.mak.autogen in the doc Makefile Use xmalloc instead of malloc git(7): move gitk(1) to the list of porcelain commands gitk: Fix some bugs in the new cherry-picking code gitk: Improve responsiveness while reading and layout out the graph gitk: Update preceding/following tag info when creating a tag gitk: Add a menu item for cherry-picking commits gitk: Fix a couple of buglets in the branch head menu items gitk: Add a context menu for heads gitk: Add a row context-menu item for creating a new branch gitk: Recompute ancestor/descendent heads/tags when rereading refs gitk: Minor cleanups
| * Trace into a file or an open fd and refactor tracing code.Christian Couder2006-09-0210-64/+229
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | If GIT_TRACE is set to an absolute path (starting with a '/' character), we interpret this as a file path and we trace into it. Also if GIT_TRACE is set to an integer value greater than 1 and lower than 10, we interpret this as an open fd value and we trace into it. Note that this behavior is not compatible with the previous one. We also trace whole messages using one write(2) call to make sure messages from processes do net get mixed up in the middle. This patch makes it possible to get trace information when running "make test". Signed-off-by: Christian Couder <chriscool@tuxfamily.org> Signed-off-by: Junio C Hamano <junkio@cox.net>
| * Replace uses of strdup with xstrdup.Shawn Pearce2006-09-0234-76/+84
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Like xmalloc and xrealloc xstrdup dies with a useful message if the native strdup() implementation returns NULL rather than a valid pointer. I just tried to use xstrdup in new code and found it to be missing. However I expected it to be present as xmalloc and xrealloc are already commonly used throughout the code. [jc: removed the part that deals with last_XXX, which I am finding more and more dubious these days.] Signed-off-by: Shawn O. Pearce <spearce@spearce.org> Signed-off-by: Junio C Hamano <junkio@cox.net>
| * consolidate two copies of new style object header parsing code.Junio C Hamano2006-09-011-40/+45
| | | | | | | | | | | | | | | | | | | | | | | | Also while we are at it, remove redundant typename[] array from unpack_sha1_header. The only reason it is different from the type_names[] array in object.c module is that this code cares about the subset of object types that are valid in a loose object, so prepare a separate array of boolean that tells us which types are valid, and share the name translation with the others. Signed-off-by: Junio C Hamano <junkio@cox.net>
| * Documentation: Fix howto/revert-branch-rebase.html generationSergey Vlasov2006-09-011-1/+1
| | | | | | | | | | | | | | | | | | The rule for howto/*.html used "$?", which expands to the list of all newer prerequisites, including asciidoc.conf added by another rule. "$<" should be used instead. Signed-off-by: Sergey Vlasov <vsu@altlinux.ru> Signed-off-by: Junio C Hamano <junkio@cox.net>
| * fmt-merge-msg: fix off-by-one bugJohannes Schindelin2006-09-011-1/+1
| | | | | | | | | | | | | | | | Thanks to the recent malloc()->xmalloc() change, and XMALLOC_POISON, this bug was found. Signed-off-by: Johannes Schindelin <Johannes.Schindelin@gmx.de> Signed-off-by: Junio C Hamano <junkio@cox.net>
| * git-rev-list(1): group options; reformat; document more optionsJonas Fonseca2006-09-011-66/+188
| | | | | | | | | | Signed-off-by: Jonas Fonseca <fonseca@diku.dk> Signed-off-by: Junio C Hamano <junkio@cox.net>
| * Merge git://git.kernel.org/pub/scm/gitk/gitkJunio C Hamano2006-09-011-95/+587
| |\ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | * git://git.kernel.org/pub/scm/gitk/gitk: gitk: Fix some bugs in the new cherry-picking code gitk: Improve responsiveness while reading and layout out the graph gitk: Update preceding/following tag info when creating a tag gitk: Add a menu item for cherry-picking commits gitk: Fix a couple of buglets in the branch head menu items gitk: Add a context menu for heads gitk: Add a row context-menu item for creating a new branch gitk: Recompute ancestor/descendent heads/tags when rereading refs gitk: Minor cleanups
| | * gitk: Fix some bugs in the new cherry-picking codePaul Mackerras2006-08-281-2/+6
| | | | | | | | | | | | | | | When inserting the new commit row for the cherry-picked commit, we weren't advancing the selected line (if there is one), and we weren't updating commitlisted properly.
| | * gitk: Improve responsiveness while reading and layout out the graphPaul Mackerras2006-08-161-24/+34
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | This restructures layoutmore so that it can take a time limit and do limited amounts of graph layout and graph optimization, and return 1 if it exceeded the time limit before finishing everything it could do. Also getcommitlines reads at most half a megabyte each time, to limit the time it spends parsing the commits to about a tenth of a second. Also got rid of the unused ncmupdate variable while I was at it. Signed-off-by: Paul Mackerras <paulus@samba.org>
| | * gitk: Update preceding/following tag info when creating a tagPaul Mackerras2006-08-081-0/+77
| | | | | | | | | | | | Signed-off-by: Paul Mackerras <paulus@samba.org>
| | * gitk: Add a menu item for cherry-picking commitsPaul Mackerras2006-08-061-43/+210
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | This does a git-cherry-pick -r to cherry-pick the commit that was right-clicked on to the head of the current branch. This would work better with some minor changes to the git-cherry-pick script. Along the way, this changes desc_heads to record the names of the descendent heads rather than their IDs. Signed-off-by: Paul Mackerras <paulus@samba.org>
| | * gitk: Fix a couple of buglets in the branch head menu itemsPaul Mackerras2006-08-021-2/+2
| | | | | | | | | | | | | | | | | | | | | This fixes a silly typo (an extra a) and fixes the condition for asking for confirmation of removing a branch. Signed-off-by: Paul Mackerras <paulus@samba.org>
| | * gitk: Add a context menu for headsPaul Mackerras2006-08-021-0/+118
| | | | | | | | | | | | | | | | | | | | | | | | | | | This menu allows you to check out a branch and to delete a branch. If you ask to delete a branch that has commits that aren't on any other branch, gitk will prompt for confirmation before doing the deletion. Signed-off-by: Paul Mackerras <paulus@samba.org>
| | * gitk: Add a row context-menu item for creating a new branchPaul Mackerras2006-08-021-0/+80
| | | | | | | | | | | | Signed-off-by: Paul Mackerras <paulus@samba.org>
| | * gitk: Recompute ancestor/descendent heads/tags when rereading refsPaul Mackerras2006-08-021-47/+85
| | | | | | | | | | | | | | | | | | | | | | | | | | | We weren't updating the desc_heads, desc_tags and anc_tags arrays when rereading the set of heads/tags/etc. The tricky thing to get right here is restarting the computation correctly when we are only half-way through it. Signed-off-by: Paul Mackerras <paulus@samba.org>
| | * gitk: Minor cleanupsPaul Mackerras2006-07-181-7/+5
| | | | | | | | | | | | | | | | | | Removed some unnecessary quotes and globals, updated copyright notice. Signed-off-by: Paul Mackerras <paulus@samba.org>
| * | Constness tightening for move/link_temp_to_file()Junio C Hamano2006-09-012-3/+3
| | | | | | | | | | | | Signed-off-by: Junio C Hamano <junkio@cox.net>
| * | gitweb: Fix git_blameAneesh Kumar K.V2006-08-311-4/+6
| | | | | | | | | | | | Signed-off-by: Junio C Hamano <junkio@cox.net>
| * | Include config.mak.autogen in the doc MakefileJonas Fonseca2006-08-311-0/+2
| | | | | | | | | | | | | | | | | | | | | | | | ... to install documentation relative to the path set with configure's --prefix option. Signed-off-by: Jonas Fonseca <fonseca@diku.dk> Signed-off-by: Junio C Hamano <junkio@cox.net>
| * | Use xmalloc instead of mallocJonas Fonseca2006-08-319-16/+16
| | | | | | | | | | | | | | | Signed-off-by: Jonas Fonseca <fonseca@diku.dk> Signed-off-by: Junio C Hamano <junkio@cox.net>
| * | git(7): move gitk(1) to the list of porcelain commandsJonas Fonseca2006-08-311-7/+3
| | | | | | | | | | | | | | | Signed-off-by: Jonas Fonseca <fonseca@diku.dk> Signed-off-by: Junio C Hamano <junkio@cox.net>
* | | Trace into open fd and refactor tracing code.Christian Couder2006-08-3110-64/+196
|/ / | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Now if GIT_TRACE is set to an integer value greater than 1 and lower than 10, we interpret this as an open fd value and we trace into it. Note that this behavior is not compatible with the previous one. We also trace whole messages using one write(2) call to make sure messages from processes do net get mixed up in the middle. It's now possible to run the tests like this: GIT_TRACE=9 make test 9>/var/tmp/trace.log Signed-off-by: Christian Couder <chriscool@tuxfamily.org> Signed-off-by: Junio C Hamano <junkio@cox.net>
* | t5710: fix two thinkos.Junio C Hamano2006-08-311-0/+2
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | The intention of the test seems to be to build a long chain of clones that locally borrow objects from their parents and see the system give up dereferencing long chains. There were two problems: (1) it did not test the right repository; (2) it did not build a chain long enough to trigger the limitation. I do not think it is a good test to make sure the limitation the current implementation happens to have still exists, but that is a topic at a totally different level. At least this fixes the broken test. Signed-off-by: Junio C Hamano <junkio@cox.net>
* | Merge early part of branch 'jc/daemon'Junio C Hamano2006-08-311-7/+106
|\ \
| * | daemon: prepare for multiple services.Junio C Hamano2006-08-271-7/+106
| | | | | | | | | | | | | | | | | | | | | | | | | | | This adds an infrastructure to selectively enable and disable more than one services in git-daemon. Currently upload-pack service, which serves the git-fetch-pack and git-peek-remote clients, is the only service that is defined. Signed-off-by: Junio C Hamano <junkio@cox.net>
* | | gitweb: Extend parse_difftree_raw_line to save commit infoJakub Narebski2006-08-311-3/+3
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Extend parse_difftree_raw_line to save commit info from when git-diff-tree is given only one <tree-ish>, for example when fed from git-rev-list using --stdin option. git-diff-tree outputs a line with the commit ID when applicable. Signed-off-by: Jakub Narebski <jnareb@gmail.com> Signed-off-by: Junio C Hamano <junkio@cox.net>
* | | gitweb: Separate printing of git_tree row into git_print_tree_entryJakub Narebski2006-08-311-44/+59
| | | | | | | | | | | | | | | | | | | | | | | | This is preparation for "tree blame" (similar to what ViewVC shows) output, i.e. for each entry give commit where it was changed. Signed-off-by: Jakub Narebski <jnareb@gmail.com> Signed-off-by: Junio C Hamano <junkio@cox.net>
* | | gitweb: Move git-ls-tree output parsing to parse_ls_tree_lineJakub Narebski2006-08-311-19/+43
| | | | | | | | | | | | | | | | | | | | | Add new subroutine parse_ls_tree_line and use it in git_tree. Signed-off-by: Jakub Narebski <jnareb@gmail.com> Signed-off-by: Junio C Hamano <junkio@cox.net>
* | | use do() instead of require() to include configurationDennis Stosberg2006-08-311-1/+1
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | When run under mod_perl, require() will read and execute the configuration file on the first invocation only. On every subsequent invocation, all configuration variables will be reset to their default values. do() reads and executes the configuration file unconditionally. Signed-off-by: Dennis Stosberg <dennis@stosberg.net> Signed-off-by: Junio C Hamano <junkio@cox.net>
* | | gitweb: Remove forgotten call to git_to_hashDennis Stosberg2006-08-311-4/+0
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | On Aug 27th, Jakub Narebski sent a patch which removed the git_to_hash() function and this call to it. The patch did not apply cleanly and had to be applied manually. Removing the last chunk has obviously been forgotten. See: commit 0aea33762b1262d11fb43eda9f3fc152b5622cca and message <200608272345.26722.jnareb@gmail.com> Signed-off-by: Dennis Stosberg <dennis@stosberg.net> Signed-off-by: Junio C Hamano <junkio@cox.net>
* | | log-tree.c: cleanup a bit append_signoff()Franck Bui-Huu2006-08-301-50/+66
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | This patch clean up append_signoff() by moving specific code that looks up for "^[-A-Za-z]+: [^@]+@" pattern into a function. It also stops the primary search when the cursor oversteps 'buf + at' limit. This patch changes slightly append_signoff() behaviour too. If we detect any Signed-off-by pattern during the primary search, we needn't to do a pattern research after. Signed-off-by: Franck Bui-Huu <vagabon.xyz@gmail.com> Signed-off-by: Junio C Hamano <junkio@cox.net>
* | | Remove uneeded #includeJohannes Schindelin2006-08-292-2/+0
| | | | | | | | | | | | | | | Signed-off-by: Johannes Schindelin <Johannes.Schindelin@gmx.de> Signed-off-by: Junio C Hamano <junkio@cox.net>
* | | Makefile: fix typoJohannes Schindelin2006-08-291-1/+1
| | | | | | | | | | | | | | | | | | | | | | | | We checked NO_SETENV instead of NO_UNSETENV to decide if unsetenv is available. Signed-off-by: Johannes Schindelin <Johannes.Schindelin@gmx.de> Signed-off-by: Junio C Hamano <junkio@cox.net>
* | | unpack-objects: remove unused variable "eof"Johannes Schindelin2006-08-291-3/+1
| | | | | | | | | | | | | | | Signed-off-by: Johannes Schindelin <Johannes.Schindelin@gmx.de> Signed-off-by: Junio C Hamano <junkio@cox.net>
* | | git-fsck-objects: lacking default references should not be fatalLinus Torvalds2006-08-291-2/+17
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | The comment added says it all: if we have lost all references in a git archive, git-fsck-objects should still work, so instead of dying it should just notify the user about that condition. This change was triggered by me just doing a "git-init-db" and then populating that empty git archive with a pack/index file to look at it. Having git-fsck-objects not work just because I didn't have any references handy was rather irritating, since part of the reason for running git-fsck-objects in the first place was to _find_ the missing references. However, "--unreachable" really doesn't make sense in that situation, and we want to turn it off to protect anybody who uses the old "git prune" shell-script (rather than the modern built-in). The old pruning script used to remove all objects that were reported as unreachable, and without any refs, that obviously means everything - not worth it. Signed-off-by: Linus Torvalds <torvalds@osdl.org> Signed-off-by: Junio C Hamano <junkio@cox.net>