Added downloadable versions of the respective documentation, which should aid packagers a bit
Moved push and fetch methods partly from remote to the gitcmdobjdb implementation, including related types. It doesn't yet work, and the omnipresence of the repo imposes a problem right now, as the required ref functionality is not yet part of the gitdb specification. theoretically, the whole ref implementation has to move into gitdb
Removed all parts of the reference implementation which doesn't require the git command. everything else was moved to GitDB. None of the tests is yet expected to run, although git-python should have less trouble getting the tests back up running than GitDB. plenty of code needs to be de-duplicated though in case of the tests, which will be some work
Updated objects to use the ones defined in gitdb as basis. Only the submodule implementation is left in git-python as it requires some advanced features. No tests where run yet
configparser is now part of gitdb. Test still remains until it was replaced by its gitdb counterpart through inheritance. All items which are part of gitdb but used by gitpython need their own verification within gitpython
Moved rev_parse code into gitdb, this probably broke pretty much here, which is still to be fixed of course
Made most primal imports work, but stopped here as there are many more changes when doing the merge
Added async submodule, formerly required by gitdb (which is still a valid submodule just yet)
Added all code from gitdb to gitpython. Next is to make it generally work. Then the tests will need some work
removed gitdb submodule
replaced all gitdb strings with git
Started to fix imports - tests still have no chance to work as database changed drastically. Now the actual work begins
Made repository paths methods a property to be compatible with the existing repo interface. Added submodule interface ... goal is to provide all of the extra repo functionality in custom interfaces
Intermediate commit with quite some progress in order to put all extra methods on the default Repo implementation into interfaces or something that can be abstracted. It shows that it would indeed be good to keep the differentiation between Repositories which contain an object database as it is clearly easier to setup any combination of repositories that use git and those that do not, with just the addition of one more level of indirection. Lets see how it will end up
Finished moving all repository methods to the respective interfaces and implementations. It seems theoretically work together now, although it clearly is much more complex than ever before.
The repo package was slimmed down to being a module once again, which is only there for compatability actually
Fixed tests far enough to allow basic repository tests to be applied to any of the new database types. This reduces code duplication to the mere minimum, but allows custom tests to be added on top easily and flexibly
git cmd implementation of repository appears to work, at least this is what the test suggests. Pure python implementation still has some trouble, but this should be very fixable
Fixed pure python implementation to run the default repository tests
Fixed test_git.py
Fixed test_loose.py