summaryrefslogtreecommitdiff
Commit message (Collapse)AuthorAgeFilesLines
* Removed Git.sshkey() as it couldn't be distributed properly.0.3.6Sebastian Thiel2015-01-228-43/+13
| | | | | | | However, I kept information on how to achieve the same thing with `custom_environment()` in the test. Related to #234
* Bumped version to 0.3.6Sebastian Thiel2015-01-224-9/+4
| | | | | | Unfortunately, installation of a executable script has proven to be so difficult thanks setuptools gloriousness, which will force me to remove that feature
* Improved performance of rev-parse test.Sebastian Thiel2015-01-221-2/+9
| | | | | | Hoping to make this significantly faster on travis. Related to #245
* Minor improvements to submodule test for windows portabilitySebastian Thiel2015-01-221-4/+4
| | | | | | | | | However, most tests fail for reasons unknown - SHA cannot be found. For now, I will wait until someone complains, as I doubt too many people will use it on windows. Related to #244
* Added test for `sshkey` context manager.Sebastian Thiel2015-01-223-7/+21
| | | | | | | | It verifies that the script is actually called. Interestingly, the shell script version works within an msysgit environment on windows. Fixes #234
* Merge branch 'master' into teeberg-masterSebastian Thiel2015-01-2220-342/+603
|\ | | | | | | | | | | Need latest master to proceed with test Conflicts: doc/source/tutorial.rst
| * This should finally fix travis ciSebastian Thiel2015-01-221-1/+1
| |
| * Fetch now deals with custom refspecs much better.Sebastian Thiel2015-01-225-6/+40
| | | | | | | | | | | | | | | | | | Even though the test-csae only verifies this spec: +refs/pull/*:refs/heads/pull/* I could locally verify that it indeed handles other ones just as well: +refs/pull/*:refs/pull/* Fixes #243
| * Overhauled all tutorials, and placed them in a unit-test.Sebastian Thiel2015-01-2216-332/+550
| | | | | | | | | | | | That way they are protected from regression. Fixes #239
* | Intermediate commit on my way to get this finalized.Sebastian Thiel2015-01-225-33/+45
| | | | | | | | | | Renamed context manager 'with_environment' to 'custom_environment'. On my way to implement sshkey test.
* | Add a few testsJonas Trappenberg2015-01-211-0/+20
| |
* | Add SSH wrapper to MANIFEST.inJonas Trappenberg2015-01-211-1/+1
| |
* | Rename 'environment' and 'set_environment'Jonas Trappenberg2015-01-211-10/+10
| |
* | Add method to query environmentJonas Trappenberg2015-01-211-0/+3
| |
* | Add 'sshkey' context managerJonas Trappenberg2015-01-213-1/+90
| |
* | Fix some typosJonas Trappenberg2015-01-213-5/+5
|/
* Fixed regression in test-suite for IndexFileSebastian Thiel2015-01-216-25/+44
| | | | | Previously, it checked for AssertionErrors, now we have to implement need-unbare-repo check ourselves.
* Added advance usage examples to tutorial and made minor fixes.Sebastian Thiel2015-01-2115-52/+270
| | | | | | GIT_PYTHON_TRACE would actually fail (now) if we debugged archive operations. Related to #239
* Initial set of documentation improvements, and a fix to the submodule tests.Sebastian Thiel2015-01-217-41/+96
| | | | | | Now travisci tests should work once again. Related to #239
* Merge branch 'issue-232-reproduction' - keep fetch/pull simplificationsSebastian Thiel2015-01-212-2/+7
|\ | | | | | | | | | | Make sure we keep the improvements made to fetch and pull Relates to #232
| * removed debug codeissue-232-reproductionSebastian Thiel2015-01-211-9/+1
| |
| * Remote.fetch|pull() will not use poll/threads anymore as only stderr is read.Sebastian Thiel2015-01-202-4/+10
| | | | | | | | | | | | | | This simplification should improve performance and remove issues like those in #232. NOTE: Debug code is still contained here
| * Added debug code to keep lines fed into progress handler and the contents of ↵Sebastian Thiel2015-01-161-1/+8
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | FETCH_HEAD. This data will be written into the git-repository itself, prefixed with the number of the operation. Thus, a test-run with exactly one fetch operation would look like this afterwards: ls -l .git total 96 -----> -rw-r--r-- 1 byron staff 141B Jan 16 11:54 000_debug_git-python_FETCH_HEAD <----- -----> -rw-r--r-- 1 byron staff 180B Jan 16 11:54 000_debug_git-python_stderr <----- -rw-r--r-- 1 byron staff 487B Jan 16 11:54 FETCH_HEAD -rw-r--r-- 1 byron staff 22B Jan 16 11:54 HEAD -rw-r--r-- 1 byron staff 41B Jan 16 11:54 ORIG_HEAD drwxr-xr-x 2 byron staff 68B Jan 16 11:54 branches/ -rw-r--r-- 1 byron staff 560B Jan 16 11:54 config -rw-r--r-- 1 byron staff 73B Jan 16 11:54 description drwxr-xr-x 11 byron staff 374B Jan 16 11:54 hooks/ -rw-r--r-- 1 byron staff 13K Jan 16 11:54 index drwxr-xr-x 3 byron staff 102B Jan 16 11:54 info/ drwxr-xr-x 4 byron staff 136B Jan 16 11:54 logs/ drwxr-xr-x 12 byron staff 408B Jan 16 11:54 objects/ -rw-r--r-- 1 byron staff 1.2K Jan 16 11:54 packed-refs drwxr-xr-x 5 byron staff 170B Jan 16 11:54 refs/ [ci skip]
* | Assured that branch changes are properly handled.Sebastian Thiel2015-01-215-30/+77
| | | | | | | | | | | | | | | | | | Previously we could try to remove the branch we are on. Of course, we have a test-case elaborate enough to verify we don't destroy changes in submodules accidentally. Therefore I am confident that this implementation is correct. Fixes #49
* | Fixed flake8 and a minor test regression.Sebastian Thiel2015-01-206-30/+34
| | | | | | | | | | The latter happened as now BadName is thrown, instead of BadObject. Changes.rst was marked accordingly
* | Impemented keep_going flag for `Submodule.update()`Sebastian Thiel2015-01-203-352/+381
| | | | | | | | Fixes #50
* | Submodule.parent_commit() now automatically points to repo.head unless it ↵Sebastian Thiel2015-01-202-33/+42
| | | | | | | | | | | | | | | | was set before. That way, you don't always have to keep the parent commit uptodate when changing the repo, which can lead to errors which are hard to debug and make no sense to the user, who previously never set parent_commit (yet it matters thanks to the cache).
* | Greatly improved possible safety of Submodule.update(), which is used by ↵Sebastian Thiel2015-01-207-58/+170
| | | | | | | | | | | | | | | | | | | | | | | | default. Previously, the implementation would gladly reset new commits in submodules, and/or reset a dirty working tree. Now the new force_reset/force flag has to be specified explicitly to get back to the old behaviour. All submodule tests except for one are working.
* | Another take on fixing the current concurrent read implementation in git.cmdSebastian Thiel2015-01-201-34/+77
| | | | | | | | | | | | | | | | There have been rather obvious errors in there, as we forgot to unregister the filehandles. Now we will read from a buffer ourselves, which should be faster and ideally, doesn't lead to spurious errors anymore. Related to #232
* | Added tutorial about initializing a repository.Sebastian Thiel2015-01-192-0/+42
| | | | | | | | | | | | | | | | Additionally, for this and future examples, there is a test_doc.py suite to contain all code mentioned in the docs. That way, we know if things stop working. Fixes #236
* | Improved installation docs to mention `pip`, not `easy_install`Sebastian Thiel2015-01-192-14/+10
| | | | | | | | | | Fixes #235 [ci skip]
* | Improved unicode handling when using os.environ or GitConfigParserSebastian Thiel2015-01-193-6/+21
| | | | | | | | | | | | | | Assured unicode values are supported when reading the configuration, and when getting author/committer information from the environment. Fixes #237
* | Fixed configuration file test - release call was missing.Sebastian Thiel2015-01-191-0/+1
| | | | | | | | Once again, __del__ is not being called as usual anymore in python 3 ... .
* | Submodule.move() will auto-rename the submodule if the name was equal to the ↵Sebastian Thiel2015-01-192-1/+10
| | | | | | | | | | | | path Fixes #238
* | Implemented Submodule.rename()Sebastian Thiel2015-01-197-6/+147
| | | | | | | | | | | | A test verifies it's truly working. Related to #238
* | Submodule.move() fixed to deal with 'non-gitfile' clones appropriately.Sebastian Thiel2015-01-192-5/+15
| | | | | | | | | | | | | | Improved a test to assure multiple update(init=False|True) calls don't throw. Fixes #93
* | Basic submodule tests are working once again !Sebastian Thiel2015-01-192-21/+33
| | | | | | | | | | | | | | | | After all, it was easier than expected. It seems that previous assertions the test made should have never been true to begin with. Thus we might have improved the test thanks to our improved implementation. Fixes #233
* | Submodule.remove() now seems to work properly, nearly all tests are back.Sebastian Thiel2015-01-173-24/+35
| | | | | | | | | | | | This also means that now we seem to be able to properly handle .git files in submodules Related to #233
* | Made sure dry-run is properly implemented in Submodule.remove()Sebastian Thiel2015-01-172-11/+20
| | | | | | | | | | The root-submodule test is still failing though, this time even earlier than before
* | Submodule.remove() now deals with .git files correctly.Sebastian Thiel2015-01-173-21/+41
| | | | | | | | A simple test verifies this at least.
* | Assured Submodule.(update|move) are dealing with .git files appropriately.Sebastian Thiel2015-01-172-60/+106
| | | | | | | | | | However, a simple test-case still fails for reasons not yet understood. There is more to be fixed here - .remove() still fails.
* | Implemented more tests and made use of .git files when adding submodulesSebastian Thiel2015-01-162-8/+79
|/ | | | | | | There is some more work to do, as renames and updates still have to be adjusted accordinlgy. Relates #233
* Fixed previously failing testSebastian Thiel2015-01-152-4/+5
| | | | | | It actually revealed a bug in the implementation of Submodule.add, which just showed in python 3 for the wrong reasons. Thankfully, failing tests after all allowed to get this issue fixed ... .
* Verified that it apparently is impossible to add empty submodules using ↵Sebastian Thiel2015-01-151-4/+20
| | | | | | | | | | | | | | | | | | | git-python. This is the case with `git submodule add` as well. This makes sense as an empty git repository doesn't have a commit, which needs to be specified as SHA in the parent repositories tree entry for the respective submodule. When manually adding the empty submodule to the .gitmodules file, git-python will throw another error related to the inability to find the submodule in the index. Even if an iteration would be possible, git-python would now throw a BadName exception, which clearly indicates that the 'HEAD' revision is invalid (as it doesn't point to any commit). Fixes #152 Fixes #105
* Submodule.add() can now handle absolute module paths in agreement to the doc ↵Sebastian Thiel2015-01-152-3/+22
| | | | | | | | | | string. Previously, it would say it can handle absolute module paths, but didn't actually do so. A test-case was improved to check for this case. Fixes #161
* For some reason, the new submodule test still broke on py3Sebastian Thiel2015-01-151-3/+0
| | | | | | | Adjusted code to not check for .gitmodules existence anymore, we will deal with it. Fixes #117
* Added the first submodule will no longer cause an IOError.Sebastian Thiel2015-01-152-1/+8
| | | | | | This is verified by the respective test. Fixes #117
* Added sphinx build process to end of travis test chainSebastian Thiel2015-01-151-1/+2
|
* Fixed some doc strings to build correctly with sphinxSebastian Thiel2015-01-147-32/+32
| | | | | | Fixes #7 [ci skip]
* An attempt to help the threaded reading to not show spurious errors anymore.Sebastian Thiel2015-01-141-8/+8
| | | | | It does not necessarily seem to work, but at least we don't access a dict concurrently anymore.