| Age | Commit message (Collapse) | Author |
|
symlinks.
Added index.get_entries_key method to allow direct access to anyone willing to do so
|
|
Previously it would consider such a path a relative one and handle it incorrectly
|
|
email address specified
|
|
* win_fixes:
Fixed commit.count method which now handles the paths case properly. It 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
test_remote: fixed test which assumed existance of local master tracking branch, it will now create it if necessary
Index tests adopted to windows - especially the symlink test needed adjustment, but it works as expected even on systems that do not support symlinks
ARGH: wb and rb is not the same as r and w on windows, hence reading of binary files went crazy as well as binary writing
test_commit: commit.count actually returned incorrect values on linux, namely 141 instead of 143. Manual checking showed that 143 is the correct number, on linux this will have to be fixed
helper: repo creation functions now handle errors on windows during os.remove by changing the mode to 777 and delete the file again. Otherwise the whole operation would fail on read-only files. Why is windows as it is ? Why does it do that to me ?
removed large-input test as it is totally dependent on the subprocess implementation in the end whether pipeing large input works. In general , input and output pipes are used, the shell is bypassed, hence there is no reason for a problem unless we are on a very rare platform. And if so, we can't do anything about it so why should there be a possibly failing test ? Problem is that the test would fail on windows in case it is not installed on c:\windows
repo.clone: Added plenty of special handling to allow drive letters to work as expected. Its quite terrible to see a two-line method inflate to 20
Fixed config module which forgot to call the superclass's initializer, finally causing failure in python 2.6
fixed test_repo to work on windows
cmd: added clear_cache method now used by test repo decorators to be sure 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 explanation
Fixed windows TASKKILL so it actually does something *silently*
Added utilities helping to create proper paths either with slashes or backslashes depending on the operating system
|
|
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
|
|
branch, it will now create it if necessary
|
|
adjustment, but it works as expected even on systems that do not support symlinks
|
|
binary files went crazy as well as binary writing
|
|
namely 141 instead of 143. Manual checking showed that 143 is the correct number, on linux this will have to be fixed
|
|
os.remove by changing the mode to 777 and delete the file again. Otherwise the whole operation would fail on read-only files. Why is windows as it is ? Why does it do that to me ?
|
|
implementation in the end whether pipeing large input works. In general , input and output pipes are used, the shell is bypassed, hence there is no reason for a problem unless we are on a very rare platform. And if so, we can't do anything about it so why should there be a possibly failing test ? Problem is that the test would fail on windows in case it is not installed on c:\windows
|
|
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 )
|
|
finally causing failure in python 2.6
|
|
cmd: taskkill now pipes stderror to nul as well
|
|
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
|
|
|
|
|
|
backslashes depending on the operating system
fixed test_refs and test_trees
Many more issues remain though, this is just a first backup commit
|
|
needs to be started
|
|
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
|
|
|
|
|
|
* 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.
|
|
Set required mock version to 0.5
|
|
one was made faster by reducing the amount of permutations to the minimal value
|
|
once more shows the need for a real checkout for all the people who do not want to implement all the safety facilities themselves
|
|
Updated repo area
|
|
|
|
naming on index objects and the way the system handles these
|
|
|
|
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.
|
|
object
repo.tree: improved to be less restricting
|
|
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
|
|
|
|
not implement the crazy sorting feature found in git-for-each-ref though
|
|
file. This removes a git command invocation
|
|
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
|
|
reflog support. This should be manually implemented though for more performance, what it does is relatively easy
|
|
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
|
|
as sha, even if the passed in id was a ref. This is done to assure objects are uniquely identified and will compare correctly
|
|
a convenient shortcut to using the classes manually
|
|
all parameters to be used. The test would not test everything either, and I would consider this a bug that slipped through
|
|
* 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
|
|
studied, but they would be hard to 'produce'
|
|
|
|
many more test-cases need to be added to be sure we can truly deal with everything git throws at us
|
|
|
|
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
|
|
nice to use)
|
|
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
|