aboutsummaryrefslogtreecommitdiff
path: root/lib
AgeCommit message (Collapse)Author
2009-12-15refs: Added is_valid method to SymbolicReference base classSebastian Thiel
2009-12-10removed nonsense IndexLock implementationSebastian Thiel
2009-12-10index: IndexLock added to provide some kind of critical section for index ↵Sebastian Thiel
based git operations in concurrent environments
2009-12-10index: TempFileMover now handles the case that the file to move does not ↵Sebastian Thiel
exist more gracefully Added BlockingLockFile which may be used to wait for the lock according to some criteria
2009-12-09config: fixed incorrect handling of default value in get_valueSebastian Thiel
remote.config: SectionConstraint now knows about set_value and get_value which are new to the GitConfigParser
2009-12-09repo: Added alias for refs property, which is called 'references' , to ↵Sebastian Thiel
improve usability. There was no reason that only 'refs' is shortened, whereas there are 'heads' and 'tags' as well
2009-12-08config.set_value: added more convenient set_value method to ConfigReaderSebastian Thiel
2009-12-08config.get_value: Added default argument including testSebastian Thiel
2009-12-07index: Checkout exception now contains information about the reason of the ↵Sebastian Thiel
failure as well, one per failed file
2009-12-07Reference: reading of commit data is now safer and handles non-existing ↵Sebastian Thiel
paths - previously it would run into a code-branch I forgot
2009-12-04SymbolicRefence base is now fully aware of pack files in all operations.Sebastian Thiel
Ref(anytype) Iteration was improved such that automatic filtering now also works for SymbolicReferences ( which only return symbolic refs)
2009-12-04refs: Fixed incorrect retrieval of symbolic reference types - previously we ↵Sebastian Thiel
only really knew heads, now we know references as a common base. The adjustment make the ref system as flexible as it was originally meant to be
2009-12-04SymbolicReference creation now won't fail if the target already exists and ↵Sebastian Thiel
has the same content as the new reference
2009-12-03refs.rename: improved handling as it will only raise ( if not forced ) if ↵Sebastian Thiel
the destination contains different data. If it contains the same, the move will work as we can do what the user intended
2009-12-03refs: Implemented low-level (Symbolic)Reference renaming as some references ↵Sebastian Thiel
cannot be reamed using the git-branch command if they are not in refs/heads, that is in a non-standard refs folder
2009-12-03config: implemented get_value method to have a safe way to make general ↵Sebastian Thiel
queries to the git configuration, returning a value in the proper type. In a way its not supposed to be used as you should know the type of your configuration option or get an exception otherwise
2009-12-03repo: renamed directories to more descriptive identifiers and made them ↵Sebastian Thiel
safer to use in case of bare repositories
2009-12-03repo: fixed incorrect path handling thta could lead to issues if the ↵Sebastian Thiel
repository was initialized with a .git repository, although it was not bare actually
2009-12-01commit.create_from_tree: head will not be advanced anymore as it feels ↵Sebastian Thiel
non-natural when using it
2009-11-30index: Added BlobFilter utility class to make filtering of blobs from the ↵Sebastian Thiel
index easier
2009-11-30SymbolicReference.delete: Now takes SymbolicReference instances as well, not ↵Sebastian Thiel
only paths diff.__str__: fixed incorrect message generation error
2009-11-30Generalized custom reference creation down to SymbolicReference level. ↵Sebastian Thiel
'Reference' implementation now shares all the code from the SymbolicReference base. This implementation allows to create any reference you'd like without requireing git calls
2009-11-30ref: Added general method to create and delete any reference pointing to any ↵Sebastian Thiel
object. They are only constrained to be located in the refs/ directory
2009-11-27Traversable.traverse: Added as_edge option allowing to receive the source of ↵Sebastian Thiel
the item as well to enable predicates to do more proper checking
2009-11-27Fixed issue with commit traversal due to missing visit_once in the traversal ↵Sebastian Thiel
method, improved code performance by disabling the visit-once flag by default for trees, which by nature are not recursive
2009-11-27ItemTraversal: Predicate and prune functions now provide depth information, ↵Sebastian Thiel
allowing the callee to know more about its environment
2009-11-27improved performance of item traversal, its nearly as fast as it was with ↵Sebastian Thiel
the first very pure implementation
2009-11-26tree: added traversal method, adjusted testsSebastian Thiel
Fixed critical bug in object code: IndexObjects now use their path as hashkey, not the data\!
2009-11-26objects.utils: Added Traversable base and implemented it for commits ↵Sebastian Thiel
including a test
2009-11-26SymbolicReference is now the base for all references, allowing them to ↵Sebastian Thiel
appear litereally anywhere. A 'default' reference is nothing more than a detached symbolic reference. Added method iterate the packed refs file
2009-11-26Initially put SymbolicRef as base class of Reference, which theoretically is ↵Sebastian Thiel
how it should be, but many tests are still failing as the implementation is not yet there
2009-11-26SymbolicReferences can now be at any path within the repository, there is no ↵Sebastian Thiel
restriction anymore. Added a test to assure the git commands can handle it
2009-11-25diff: added __str__ method to diff classSebastian Thiel
IndexObject._mode_str_to_int: Now uses the 6 relevant bytes of the passed in octal string
2009-11-25index.write_tree: fixed bug that would cause the written tree not to contain ↵Sebastian Thiel
any of our changes entries as it would in fact write a possibly cached tree stored in our extension data.It was solved by simply ignoring that extension data when writing the index for tree creation. A test was added for this as well
2009-11-24PushInfo: added summary field to help providing user readable informationSebastian Thiel
Index.checkout: fixed bug in exception creator function
2009-11-24commit: added create_from_tree method to untie commit creation from actually ↵Sebastian Thiel
using the current index. This makes it more flexible. For convenience, the index.commit method is still available, it delgates all the work
2009-11-24index.merge_tree function added including test.Sebastian Thiel
index.write_tree may now use the missing_ok argument which writes trees faster and allows you to operate without objects to do a true index based merge
2009-11-23diff: fixed issue in diff implementation which would just drop null-shas ↵Sebastian Thiel
that always occour when dealing with working tree diffs ( for ovious reasons ). Also the implementation would previously leave empty blobs where no file actually existed
2009-11-23remote.fetch: fetchInfo would not provide old_commit information in case of ↵Sebastian Thiel
fast_forwards although. Renamed cumbersome 'commit_before_forced_updated' attribute to 'old_commit' to be en par with PushInfo
2009-11-23index.checkout: improved handling of errors as the thrown exception contains ↵Sebastian Thiel
exact information about the successfully checked out files as well as the failed ones Return value of the method is an iterator to all checked out files
2009-11-23index.checkout: improved parsing of stderr to properly handle more unusual ↵Sebastian Thiel
messages - previously it would be more narrow and raise a GitCommandError in cases where it wasnt actually needed
2009-11-23index.checkout: Now parsing stderror in the end to determine which files ↵Sebastian Thiel
have not been updated as they where modified locally or did not exist. Test was improved to check for this new case.
2009-11-22index.checkout: Added progress function and made adjustments to testSebastian Thiel
2009-11-21index: Path expansion routine is now iterator which assures more timely ↵Sebastian Thiel
processing - delays could have been possible previously as it would expand (possibly) large amounts of paths in advance
2009-11-21index.add: adjusted code to deal with update-index stdout 'bug' - now the ↵Sebastian Thiel
code does not rely on my own git patch anymore as it is unsure whether it will make it in there or when
2009-11-20index.add: added progress function support and made sure progress is sent ↵Sebastian Thiel
just in time This adds a dependency to a git update index fix - and I hope it will be put in in time ( including windows version )
2009-11-18index: Added IndexEntry.from_base method including test in conjunction with ↵Sebastian Thiel
symlinks. Added index.get_entries_key method to allow direct access to anyone willing to do so
2009-11-10repo: may now be initialized from a path with envrionment variables. ↵Sebastian Thiel
Previously it would consider such a path a relative one and handle it incorrectly
2009-11-06Actor: fixed incorrect parsing of names from lines in case there was no ↵unknown
email address specified
2009-11-06Fixed commit.count method which now handles the paths case properly. It ↵Sebastian Thiel
appears git-rev-list uses empty paths in some way, which is quite hard to specify on a shell, but easy if the process is spawned directly