summaryrefslogtreecommitdiff
path: root/lib/git/objects
Commit message (Collapse)AuthorAgeFilesLines
* Updated gitdb submodule, and added note about how the submodule package ↵Sebastian Thiel2010-11-191-1/+2
| | | | manages its dependencies
* Fixed all imports, refactoring appears to be completeSebastian Thiel2010-11-185-12/+43
|
* Split big submodule file into smaller files. Tried to manually get imports ↵Sebastian Thiel2010-11-184-345/+369
| | | | right, but its not yet tested
* Added test for the recursive code path.Sebastian Thiel2010-11-181-1/+1
|
* Added test for branch changes - it appears to work well, at least as far as ↵Sebastian Thiel2010-11-181-5/+14
| | | | the restricted tests are concerned
* Updated tests and implementation to verify functionality for handling ↵Sebastian Thiel2010-11-181-16/+64
| | | | submodule removals, as well as url changes
* first update test succeeds, so it verifies that existing repositories can be ↵Sebastian Thiel2010-11-181-62/+100
| | | | moved later if the configuration changed, and actually it also verifies that the url-change is handled correctly (as we changed the url from the default to the local path)
* Added test-setup which can test all aspects of the (smart) update methodSebastian Thiel2010-11-181-1/+1
|
* ORIG_HEAD handling is now implemented in the ref-class itself, instead of ↵Sebastian Thiel2010-11-181-3/+0
| | | | | | being a special case of the commit method; includes tests util: Fixed iterable lists, which broke due to an incorrectly implemented __contains__ method
* commit: when creating a new commit and advancing the head, it will now write ↵Sebastian Thiel2010-11-181-0/+6
| | | | the ORIG_HEAD reference as well
* RootModule.update: initial implementation of update method, which should be ↵Sebastian Thiel2010-11-171-19/+191
| | | | able to handle submodule removals, additions, path changes and branch changes. All this still needs to be tested though
* submodule: removed module_path method as it is implemented in the abspath ↵Sebastian Thiel2010-11-171-11/+5
| | | | | | property alrdeady Improved submodule move tests
* Inital implementation of Submodule.move including a very simple and ↵Sebastian Thiel2010-11-171-22/+123
| | | | to-be-improved test
* Added rest of submodule.add test code which should be pretty much 100% ↵Sebastian Thiel2010-11-171-4/+11
| | | | coverage for it
* The submodule's branch is now a branch instance, not a plain string anymoreSebastian Thiel2010-11-161-18/+24
|
* Added tests for all failure modes of submodule add ( except for one ), and ↵Sebastian Thiel2010-11-161-11/+29
| | | | fixed a few issues on the way
* Initial implementation of submodule.add without any tests. These are to come ↵Sebastian Thiel2010-11-161-4/+90
| | | | next
* Implemented deletion of submodules including proper testsSebastian Thiel2010-11-161-3/+123
|
* implemented update to_last_revision option including test. Its now possible ↵Sebastian Thiel2010-11-161-6/+37
| | | | to update submodules such as svn-externals
* Improved efficiency of the submodule.update process, improved testSebastian Thiel2010-11-161-19/+27
|
* Added a few utility methods and improved the test. Refs need an improvement ↵Sebastian Thiel2010-11-161-17/+43
| | | | though to allow easy configuration of branch-specific settings
* Submodule now only supports branches to be given as hint that will ↵Sebastian Thiel2010-11-162-49/+117
| | | | svn-external like behaviour. Implemented first version of update, which works for now, but probably needs to see more features
* Added partial implementation of update, but realized that using refs in ↵Sebastian Thiel2010-11-151-1/+59
| | | | 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
* Optimized test-decorators, by completely removing with_bare_rw_repo, which ↵Sebastian Thiel2010-11-151-1/+4
| | | | was mainly copy-paste from with_rw_repo, what a shame
* Repo: added submodule query and iteration methods similar to the ones ↵Sebastian Thiel2010-11-152-3/+51
| | | | provided for Remotes, including test
* Objects: Constructor now manually checks and sets the input arguments to the ↵Sebastian Thiel2010-11-154-49/+227
| | | | | | local cache - previously a procedural approach was used, which was less code, but slower too. Especially in case of CommitObjects unrolling the loop manually makes a difference. Submodule: Implemented query methods and did a bit of testing. More is to come, but the test works for now. As special addition, the submodule implementation uses the section name as submodule ID even though it seems to be just the path. This allows to make renames easier
* Improved GitConfigurationParser to better deal with streams and the ↵Sebastian Thiel2010-11-151-24/+46
| | | | corresponding locks. Submodule class now operates on parent_commits, the configuration is either streamed from the repository or written directly into a blob ( or file ) dependending on whether we have a working tree checkout or not which matches our parent_commit
* submodule: Fleshed out interface, and a partial test which is not yet ↵Sebastian Thiel2010-11-151-3/+112
| | | | usable. It showed that the ConfigParser needs some work. If the root is set, it also needs to refer to the root_commit instead of to the root-tree, as it will have to decide whether it works on the working tree's version of the .gitmodules file or the one in the repository
* Fixed bug that would cause the author's email to be a generic default one, ↵Sebastian Thiel2010-10-271-2/+2
| | | | | | instead of the existing and valid. The rest of the ConfigParser handling is correct, as it reads all configuration files available to git see http://github.com/Byron/GitPython/issues#issue/1
* Added unicode handling for author names. They will now be properly encoded ↵Sebastian Thiel2010-10-151-2/+14
| | | | into the byte stream, as well as decoded from it
* unicode handling in messages and trees was improved. Messages are now ↵Sebastian Thiel2010-08-132-1/+20
| | | | written according to the encoding of the commit object, and decoded using that information as well. Trees will encode and decode their names with utf8
* util.get_user_id(): Will try a windows environment variable as well, the ↵Sebastian Thiel2010-07-161-1/+1
| | | | method now yields good results on all tested platforms
* Unicode: tree_to_stream can now handle unicode names the way git would do ↵Sebastian Thiel2010-07-151-0/+7
| | | | it. Its can be assumed though that there are more bugs related to unicode hanging around in the system
* Adjusted previous object creators to use the rev_parse method directly. ↵Sebastian Thiel2010-07-071-4/+1
| | | | 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
* Initial version of the rev-parse routine, which doesn't work too bad, but ↵Sebastian Thiel2010-07-061-0/+11
| | | | its still rather slow and many tests are not yet implemented
* win32 compatability adjustmentsunknown2010-07-021-6/+5
|
* Removed blob.data property as there is no real reason for an exception to ↵Sebastian Thiel2010-06-291-11/+1
| | | | the rule of trying not to cache possibly heavy data. The data_stream method should be used instead
* Renamed modules utils to util, and errors to exc to be more conforming to ↵Sebastian Thiel2010-06-296-9/+9
| | | | the submodules's naming conventions
* Updated and fixed sphinx API docs, which included one quick skim-throughSebastian Thiel2010-06-294-12/+15
|
* Diff: fixed bug that caused a string to end up as a blob modeSebastian Thiel2010-06-293-1/+3
|
* All tests adjusted to work with the changed internal sha representationSebastian Thiel2010-06-284-25/+29
|
* Adjusted all files to (hopefully) deal with the fact that all objects now ↵Sebastian Thiel2010-06-258-404/+284
| | | | | | | 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
* GitCmdStreamReader: fixed terrible bug which only kicked in if the stream ↵Sebastian Thiel2010-06-241-1/+2
| | | | | | was actually empty. This is a rare case that can happen during stream testing. Theoretically there shouldn't be any empty streams of course, but practically they do exist sometimes ;); fixed stream.seek implementation, which previously used seek on standard output Improved GitCmd error handling
* fixed critical bug in traverse_trees_recursive, implemented IndexFile.new ↵Sebastian Thiel2010-06-231-1/+1
| | | | including simple test, it may be simple as the methods it uses are throroughly tested
* Initial frame for implementing read_tree using pure python. As git-read-tree ↵Sebastian Thiel2010-06-221-0/+118
| | | | | | | can do much more than we can ( and faster assumably ), the .new method is used to create new index instances from up to 3 trees. Implemented multi-tree traversal to facilitate building a stage list more efficiently ( although I am not sure whether it could be faster to use a dictionary together with some intensive lookup ), including test Added performance to learn how fast certain operations are, and whether one should be preferred over another
* index.write_tree: initial version implemented, although its not yet working ↵Sebastian Thiel2010-06-223-93/+95
| | | | | | | correctly, a test to explicitly compare the git version with the python implementation is still missing Tree and Index internally use 20 byte shas, converting them only as needed to reduce memory footprint and processing time objects: started own 'fun' module containing the most important tree functions, more are likely to be added soon
* index: Entries are now using flags internally, instead of reducing the flag ↵Sebastian Thiel2010-06-211-1/+1
| | | | information to just the stage ( just to be closer to the git-original )
* Moved small types that had their own module into the utils moduleSebastian Thiel2010-06-143-7/+65
|
* tree: added TreeModifier, allowing to adjust existing trees safely and or ↵Sebastian Thiel2010-06-144-11/+94
| | | | fast, while staying compatible with serialization which requires it to be sorted
* tree now uses less memory for its cache as it stores the bare deserialized ↵Sebastian Thiel2010-06-141-55/+63
| | | | information - this also speeds up later serialization after changes. its clear though that retrieving actual objects is slower currently as these are not cached anymore. Its worth thinking about moving these encoding, decoding routines to gitdb