aboutsummaryrefslogtreecommitdiff
path: root/fsck-cache.c
Commit message (Collapse)AuthorAge
* Make 'fsck' able to take an arbitrary number of parents on theLinus Torvalds2005-04-13
| | | | | | | | | | | command line. "arbitrary" is a bit wrong, since it is limited by the argument size limit (128kB or so), but let's see if anybody ever cares. Arguably you should prune your tree before you have a few thousand dangling heads in your archive. We can fix it by passing in a file listing if we ever care.
* Make fsck reachability avoid doing unnecessary work forLinus Torvalds2005-04-13
| | | | | | | parents that we reach multiple ways. This doesn't matter right now. It _will_ matter once we have complex revision graphs.
* Make "fsck-cache" use the same revision tracking structure as "rev-tree".Linus Torvalds2005-04-13
| | | | | | | | This makes things a lot more efficient, and makes it trivial to do things like reachability analysis. Add command line flags to tell what the head is, and whether to warn about unreachable objects.
* [PATCH] Consolidate the error handlingPetr Baudis2005-04-13
| | | | | | | Now there is error() for "library" errors and die() for fatal "application" errors. usage() is now used strictly only for usage errors. Signed-off-by: Petr Baudis <pasky@ucw.cz>
* Oops. Fix bad initialization of the "seen" array, causing us to notLinus Torvalds2005-04-10
| | | | | | | | properly clear the reference count at init time. It happened to work for me by pure luck. Until it broke, and my unreferenced commit suddenly looked referenced again. Fixed.
* Oops, the actual 'printf' for missing objects was missing.Linus Torvalds2005-04-10
| | | | | | | | | | | Which made fsck very quiet about objects it hadn't found. So add it. We'll need to make things like these optional, because it's perfectly ok to have partial history if you don't want it, and don't want to go backwards. But for development, it's best to always complain about missing sha1 object files that are referenced from somewhere else.
* Add connectivity tracking to fsck.Linus Torvalds2005-04-10
| | | | | | | | | | | This shows that I've lost track of one commit already. Most likely because I forgot to update the .dircache/HEAD file when doing a commit, so that the next commit referenced not the top-of-tree, but the one older commit. Having dangling commits is fine (in fact, you should always have at least _one_ dangling commit in the top-of-tree). But it's good to know about them.
* Make fsck-cache warn about old-style tree objects that have fullLinus Torvalds2005-04-09
| | | | | | | 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.
* Teach "fsck" and "read-tree" about recursive tree-nodes.Linus Torvalds2005-04-09
| | | | | | 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.
* Make "fsck-cache" print out all the root commits it finds.Linus Torvalds2005-04-09
| | | | | Once I do the reference tracking, I'll also make it print out all the HEAD commits it finds, which is even more interesting.
* Fix missing return values and some error tests for empty index filesLinus Torvalds2005-04-09
| | | | | | | | | 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.
* Make fsck-cache start parsing the object types, and checking theirLinus Torvalds2005-04-08
| | | | | | | internal format. This doesn't yet check the reachability information, but we're getting there.. Slowly.
* Add first cut at "fsck-cache" that validates the SHA1 object store.Linus Torvalds2005-04-08
It doesn't complain about mine. But it also doesn't yet check for inter-object reachability etc.