summary |
shortlog | log |
commit |
commitdiff |
tree
first ⋅ prev ⋅ next
Linus Torvalds [Sun, 10 Apr 2005 00:09:34 +0000 (17:09 -0700)]
This implements the new "recursive tree" write-tree.
It's got some debugging printouts etc still in it, but testing on the
kernel seems to show that it does indeed fix the issue with huge tree
files for each commit.
Linus Torvalds [Sat, 9 Apr 2005 22:47:03 +0000 (15:47 -0700)]
Make fsck-cache warn about old-style tree objects that have full
pathnames in them. We're migrating away from that.
This will cause tons of warnings for the current "sparse" archive,
but hell, better now than later.
Linus Torvalds [Sat, 9 Apr 2005 22:36:41 +0000 (15:36 -0700)]
Teach "fsck" and "read-tree" about recursive tree-nodes.
This is totally untested, since we can't actually _write_ things that
way yet, but I'll get to that next, I hope. That should fix the
huge wasted space for kernel-sized tree objects.
Linus Torvalds [Sat, 9 Apr 2005 20:02:30 +0000 (13:02 -0700)]
Make "fsck-cache" print out all the root commits it finds.
Once I do the reference tracking, I'll also make it print out all the
HEAD commits it finds, which is even more interesting.
Linus Torvalds [Sat, 9 Apr 2005 20:00:54 +0000 (13:00 -0700)]
Add "diff-tree" program to show which files have changed between two trees.
Very useful for creating diffs efficiently, and in general to see what has
changed in the namespace.
Linus Torvalds [Sat, 9 Apr 2005 19:59:11 +0000 (12:59 -0700)]
Export "cache_name_compare()" helper function.
The "diff-tree" program needs it.
Linus Torvalds [Sat, 9 Apr 2005 19:11:25 +0000 (12:11 -0700)]
Make "read-tree" read the tree into the current directory cache.
It will no longer update the actual working directory, just the
cache. To update the working directory, you need to use "checkout-cache".
Linus Torvalds [Sat, 9 Apr 2005 19:09:27 +0000 (12:09 -0700)]
Make "write_cache()" and friends available as generic routines.
This is needed for the change to make "read-tree" just read into the
cache (and then you do a "checkout-cache" to update your current dir
contents).
Linus Torvalds [Sat, 9 Apr 2005 18:24:41 +0000 (11:24 -0700)]
Fix "checkout-cache.c" mis-use of read_sha1_file() interface.
It's supposed to test the returned file type, not think that read_sha1_file()
tests it. Confusion from "cat-file" command line usage.
Linus Torvalds [Sat, 9 Apr 2005 16:59:44 +0000 (09:59 -0700)]
Fix up "checkout-cache" a bit
Make the warnings have newlines, and don't stop "checkout-cache -a"
just because a file already exists.
Linus Torvalds [Sat, 9 Apr 2005 16:53:05 +0000 (09:53 -0700)]
Add a "checkout-cache" command which does what the name suggests.
I'll also eventually change "read-tree" to only update the cache
information, instead of doing a checkout of the tree. Much nicer.
Linus Torvalds [Sat, 9 Apr 2005 16:48:20 +0000 (09:48 -0700)]
Make the cache stat information comparator public.
Like the cache filename finder, it's a generically useful function,
rather than something specific to the current "show-diff" thing.
Linus Torvalds [Sat, 9 Apr 2005 16:26:55 +0000 (09:26 -0700)]
Make "cache_name_pos()" available to others.
It finds the cache entry position for a given name, and is
generally useful. Sure, everybody can just scan the active
cache array, but since it's sorted, you actually want to
search it with a binary search, so let's not duplicate that
logic all over the place.
Linus Torvalds [Sat, 9 Apr 2005 07:25:22 +0000 (00:25 -0700)]
Fix missing return values and some error tests for empty index files
Patches from Dave Jones and Ingo Molnar, but since I don't have any
infrastructure in place to use the old patch applicator scripts I
am trying to build up, I ended up fixing the thing by hand instead.
Credit where credit is due, though. Nice to see that people are
taking a look at the project even in this early stage.
Linus Torvalds [Sat, 9 Apr 2005 00:11:14 +0000 (17:11 -0700)]
Make fsck-cache start parsing the object types, and checking their
internal format.
This doesn't yet check the reachability information, but we're getting
there.. Slowly.
Linus Torvalds [Fri, 8 Apr 2005 22:31:19 +0000 (15:31 -0700)]
Add "-lz" to link line to get in zlib.
Not all Linux distributions seem to need it (notably not YDL on ppc64), but
enough ones obviously do.
Linus Torvalds [Fri, 8 Apr 2005 22:04:51 +0000 (15:04 -0700)]
Add new fsck-cache to Makefile.
This is what happens when there are no nice tools to tell you to do things
properly.
Linus Torvalds [Fri, 8 Apr 2005 22:02:42 +0000 (15:02 -0700)]
Add first cut at "fsck-cache" that validates the SHA1 object store.
It doesn't complain about mine. But it also doesn't yet check for
inter-object reachability etc.
Linus Torvalds [Fri, 8 Apr 2005 22:01:15 +0000 (15:01 -0700)]
Add "check_sha1_signature()" helper function
And fix up header declarations.
Linus Torvalds [Fri, 8 Apr 2005 21:42:29 +0000 (14:42 -0700)]
Factor out "read_sha1_file" into mapping/inflating/unmapping.
This allows us to also actually check the sha1 hash using these
routines. Needed for the "fsck" thing.
Linus Torvalds [Fri, 8 Apr 2005 16:59:28 +0000 (09:59 -0700)]
Use "-Wall -O2" for the compiler to get more warnings.
And fix up the warnings that it pointed out. Let's keep the tree
clean from early on.
Not that the code is very beautiful anyway ;)
Linus Torvalds [Fri, 8 Apr 2005 16:16:38 +0000 (09:16 -0700)]
Make "cat-file" output the file contents to stdout.
New syntax: "cat-file -t <sha1>" shows the tag, while "cat-file <tag> <sha1>"
outputs the file contents after checking that the supplied tag matches.
Linus Torvalds [Fri, 8 Apr 2005 04:03:28 +0000 (21:03 -0700)]
Make read-tree actually unpack the whole tree.
I needed this to make a "sparse" archive conversion from my old
BitKeeper tree data. The scripts to do the conversion are just
incredibly ugly, but they seem to validate the notion that you
can actually use this silly 'git' thing to save your history in.
Linus Torvalds [Thu, 7 Apr 2005 22:16:10 +0000 (15:16 -0700)]
Add copyright notices.
The tool interface sucks (especially "committing" information, which is just
me doing everything by hand from the command line), but I think this is in
theory actually a viable way of describing the world. So copyright it.
Linus Torvalds [Thu, 7 Apr 2005 22:13:13 +0000 (15:13 -0700)]
Initial revision of "git", the information manager from hell