aboutsummaryrefslogtreecommitdiff
AgeCommit message (Collapse)Author
2009-11-04improved error when setting up server based test to make clear a server ↵Sebastian Thiel
needs to be started
2009-11-04helpers: fixed and improved test repo decorators to use the new ↵Sebastian Thiel
head.checkout functions for greater ease of use - they work exactly as expected now. Fixed failing test in remote tests by actually removing the line
2009-11-04Merge branch 'improvements'Sebastian Thiel
2009-11-04head.checkout method added including testSebastian Thiel
2009-11-04Merge branch 'docs' into improvementsSebastian Thiel
* docs: Converted tabs to spaces. added paragraph about the diffing engine and how to switch branches, which once more shows the need for a real checkout for all the people who do not want to implement all the safety facilities themselves Added Index Object paragraph and wrote the Remote Handling paragraph. Updated repo area added paragraph about using the git-python command Worked on the tree object handling and realized an issue with attribute naming on index objects and the way the system handles these initial work on tutorial.rst added all new files to reference.rst and corrected the worst mistakes. There 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-04Converted tabs to spaces.Sebastian Thiel
Set required mock version to 0.5
2009-11-04added query for 'M' modified diffs to DiffIndex including test. The latter ↵Sebastian Thiel
one was made faster by reducing the amount of permutations to the minimal value
2009-11-04added paragraph about the diffing engine and how to switch branches, which ↵Sebastian Thiel
once more shows the need for a real checkout for all the people who do not want to implement all the safety facilities themselves
2009-11-04Added Index Object paragraph and wrote the Remote Handling paragraph. ↵Sebastian Thiel
Updated repo area
2009-11-04added paragraph about using the git-python commandSebastian Thiel
2009-11-04Worked on the tree object handling and realized an issue with attribute ↵Sebastian Thiel
naming on index objects and the way the system handles these
2009-11-04initial work on tutorial.rstSebastian 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-04Improved cmd error handling in case an invalid revision is specified for an ↵Sebastian Thiel
object repo.tree: improved to be less restricting
2009-11-04IndexObject: assured that .path fields are relative to the repository ( ↵Sebastian Thiel
previously it would just be a name ) added abspath property and name property to provide easy access to most common paths of an index object
2009-11-04tree: parsing would fail when symlinks where encountered. This has been fixedSebastian Thiel
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-03remotes are now retrieved directly by parsing the repository configuration ↵Sebastian Thiel
file. This removes a git command invocation
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-03remote.push: Fixed progress parsing, previously it would read whole lines ↵Sebastian Thiel
only which is equivalent to waiting for an operation to finish completely. Now we parse the stream manually, allowing to retrieve progress information as soon as it happens
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-03repo.is_dirty: is a method now - the property based interface didn't allow ↵Sebastian Thiel
all parameters to be used. The test would not test everything either, and I would consider this a bug that slipped through
2009-11-03Merge branch 'remotes' into improvementsSebastian Thiel
* remotes: Finished all push tests I could think of so far. More error cases should be studied, but they would be hard to 'produce' Intermediate commit with a few added and improved tests as well as many fixes Implemented PushProgress and PushInfo class including basic test cases. Now many more test-cases need to be added to be sure we can truly deal with everything git throws at us Added frame for push testing and push implemenation Another attempt to make fetch emit progress information, but in fact its proven now that this is not happening if stderr is being redirected. A test is in place that will most likely fail in case this ever changes Added repo.refs for completeness (as remote.refs is there as well and quite nice to use) Tried to use shallow repository - this works in case it is remote, but unfortunately, deepening the repository fails if the server is used. This is bad, but a workaround is to create another shared repo which pushes a changes that we fetch into our given repo. This should provide more output to properly test the fetch handling. Harder than I thought Fixed bug when listing remotes - it was based on references which is incorrect as it cannot always work FetchInfo class is not a subclass of Remote class anymore, as more classes are to be added it cluttered up the view and made things more complex as well IterableList: added support for prefix allowing remote.refs.master constructs, previously it was remote.refs['%s/master'%remote] tag handling tests finished, unfortunately there is not yet a rejected case, but it will assuambly follow with the push tests Implemented handling of FETCH_HEAD and tags, some test cases still missing dealing with deletion and movements of remote tags ( which in fact is discouraged, but we should be able to deal with it, shouldnt we ;) Added special cases to test that shows we cannot yet: Added remote stale_refs property including test, tested new remote branch handling and deletion of stale remote branches renamed remote_branch to remote_head, improved errror message Added non-fast forward test case, fixed parsing issue caused by initial line stripping implemented test for rejection handling and fixed a bug when parsing remote reference paths Added testing frame for proper fetch testing to be very sure this works as expected. Plenty of cases still to be tested Reference._from_string will now create the appropriate type, not just the 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. put _make_file helper method into TestBase class
2009-11-03Finished all push tests I could think of so far. More error cases should be ↵Sebastian Thiel
studied, but they would be hard to 'produce'
2009-11-03Intermediate commit with a few added and improved tests as well as many fixesSebastian Thiel
2009-11-02Implemented PushProgress and PushInfo class including basic test cases. Now ↵Sebastian Thiel
many more test-cases need to be added to be sure we can truly deal with everything git throws at us
2009-10-28Added frame for push testing and push implemenationSebastian Thiel
2009-10-28Another attempt to make fetch emit progress information, but in fact its ↵Sebastian Thiel
proven now that this is not happening if stderr is being redirected. A test is in place that will most likely fail in case this ever changes
2009-10-28Added repo.refs for completeness (as remote.refs is there as well and quite ↵Sebastian Thiel
nice to use)
2009-10-28Tried to use shallow repository - this works in case it is remote, but ↵Sebastian Thiel
unfortunately, deepening the repository fails if the server is used. This is bad, but a workaround is to create another shared repo which pushes a changes that we fetch into our given repo. This should provide more output to properly test the fetch handling. Harder than I thought
2009-10-28Fixed bug when listing remotes - it was based on references which is ↵Sebastian Thiel
incorrect as it cannot always work
2009-10-28FetchInfo class is not a subclass of Remote class anymore, as more classes ↵Sebastian Thiel
are to be added it cluttered up the view and made things more complex as well
2009-10-28IterableList: added support for prefix allowing remote.refs.master ↵Sebastian Thiel
constructs, previously it was remote.refs['%s/master'%remote] Added first simple test for push support, which shows that much more work is needed on that side to allow just-in-time progress information
2009-10-28tag handling tests finished, unfortunately there is not yet a rejected case, ↵Sebastian Thiel
but it will assuambly follow with the push tests
2009-10-27Implemented handling of FETCH_HEAD and tags, some test cases still missing ↵Sebastian Thiel
dealing with deletion and movements of remote tags ( which in fact is discouraged, but we should be able to deal with it, shouldnt we ;)
2009-10-27Added special cases to test that shows we cannot yet:Sebastian Thiel
handle the FETCH_HEAD case and handle tags System needs to be adjusted to take the FETCH_HEAD info into account to cover the tags case
2009-10-27Added remote stale_refs property including test, tested new remote branch ↵Sebastian Thiel
handling and deletion of stale remote branches
2009-10-27renamed remote_branch to remote_head, improved errror messageSebastian Thiel
2009-10-27Added non-fast forward test case, fixed parsing issue caused by initial line ↵Sebastian Thiel
stripping
2009-10-27implemented test for rejection handling and fixed a bug when parsing remote ↵Sebastian Thiel
reference paths
2009-10-27Added testing frame for proper fetch testing to be very sure this works as ↵Sebastian Thiel
expected. Plenty of cases still to be tested
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-26Merge branch 'index' into improvementsSebastian Thiel
* index: index.add: Finished implemenation including through tests When parsing trees, we now store the originan type bits as well, previously we dropped it cmd.wait: AutoKill wrapped process will automatically raise on errors to unify error handling amongst clients using the process directly. It might be needed to add a flag allowing to easily override that added head kwarg to reset and commit method, allowing to automatically change the head to the given commit, which makes the methods more versatile refs.SymoblicRef: implemented direcft setting of the symbolic references commit, which possibly dereferences to the respective head index.commit: implemented initial version, but in fact some more changes are required to have a nice API. Tests are not yet fully done either actor: added __eq__, __ne__ and __hash__ methods including simple test index.remove implemented including throrough test Implemented index.reset method including test IndexEntry is now based on a 'minimal' version that is suitable to be fed into UpdateIndex. The Inode and device information is only needed to quickly compare the index against the working tree for changes, hence it should not be that dominant in the API either. More changes to come Added notes about git-update-ref Refs can now set the reference they are pointing to in a controlled fashion by writing their ref file directly Added TagRefernce creation and deletion including tests Implemented head methods: create, delete, rename, including tests refs: added create, delete and rename methods where appropriate. Tests are marked, implementation is needed for most of them Added frame for IndexFile add/remove/commit methods and respective test markers Added repo.index property including simple test, and additional ideas in the TODO list Renamed Index to IndexFile, adjusted tests, it will only operate on physical files, not on streams, as Indices are not streamed by any git command ( at least not in raw format )
2009-10-26index.add: Finished implemenation including through testsSebastian Thiel
index.checkout: added simple method allowing to checkout files from the index, including simple test
2009-10-26When parsing trees, we now store the originan type bits as well, previously ↵Sebastian Thiel
we dropped it
2009-10-26cmd.wait: AutoKill wrapped process will automatically raise on errors to ↵Sebastian Thiel
unify error handling amongst clients using the process directly. It might be needed to add a flag allowing to easily override that
2009-10-26added head kwarg to reset and commit method, allowing to automatically ↵Sebastian Thiel
change the head to the given commit, which makes the methods more versatile