summaryrefslogtreecommitdiff
path: root/lib/git
Commit message (Collapse)AuthorAgeFilesLines
* repo.clone: Added plenty of special handling to allow drive letters to work ↵Sebastian Thiel2009-11-051-1/+32
| | | | | | as expected. Its quite terrible to see a two-line method inflate to 20 as there is no git-daemon on windows, some tests will not work. The error message has been adjusted to be more precise for the poor people trying to run the tests on windows ( including myself )
* Fixed config module which forgot to call the superclass's initializer, ↵Sebastian Thiel2009-11-051-0/+1
| | | | finally causing failure in python 2.6
* fixed test_repo to work on windowsSebastian Thiel2009-11-051-1/+1
| | | | cmd: taskkill now pipes stderror to nul as well
* cmd: added clear_cache method now used by test repo decorators to be sure ↵Sebastian Thiel2009-11-051-1/+14
| | | | persistent commands are killed before trying to remove the directory. Unfortunately, it still claims someone has opened the file. handle.exe does not show anyone, so what is happening here ? Is it just a windows odity ? If nothing helps I could just keep the temp data, but lets do some more testing first
* git cmd on windows now runs without the shell, see diff for explanationSebastian Thiel2009-11-051-2/+7
|
* Fixed windows TASKKILL so it actually does something *silently*Sebastian Thiel2009-11-051-1/+4
|
* Added utilities helping to create proper paths either with slashes or ↵Sebastian Thiel2009-11-055-49/+85
| | | | | | | backslashes depending on the operating system fixed test_refs and test_trees Many more issues remain though, this is just a first backup commit
* improved error when setting up server based test to make clear a server ↵Sebastian Thiel2009-11-041-1/+4
| | | | needs to be started
* head.checkout method added including testSebastian Thiel2009-11-041-1/+33
|
* Merge branch 'docs' into improvementsSebastian Thiel2009-11-043-17/+18
|\ | | | | | | | | | | | | | | | | | | | | * 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.
| * added all new files to reference.rst and corrected the worst mistakes. There ↵Sebastian Thiel2009-11-043-17/+18
| | | | | | | | 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.
* | added query for 'M' modified diffs to DiffIndex including test. The latter ↵Sebastian Thiel2009-11-041-3/+13
|/ | | | one was made faster by reducing the amount of permutations to the minimal value
* Improved cmd error handling in case an invalid revision is specified for an ↵Sebastian Thiel2009-11-043-29/+17
| | | | | | object repo.tree: improved to be less restricting
* IndexObject: assured that .path fields are relative to the repository ( ↵Sebastian Thiel2009-11-042-5/+22
| | | | | | 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
* tree: parsing would fail when symlinks where encountered. This has been fixedSebastian Thiel2009-11-041-1/+2
|
* refs: iter_items now imlemented natively for additional performance. We did ↵Sebastian Thiel2009-11-032-50/+45
| | | | not implement the crazy sorting feature found in git-for-each-ref though
* remotes are now retrieved directly by parsing the repository configuration ↵Sebastian Thiel2009-11-031-4/+10
| | | | file. This removes a git command invocation
* Reference.from_path now only creates references, not symbolic refs. ↵Sebastian Thiel2009-11-031-7/+21
| | | | 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
* Now using git-update-ref and git-symbolic-ref to update references with ↵Sebastian Thiel2009-11-031-21/+17
| | | | reflog support. This should be manually implemented though for more performance, what it does is relatively easy
* remote.push: Fixed progress parsing, previously it would read whole lines ↵Sebastian Thiel2009-11-031-3/+15
| | | | 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
* object: renamed id attribute to sha as it in fact is always being rewritten ↵Sebastian Thiel2009-11-039-46/+46
| | | | as sha, even if the passed in id was a ref. This is done to assure objects are uniquely identified and will compare correctly
* repo: added create_* and delete_* methods for refs ( head, tag, remote ) as ↵Sebastian Thiel2009-11-032-2/+57
| | | | a convenient shortcut to using the classes manually
* repo.is_dirty: is a method now - the property based interface didn't allow ↵Sebastian Thiel2009-11-031-1/+0
| | | | all parameters to be used. The test would not test everything either, and I would consider this a bug that slipped through
* Finished all push tests I could think of so far. More error cases should be ↵Sebastian Thiel2009-11-031-1/+4
| | | | studied, but they would be hard to 'produce'
* Intermediate commit with a few added and improved tests as well as many fixesSebastian Thiel2009-11-032-8/+39
|
* Implemented PushProgress and PushInfo class including basic test cases. Now ↵Sebastian Thiel2009-11-021-17/+134
| | | | 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 implemenationSebastian Thiel2009-10-281-13/+104
|
* Another attempt to make fetch emit progress information, but in fact its ↵Sebastian Thiel2009-10-281-1/+1
| | | | 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 ↵Sebastian Thiel2009-10-281-0/+10
| | | | nice to use)
* Fixed bug when listing remotes - it was based on references which is ↵Sebastian Thiel2009-10-281-9/+2
| | | | incorrect as it cannot always work
* FetchInfo class is not a subclass of Remote class anymore, as more classes ↵Sebastian Thiel2009-10-282-138/+138
| | | | 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 ↵Sebastian Thiel2009-10-282-9/+27
| | | | | | 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
* tag handling tests finished, unfortunately there is not yet a rejected case, ↵Sebastian Thiel2009-10-281-0/+8
| | | | but it will assuambly follow with the push tests
* Implemented handling of FETCH_HEAD and tags, some test cases still missing ↵Sebastian Thiel2009-10-271-22/+65
| | | | 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:Sebastian Thiel2009-10-271-1/+1
| | | | | | 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
* Added remote stale_refs property including test, tested new remote branch ↵Sebastian Thiel2009-10-271-1/+21
| | | | handling and deletion of stale remote branches
* renamed remote_branch to remote_head, improved errror messageSebastian Thiel2009-10-271-3/+3
|
* Added non-fast forward test case, fixed parsing issue caused by initial line ↵Sebastian Thiel2009-10-271-2/+1
| | | | stripping
* implemented test for rejection handling and fixed a bug when parsing remote ↵Sebastian Thiel2009-10-271-8/+31
| | | | reference paths
* Added testing frame for proper fetch testing to be very sure this works as ↵Sebastian Thiel2009-10-271-13/+60
| | | | expected. Plenty of cases still to be tested
* Reference._from_string will now create the appropriate type, not just the ↵Sebastian Thiel2009-10-271-1/+1
| | | | 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 classSebastian Thiel2009-10-272-7/+42
| | | | remote: prepared FetchInfo class to be returned by fetch and pull. About to implement tests
* Merge branch 'index' into improvementsSebastian Thiel2009-10-269-202/+813
|\ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | * 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 )
| * index.add: Finished implemenation including through testsSebastian Thiel2009-10-261-4/+142
| | | | | | | | index.checkout: added simple method allowing to checkout files from the index, including simple test
| * When parsing trees, we now store the originan type bits as well, previously ↵Sebastian Thiel2009-10-261-8/+9
| | | | | | | | we dropped it
| * cmd.wait: AutoKill wrapped process will automatically raise on errors to ↵Sebastian Thiel2009-10-262-7/+22
| | | | | | | | 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 ↵Sebastian Thiel2009-10-261-10/+29
| | | | | | | | change the head to the given commit, which makes the methods more versatile
| * refs.SymoblicRef: implemented direcft setting of the symbolic references ↵Sebastian Thiel2009-10-261-3/+14
| | | | | | | | commit, which possibly dereferences to the respective head
| * Merge branch 'refs' into indexSebastian Thiel2009-10-261-13/+183
| |\ | | | | | | | | | | | | | | | | | | | | | | | | * refs: 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
| | * Refs can now set the reference they are pointing to in a controlled fashion ↵Sebastian Thiel2009-10-231-6/+42
| | | | | | | | | | | | by writing their ref file directly