summaryrefslogtreecommitdiff
AgeCommit message (Collapse)AuthorFilesLines
2006-03-10Merge branch 'ew/remote' into nextLibravatar Junio C Hamano3-6/+20
* ew/remote: fetch,parse-remote,fmt-merge-msg: refs/remotes/* support
2006-03-10Merge branch 'fk/blame' into nextLibravatar Junio C Hamano14-110/+1711
* fk/blame: blame: Rename detection (take 2) rev-lib: Make it easy to do rename tracking (take 2) Make it possible to not clobber object.util in sort_in_topological_order (take 2) Add git-imap-send, derived from isync 1.0.1. repack: prune loose objects when -d is given try_to_simplify_commit(): do not skip inspecting tree change at boundary. Fix t1200 test for breakage caused by removal of full-stop at the end of fast-forward message. Describe how to add extra mail header lines in mail generated by git-format-patch. Document the --attach flag. allow double click on current HEAD id after git-pull
2006-03-10fetch,parse-remote,fmt-merge-msg: refs/remotes/* supportLibravatar Eric Wong3-6/+20
We can now easily fetch and merge things from heads in the refs/remotes/ hierarchy in remote repositories. The refs/remotes/ hierarchy is likely to become the standard for tracking foreign SCMs, as well as the location of Pull: targets for tracking remote branches in newly cloned repositories. Signed-off-by: Eric Wong <normalperson@yhbt.net> Signed-off-by: Junio C Hamano <junkio@cox.net>
2006-03-10blame: Rename detection (take 2)Libravatar Fredrik Kuivinen1-40/+199
Signed-off-by: Fredrik Kuivinen <freku045@student.liu.se> Signed-off-by: Junio C Hamano <junkio@cox.net>
2006-03-10rev-lib: Make it easy to do rename tracking (take 2)Libravatar Fredrik Kuivinen3-47/+75
prune_fn in the rev_info structure is called in place of try_to_simplify_commit. This makes it possible to do rename tracking with a custom try_to_simplify_commit-like function. This commit also introduces init_revisions which initialises the rev_info structure with default values. Signed-off-by: Fredrik Kuivinen <freku045@student.liu.se> Signed-off-by: Junio C Hamano <junkio@cox.net>
2006-03-10Make it possible to not clobber object.util in sort_in_topological_order ↵Libravatar Fredrik Kuivinen2-12/+44
(take 2) Signed-off-by: Fredrik Kuivinen <freku045@student.liu.se> Signed-off-by: Junio C Hamano <junkio@cox.net>
2006-03-10Add git-imap-send, derived from isync 1.0.1.Libravatar Mike McCormack3-1/+1362
git-imap-send drops a patch series generated by git-format-patch into an IMAP folder. This allows patch submitters to send patches through their own mail program. git-imap-send uses the following values from the GIT repository configuration: The target IMAP folder: [imap] Folder = "INBOX.Drafts" A command to open an ssh tunnel to the imap mail server. [imap] Tunnel = "ssh -q user@imap.server.com /usr/bin/imapd ./Maildir 2> /dev/null" [imap] Host = imap.server.com User = bob Password = pwd Port = 143
2006-03-10repack: prune loose objects when -d is givenLibravatar Junio C Hamano1-0/+1
[jc: the request originally came from Martin Atukunda, which was improved further by Alex Riesen] Signed-off-by: Junio C Hamano <junkio@cox.net>
2006-03-10try_to_simplify_commit(): do not skip inspecting tree change at boundary.Libravatar Junio C Hamano1-6/+14
When git-rev-list (and git-log) collapsed ancestry chain to commits that touch specified paths, we failed to inspect and notice tree changes when we are about to hit uninteresting parent. This resulted in "git rev-list since.. -- file" to always show the child commit after the lower bound, even if it does not touch the file. This commit fixes it. Thanks for Catalin for reporting this. See also: 461cf59f8924f174d7a0dcc3d77f576d93ed29a4 Signed-off-by: Junio C Hamano <junkio@cox.net>
2006-03-09Fix t1200 test for breakage caused by removal of full-stop at the end of ↵Libravatar Junio C Hamano1-1/+1
fast-forward message. Signed-off-by: Junio C Hamano <junkio@cox.net>
2006-03-09Describe how to add extra mail header lines in mail generated by ↵Libravatar Mike McCormack1-0/+9
git-format-patch.
2006-03-09Document the --attach flag.Libravatar Mike McCormack1-1/+4
2006-03-09allow double click on current HEAD id after git-pullLibravatar Olaf Hering2-2/+2
Double click on to current HEAD commit id is not possible, the dot has to go. [jc: by popular requests.] Signed-off-by: Junio C Hamano <junkio@cox.net>
2006-03-09Merge branch 'jc/fsck' into nextLibravatar Junio C Hamano72-187/+342
* jc/fsck: fsck-objects: Remove --standalone refs.c::do_for_each_ref(): Finish error message lines with "\n" Nicer output from 'git' Use #define ARRAY_SIZE(x) (sizeof(x)/sizeof(x[0])) Remove trailing dot after short description Fix some inconsistencies in the docs contrib/git-svn: fix a harmless warning on rebuild (with old repos) contrib/git-svn: remove the --no-stop-on-copy flag contrib/git-svn: fix svn compat and fetch args Don't recurse into parents marked uninteresting. diff-delta: bound hash list length to avoid O(m*n) behavior test-delta needs zlib to compile git-fmt-merge-msg cleanup
2006-03-09fsck-objects: Remove --standaloneLibravatar Junio C Hamano2-26/+9
The fsck-objects command (back then it was called fsck-cache) used to complain if objects referred to by files in .git/refs/ or objects stored in files under .git/objects/??/ were not found as stand-alone SHA1 files (i.e. found in alternate object pools or packed archives stored under .git/objects/pack). Back then, packs and alternates were new curiosity and having everything as loose objects were the norm. When we adjusted the behaviour of fsck-cache to consider objects found in packs are OK, we introduced the --standalone flag as a backward compatibility measure. It still correctly checks if your repository is complete and consists only of loose objects, so in that sense it is doing the "right" thing, but checking that is pointless these days. This commit removes --standalone flag. See also: 23676d407c63a6f67f8ce3ff192199bda03e6a03 8a498a05c3c6b2f53db669b24f36257ab213eb4c Signed-off-by: Junio C Hamano <junkio@cox.net>
2006-03-09refs.c::do_for_each_ref(): Finish error message lines with "\n"Libravatar Junio C Hamano1-3/+3
We used fprintf() to show an error message without terminating it with LF; use error() for that. cf. c401cb48e77459a4ccad76888ad31bef252facc5 Signed-off-by: Junio C Hamano <junkio@cox.net>
2006-03-09Nicer output from 'git'Libravatar Fredrik Kuivinen5-18/+96
[jc: with suggestions by Jan-Benedict Glaw] Signed-off-by: Fredrik Kuivinen <freku045@student.liu.se> Signed-off-by: Junio C Hamano <junkio@cox.net>
2006-03-09Use #define ARRAY_SIZE(x) (sizeof(x)/sizeof(x[0]))Libravatar Junio C Hamano5-7/+5
Signed-off-by: Junio C Hamano <junkio@cox.net>
2006-03-09Remove trailing dot after short descriptionLibravatar Fredrik Kuivinen53-53/+53
Signed-off-by: Fredrik Kuivinen <freku045@student.liu.se> Signed-off-by: Junio C Hamano <junkio@cox.net>
2006-03-09Fix some inconsistencies in the docsLibravatar Fredrik Kuivinen3-3/+3
Signed-off-by: Fredrik Kuivinen <freku045@student.liu.se> Signed-off-by: Junio C Hamano <junkio@cox.net>
2006-03-09contrib/git-svn: fix a harmless warning on rebuild (with old repos)Libravatar Eric Wong1-1/+1
It's only for repositories that were imported with very early versions of git-svn. Unfortunately, some of those repos are out in the wild already, so fix this warning. Signed-off-by: Eric Wong <normalperson@yhbt.net> Signed-off-by: Junio C Hamano <junkio@cox.net>
2006-03-09contrib/git-svn: remove the --no-stop-on-copy flagLibravatar Eric Wong2-13/+11
Output a big warning if somebody actually has a pre-1.0 version of svn that doesn't support it. Thanks to Yann Dirson for reminding me it still existed and attempting to re-enable it :) I think I subconciously removed support for it earlier... Signed-off-by: Eric Wong <normalperson@yhbt.net> Signed-off-by: Junio C Hamano <junkio@cox.net>
2006-03-09contrib/git-svn: fix svn compat and fetch argsLibravatar Eric Wong2-20/+75
'svn info' doesn't work with URLs in svn <= 1.1. Now we only run svn info in local directories. As a side effect, this should also work better for 'init' off directories that are no longer in the latest revision of the repository. svn checkout -r<revision> arguments are fixed. Newer versions of svn (1.2.x) seem to need URL@REV as well as -rREV to checkout a particular revision... Add an example in the manpage of how to track directory that has been moved since its initial revision. A huge thanks to Yann Dirson for the bug reporting and testing my original patch. Thanks also to Junio C Hamano for suggesting a safer way to use git-rev-parse. Signed-off-by: Eric Wong <normalperson@yhbt.net> Signed-off-by: Junio C Hamano <junkio@cox.net>
2006-03-09Don't recurse into parents marked uninteresting.Libravatar Matthias Urlichs1-12/+14
revision.c:make_parents_uninteresting() is exponential with the number of merges in the tree. That's fine -- unless some other part of git already has pulled the whole commit tree into memory ... Signed-off-by: Junio C Hamano <junkio@cox.net>
2006-03-09diff-delta: bound hash list length to avoid O(m*n) behaviorLibravatar Nicolas Pitre1-30/+71
The diff-delta code can exhibit O(m*n) behavior with some patological data set where most hash entries end up in the same hash bucket. To prevent this, a limit is imposed to the number of entries that can exist in the same hash bucket. Because of the above the code is a tiny bit more expensive on average, even if some small optimizations were added as well to atenuate the overhead. But the problematic samples used to diagnoze the issue are now orders of magnitude less expensive to process with only a slight loss in compression. Signed-off-by: Nicolas Pitre <nico@cam.org> Signed-off-by: Junio C Hamano <junkio@cox.net>
2006-03-09test-delta needs zlib to compileLibravatar Nicolas Pitre1-1/+1
Signed-off-by: Nicolas Pitre <nico@cam.org> Signed-off-by: Junio C Hamano <junkio@cox.net>
2006-03-08git-fmt-merge-msg cleanupLibravatar Linus Torvalds1-1/+1
Since I've started using the "merge.summary" flag in my repo, my merge messages look nicer, but I dislike how I get notifications of merges within merges. So I'd suggest this trivial change.. Signed-off-by: Linus Torvalds <torvalds@osdl.org> Signed-off-by: Junio C Hamano <junkio@cox.net>
2006-03-07Merge branch 'master' into nextLibravatar Junio C Hamano6-361/+747
* master: repo-config: give value_ a sane default so regexec won't segfault Update http-push functionality cvsimport: Remove master-updating code
2006-03-07repo-config: give value_ a sane default so regexec won't segfaultLibravatar Jonas Fonseca2-1/+12
Signed-off-by: Jonas Fonseca <fonseca@diku.dk> Signed-off-by: Junio C Hamano <junkio@cox.net>
2006-03-07Update http-push functionalityLibravatar Nick Hengeveld2-335/+727
This brings http-push functionality more in line with the ssh/git version, by borrowing bits from send-pack and rev-list to process refspecs and revision history in more standard ways. Also, the status of remote objects is determined using PROPFIND requests for the object directory rather than HEAD requests for each object - while it may be less efficient for small numbers of objects, this approach is able to get the status of all remote loose objects in a maximum of 256 requests. Signed-off-by: Junio C Hamano <junkio@cox.net>
2006-03-07cvsimport: Remove master-updating codeLibravatar Matthias Urlichs2-25/+8
The code which tried to update the master branch was somewhat broken. => People should do that manually, with "git merge". Signed-off-by: Matthias Urlichs <smurf@smurf.noris.de> Signed-off-by: Junio C Hamano <junkio@cox.net>
2006-03-06Merge branch 'master' into nextLibravatar Junio C Hamano1-7/+49
* master: Merge branch 'sp/checkout' Merge branch 'fd/asciidoc' Allow format-patch to attach patches Allow adding arbitary lines in the mail header generated by format-patch.
2006-03-06Merge branch 'sp/checkout'Libravatar Junio C Hamano7-27/+371
* sp/checkout: Add --temp and --stage=all options to checkout-index.
2006-03-06Merge branch 'jc/pack' into nextLibravatar Junio C Hamano1-27/+11
* jc/pack: pack-objects: simplify "thin" pack.
2006-03-06Merge branch 'fd/asciidoc'Libravatar Junio C Hamano1-0/+10
* fd/asciidoc: Tweak asciidoc output to work with broken docbook-xsl
2006-03-06Allow format-patch to attach patchesLibravatar Mike McCormack1-7/+45
The --attach patch to git-format-patch to attach patches instead of inlining them. Some mailers linewrap inlined patches (eg. Mozilla). Signed-off-by: Junio C Hamano <junkio@cox.net>
2006-03-06Allow adding arbitary lines in the mail header generated by format-patch.Libravatar Mike McCormack1-2/+6
Entries may be added to the config file as follows: [format] headers = "Organization: CodeWeavers\nTo: wine-patches <wine-patches@winehq.org>\n" Signed-off-by: Junio C Hamano <junkio@cox.net>
2006-03-06pack-objects: simplify "thin" pack.Libravatar Junio C Hamano1-27/+11
There was a misguided logic to overly prefer using objects that we are not going to pack as the base object. This was unnecessary. It does not matter to the unpacking side where the base object is -- it matters more to make the resulting delta smaller. Signed-off-by: Junio C Hamano <junkio@cox.net>
2006-03-06Merge branch 'master' into nextLibravatar Junio C Hamano2-2/+21
* master: annotate-blame: tests incomplete lines. blame: unbreak "diff -U 0".
2006-03-06annotate-blame: tests incomplete lines.Libravatar Junio C Hamano1-0/+19
Signed-off-by: Junio C Hamano <junkio@cox.net>
2006-03-06blame: unbreak "diff -U 0".Libravatar Junio C Hamano1-2/+2
The commit 604c86d15bb319a1e93ba218fca48ce1c500ae52 changed the original "diff -u0" to "diff -u -U 0" for portability. A big mistake without proper testing. The form "diff -u -U 0" shows the default 3-line contexts, because -u and -U 0 contradicts with each other; "diff -U 0" (or its longhand "diff --unified=0") is what we meant. Signed-off-by: Junio C Hamano <junkio@cox.net>
2006-03-05Merge branch 'fd/asciidoc' into nextLibravatar Junio C Hamano21-122/+340
* fd/asciidoc: Tweak asciidoc output to work with broken docbook-xsl annotate-blame test: add evil merge. annotate-blame test: don't "source", but say "." annotate/blame tests updates. annotate: Support annotation of files on other revisions. git/Documentation: fix SYNOPSIS style bugs blame: avoid "diff -u0". git-blame: Use the same tests for git-blame as for git-annotate blame and annotate: show localtime with timezone. blame: avoid -lm by not using log(). git-blame: Make the output human readable get_revision(): do not dig deeper when we know we are at the end. documentation: add 'see also' sections to git-rm and git-add contrib/emacs/Makefile: Provide tool for byte-compiling files. gitignore: Ignore some more boring things.
2006-03-05Tweak asciidoc output to work with broken docbook-xslLibravatar Francis Daly1-0/+10
docbook-xsl v1.68 incorrectly converts "<screen>" from docbook to manpage by not rendering it verbatim. v1.69 handles it correctly, but not many current popular distributions ship with it. asciidoc by default converts "listingblock" to "<screen>". This change causes asciidoc in git to convert "listingblock" to "<literallayout>", which both old and new docbook-xsl handle correctly. The difference can be seen in any manpage which includes a multi-line example, such as git-branch. [jc: the original patch was an disaster for html backends, so I made it apply only to docbook backends. ] Signed-off-by: Junio C Hamano <junkio@cox.net>
2006-03-05annotate-blame test: add evil merge.Libravatar Junio C Hamano1-0/+9
Signed-off-by: Junio C Hamano <junkio@cox.net>
2006-03-05annotate-blame test: don't "source", but say "."Libravatar Junio C Hamano2-2/+2
Just I am old fashioned. Source inclusion in bourne shell is "." (dot), not "source" -- that's csh. [jc: yes I know bash groks it, but I am old fashioned.] Signed-off-by: Junio C Hamano <junkio@cox.net>
2006-03-05annotate/blame tests updates.Libravatar Junio C Hamano1-37/+44
This rewrites the result check code a bit. The earlier one using awk was splitting columns at any whitespace, which confused lines attributed incorrectly to the merge made by the default author "A U Thor <author@example.com>" with lines attributed to author "A". The latest test by Ryan to add the "starting from older commit" test is also included, with another older commit test. Signed-off-by: Junio C Hamano <junkio@cox.net>
2006-03-05annotate: Support annotation of files on other revisions.Libravatar Ryan Anderson1-2/+4
This is a bug fix, and cleans up one or two other things spotted during the course of tracking down the main bug here. [jc: the part that updates test-suite is split out to the next one. Also I dropped "use Data::Dumper;" which seemed leftover from debugging session.] Signed-off-by: Ryan Anderson <ryan@michonline.com> Signed-off-by: Junio C Hamano <junkio@cox.net>
2006-03-05Merge part of 'jc/pack' into 'next'Libravatar Junio C Hamano1-1/+19
2006-03-05git/Documentation: fix SYNOPSIS style bugsLibravatar Dmitry V. Levin8-10/+10
This trivial patch fixes SYNOPSIS style bugs. Signed-off-by: Dmitry V. Levin <ldv@altlinux.org> Signed-off-by: Junio C Hamano <junkio@cox.net>
2006-03-05blame: avoid "diff -u0".Libravatar Junio C Hamano1-1/+1
As Linus suggests, use "diff -u -U 0" instead. Signed-off-by: Junio C Hamano <junkio@cox.net>