aboutsummaryrefslogtreecommitdiff
path: root/lib/git/refs.py
AgeCommit message (Collapse)Author
2010-11-21moved all contents, incl. submodule gitdb, up to the root directorySebastian Thiel
2010-11-21Fixed API reference docs as far as possibleSebastian Thiel
2010-11-18ORIG_HEAD handling is now implemented in the ref-class itself, instead of ↵Sebastian Thiel
being a special case of the commit method; includes tests util: Fixed iterable lists, which broke due to an incorrectly implemented __contains__ method
2010-11-18commit: when creating a new commit and advancing the head, it will now write ↵Sebastian Thiel
the ORIG_HEAD reference as well
2010-11-16remote: added methods to set and query the tracking branch status of normal ↵Sebastian Thiel
heads, including test. Config: SectionConstraint was updated with additional callable methods, the complete ConfigParser interface should be covered now Remote: refs methods is much more efficient now as it will set the search path to the directory containing the remote refs - previously it used the remotes/ base directory and pruned the search result
2010-11-15Added partial implementation of update, but realized that using refs in ↵Sebastian Thiel
general may be contradicting if a tag is given there, as well as a commit sha of the submodule. Hence it should really be only a branch
2010-11-06test_refs: fixed failing tests just by making it less strict. It is ↵Sebastian Thiel
dependent on the setup of the surrounding repository, hence the amount of ref-types found is actually variable, as long as they get more
2010-10-27cmd: improved error handling and debug printingSebastian Thiel
head.reset: will now handle resets with paths much better, especially in the --mixed case, see http://github.com/Byron/GitPython/issues#issue/2
2010-07-07Adjusted previous object creators to use the rev_parse method directly. ↵Sebastian Thiel
rev_parse could be adjusted not to return Objects anymore, providing better performance for those who just want a sha only. On the other hand, the method is high-level and should be convenient to use as well, its a starting point for more usually, hence its unlikely to call it in tight loops
2010-07-06Made repo.py a package to allow better localization of functions and ↵Sebastian Thiel
utilities - the repo module got rather large
2010-07-06Refs now use object.new_from_sha where possible, preventing git-batch-check ↵Sebastian Thiel
to be started up for sha resolution
2010-07-06RevParse now generally works, but there are still some more specialized ↵Sebastian Thiel
tests missing
2010-07-06Initial version of the rev-parse routine, which doesn't work too bad, but ↵Sebastian Thiel
its still rather slow and many tests are not yet implemented
2010-06-29Renamed modules utils to util, and errors to exc to be more conforming to ↵Sebastian Thiel
the submodules's naming conventions
2010-06-29Updated and fixed sphinx API docs, which included one quick skim-throughSebastian Thiel
2010-06-28All tests adjusted to work with the changed internal sha representationSebastian Thiel
2010-06-25Adjusted all files to (hopefully) deal with the fact that all objects now ↵Sebastian Thiel
use 20 byte sha's internally as it is closer to the GitDB implementation Switched all remaining files back to tabs Adjusted all remaining docstrings to suit the sphinx doc convention - its likely that there are many of docstring syntax errors though
2010-05-26refs: a Reference can now be created by assigning a commit or object (for ↵Sebastian Thiel
convenience)
2010-05-10repo: added test with some basic assertions for empty repositories theseSebastian Thiel
repo.is_dirty: Will not fail on empty repo ( anymore ) index.entries: will just be empty if the repository is empty refs: added to_full_path method which can be used to create fully synthetic instances of Reference types, added a test for it Converted all touched files to spaces, which is why git reports so many changed files. Actually I was thinking every file would use spaces, but apparently not
2010-03-04Converted all tabs to 4 space characters each to comply with pep8Sebastian Thiel
2009-12-15refs: Added is_valid method to SymbolicReference base classSebastian Thiel
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-03repo: renamed directories to more descriptive identifiers and made them ↵Sebastian Thiel
safer to use in case of bare repositories
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-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-05Added utilities helping to create proper paths either with slashes or ↵Sebastian Thiel
backslashes depending on the operating system fixed test_refs and test_trees Many more issues remain though, this is just a first backup commit
2009-11-04head.checkout method added including testSebastian Thiel
2009-11-04added all new files to reference.rst and corrected the worst mistakes. There ↵Sebastian Thiel
are still a few errors left that I cannot fix as it complains about whitespace in the end ... that is exactly what I hate restructured text for, its just a ... anyway.
2009-11-03refs: iter_items now imlemented natively for additional performance. We did ↵Sebastian Thiel
not implement the crazy sorting feature found in git-for-each-ref though
2009-11-03Reference.from_path now only creates references, not symbolic refs. ↵Sebastian Thiel
SymbolicReference.from_path creates only symbolic refs. This change was not detected by a test, hence there is room for improvement on the testing field
2009-11-03Now using git-update-ref and git-symbolic-ref to update references with ↵Sebastian Thiel
reflog support. This should be manually implemented though for more performance, what it does is relatively easy
2009-11-03object: renamed id attribute to sha as it in fact is always being rewritten ↵Sebastian Thiel
as sha, even if the passed in id was a ref. This is done to assure objects are uniquely identified and will compare correctly
2009-11-03repo: added create_* and delete_* methods for refs ( head, tag, remote ) as ↵Sebastian Thiel
a convenient shortcut to using the classes manually
2009-11-03Intermediate commit with a few added and improved tests as well as many fixesSebastian Thiel
2009-10-27renamed remote_branch to remote_head, improved errror messageSebastian Thiel
2009-10-27Reference._from_string will now create the appropriate type, not just the ↵Sebastian Thiel
type of the actual class. This could result in a symbolic reference returned even though you technically requested a reference - this issue must still be addressed.
2009-10-27put _make_file helper method into TestBase classSebastian Thiel
remote: prepared FetchInfo class to be returned by fetch and pull. About to implement tests
2009-10-26refs.SymoblicRef: implemented direcft setting of the symbolic references ↵Sebastian Thiel
commit, which possibly dereferences to the respective head
2009-10-23Refs can now set the reference they are pointing to in a controlled fashion ↵Sebastian Thiel
by writing their ref file directly
2009-10-23Added TagRefernce creation and deletion including testsSebastian Thiel
Added RemoteReference deletion and test
2009-10-23Implemented head methods: create, delete, rename, including testsSebastian Thiel