aboutsummaryrefslogtreecommitdiff
path: root/cache.h
Commit message (Collapse)AuthorAge
* [PATCH] Accept commit in some places when tree is needed.Junio C Hamano2005-04-20
| | | | | | | | | | | | | | | This patch implements read_tree_with_tree_or_commit_sha1(), which can be used when you are interested in reading an unpacked raw tree data but you do not know nor care if the SHA1 you obtained your user is a tree ID or a commit ID. Before this function's introduction, you would have called read_sha1_file(), examined its type, parsed it to call read_sha1_file() again if it is a commit, and verified that the resulting object is a tree. Instead, this function does that for you. It returns NULL if the given SHA1 is not either a tree or a commit. Signed-off-by: Junio C Hamano <junkio@cox.net> Signed-off-by: Linus Torvalds <torvalds@osdl.org>
* Improve build: add <unistd.h> and use -O2 instead of -O3Linus Torvalds2005-04-20
| | | | (Nobody should use -O3. It just makes bad inlining decisions).
* Make the sha1 of the index file go at the very end of the file.Linus Torvalds2005-04-20
| | | | This allows us to both calculate it and verify it faster.
* Do SHA1 hash _before_ compression.Linus Torvalds2005-04-20
| | | | | And add a "convert-cache" program to convert from old-style to new-style.
* Be much more liberal about the file mode bits.Linus Torvalds2005-04-16
| | | | | | We only really care about the difference between a file being executable or not (by its owner). Everything else we leave for the user umask to decide.
* [PATCH] Add --stage to show-files for new stage dircache.Junio C Hamano2005-04-16
| | | | | | | | | This adds --stage option to show-files command. It shows file-mode, SHA1, stage and pathname. Record separator follows the usual convention of -z option as before. Signed-off-by: Junio C Hamano <junkio@cox.net> Signed-off-by: Linus Torvalds <torvalds@osdl.org>
* [PATCH] Byteorder fix for read-tree, new -m semantics version.Junio C Hamano2005-04-16
| | | | | | | | | | | | The ce_namelen field has been renamed to ce_flags and split into the top 2-bit unused, next 2-bit stage number and the lowest 12-bit name-length, stored in the network byte order. A new macro create_ce_flags() is defined to synthesize this value from length and stage, but it forgets to turn the value into the network byte order. Here is a fix. Signed-off-by: Junio C Hamano <junkio@cox.net> Signed-off-by: Linus Torvalds <torvalds@osdl.org>
* Make cache entry comparison take the new "state" flag into account.Linus Torvalds2005-04-15
| | | | | This is what allows us to have multiple states of the same file in the index, and what makes it always sort correctly.
* Encode a few extra flags per index entry.Linus Torvalds2005-04-15
| | | | | | This will allow us to have the same name in different "states" in the index at the same time. Which in turn seems to be a very simple way to merge.
* Convert the index file reading/writing to use network byte order.Linus Torvalds2005-04-15
| | | | | | | This allows using a git tree over NFS with different byte order, and makes it possible to just copy a fully populated repository and have the end result immediately usable (needing just a refresh to update the stat information).
* [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>
* Rename ".dircache" directory to ".git"Linus Torvalds2005-04-11
| | | | I started out calling the tool "dircache". That's clearly moronic.
* Add "-R" flag to "diff-tree", so that it will recursively traverse a tree of ↵Linus Torvalds2005-04-10
| | | | | | | | trees as it diffs them. This makes diff-tree usable again in the new world order.
* Make "update-cache" a bit friendlier to use (and harder to mis-use).Linus Torvalds2005-04-10
| | | | | | | It now requires the "--add" flag before you add any new files, and a "--remove" file if you want to mark files for removal. And giving it the "--refresh" flag makes it just update all the files that it already knows about.
* This implements the new "recursive tree" write-tree.Linus Torvalds2005-04-09
| | | | | | 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.
* Export "cache_name_compare()" helper function.Linus Torvalds2005-04-09
| | | | The "diff-tree" program needs it.
* Make "write_cache()" and friends available as generic routines.Linus Torvalds2005-04-09
| | | | | | 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).
* Make the cache stat information comparator public.Linus Torvalds2005-04-09
| | | | | Like the cache filename finder, it's a generically useful function, rather than something specific to the current "show-diff" thing.
* Make "cache_name_pos()" available to others.Linus Torvalds2005-04-09
| | | | | | | | 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.
* 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.
* Add "check_sha1_signature()" helper functionLinus Torvalds2005-04-08
| | | | And fix up header declarations.
* Factor out "read_sha1_file" into mapping/inflating/unmapping.Linus Torvalds2005-04-08
| | | | | This allows us to also actually check the sha1 hash using these routines. Needed for the "fsck" thing.
* Make "cat-file" output the file contents to stdout.Linus Torvalds2005-04-08
| | | | | 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.
* Initial revision of "git", the information manager from hellLinus Torvalds2005-04-07