summaryrefslogtreecommitdiff
path: root/git
Commit message (Collapse)AuthorAgeFilesLines
* Merge branch 'teeberg-master'Sebastian Thiel2015-04-081-9/+0
|\
| * Replace GIT_SSH with GIT_SSH_COMMAND for SSH key management.Jonas Trappenberg2015-02-091-9/+0
| | | | | | | | | | | | Also move untestable documentation out of test. Related: #234, #242
* | fix(test_cmd): handle GitCommandNotFound in testSebastian Thiel2015-04-081-5/+2
| | | | | | | | Related to #248
* | fix(cmd): throw GitCommandNotFoundError ...Sebastian Thiel2015-04-082-13/+39
| | | | | | | | | | | | | | ... if it is not found. Previously, especially on windows, this wasn't explicit. Fixes #248, affects #126
* | fix(remote): allow to raise during push/fetchSebastian Thiel2015-04-083-34/+14
| | | | | | | | | | | | | | | | | | | | Do not swallow non-zero exit status during push and fetch unless we managed to parse head information. This behaviour will effetively handle cases were no work was done due to invalid refspecs or insufficient permissions. Fixes #271
* | fix(docs): be clear about exit code handlingSebastian Thiel2015-04-082-3/+28
| | | | | | | | | | | | | | | | When pushing/pulling, we ignore errors unless it's exit code 128. The reason for this is now made explicit to make clear that issues are handled by PushInfo flags accordingly. Related #271
* | fix(index): _store_path() now closes it's streamSebastian Thiel2015-04-081-0/+1
| | | | | | | | | | | | This should prevent a resource warning given in py3 Fixes #263
* | fix(index): don't write extension data by defaultSebastian Thiel2015-04-082-27/+25
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | It turned out that the index is not actually corrupted, which is good news. What happens is that `git` writes `TREE` extension data into the index, which causes it to write out the given tree *as is* next time a `git commit` is executed. When using `git add`, this extension data is maintained automatically. However, GitPython doesn't do that ... . Usually this is no problem at all, as you are supposed to use `IndexFile.commit(...)` along with `IndexFile.add(...)`. Thanks to a shortcoming in the GitPython API, the index was automatically written out whenever files have been added, without providing control over whether or not *extension data* will be written along with it. My fix consists of an additional flag in `IndexFile.add(...)`, which causes extension data not to be written by default, so commits can be safely done via `git commit` or `IndexFile.commit(...)`. However, this might introduce new subtle bugs in case someone is relying on extension data to be written. As this can be controlled through the said flag though, a fix is easily done in that case. Fixes #265
* | fix(externals): init external in dev mode onlySebastian Thiel2015-04-071-1/+2
| | | | | | | | | | Previously it would always adjust your system path, which is bad behaviour.
* | test(index): test for #265Sebastian Thiel2015-04-071-0/+15
| | | | | | | | | | However, it doesn't reproduce on the latest version of GitPython. Maybe it's on an older one.
* | Fix problem with submodules on WindowsMarkus Siemens2015-04-071-1/+2
| | | | | | | | | | | | | | | | On Windows, `repo.create_submodule(...)` failed because git didn't recognize the worktree path set in `.git/modules/sub/config` (`fatal: bad config file line 6 in ./config`). This commit makes `_write_git_file_and_module_config` convert the worktree path to the linux format (forward slashes) which git recognizes.
* | Fix typoKyle P. Johnson2015-03-271-1/+1
| |
* | Store path attribute on Diff objectJames E. Blair2015-03-021-2/+7
| | | | | | | | | | | | | | | | | | If a file in a commit contains no changes (for example, if only the file mode is changed) there will be no blob attached. This is usually where the filename is stored, so without it, the calling context can not tell what file was changed. Instead, always store a_path and b_path on the Diff object so that information is available.
* | fix(iter-commit): ambiguous argument errorSebastian Thiel2015-03-022-2/+18
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | In repositories like > git branch -a * test > ls test `repo.iter_commits` failed due to an ambigous argument (`'git rev-list test`). Now this cannot happen anymore. fixes #264
* | Improved documentation on IndexFile.add(...)Sebastian Thiel2015-02-231-0/+4
| | | | | | | | | | Related to #224 [ci skip]
* | Fixed trailing white space!Sebastian Thiel2015-02-211-1/+1
| | | | | | | | | | Think about how expensive this single invisible character was, with all the time and energy spent on it !
* | `stale_refs()` may now also handle other kinds of references, like tags.Sebastian Thiel2015-02-211-3/+15
| | | | | | | | Fixes #260
* | Added 'insert_kwargs_after' flag for consumption by _call_process.Sebastian Thiel2015-02-214-3/+26
| | | | | | | | | | | | While at it, all other invocations of .git in remote.py were reviewed Fixes #262
* | Apparently, git 1.7.9 supports git-files too, lets assume it's starting at 1.7.0Sebastian Thiel2015-02-201-2/+1
| |
* | Adjust minimum git version with git-file support.Sebastian Thiel2015-02-191-1/+2
| | | | | | | | | | | | | | As I am pretty sure to have tested it with 1.7.0, I assume they added the git file feature somewhere between .0 .10. Fixes #252
* | Assure to not iterate packed-refs file, ever.Sebastian Thiel2015-02-191-0/+3
| | | | | | | | Related to #252
* | Fix flake8 issue.Sebastian Thiel2015-02-191-4/+6
| | | | | | | | It's new in the latest version of flake - thanks travis for letting me know.
* | Use uuid instead of tempfile.mkdtmp, which created an actual directory.Sebastian Thiel2015-02-191-2/+2
|/ | | | | | That, over time, could have caused slow downs due to file-system hassle. Fixes #258
* Added previously missing parameter documentation for Repo.__init__ .Sebastian Thiel2015-02-091-0/+5
| | | | Related to #255
* Merge branch 'bf/run_hooks_from_working_dir' of ↵Sebastian Thiel2015-02-091-0/+1
|\ | | | | | | https://github.com/yarikoptic/GitPython into yarikoptic-bf/run_hooks_from_working_dir
| * BF: run commit hook with repo.working_dir as cwdYaroslav Halchenko2015-02-081-0/+1
| | | | | | | | | | | | | | | | Otherwise commit hook might rightfully fail, as happens if repository is e.g. git-annex repository. See e.g. now failing https://travis-ci.org/datalad/datalad/builds/49802394\#L1590 which seems to pass tests nicely with patch as this
* | Minor Flake8 fixes.Sebastian Thiel2015-02-093-8/+10
| | | | | | | | Latest version of it is required to show the issues travis shows as well
* | BF: skip unicode filename test in env not supporting unicode encodingsYaroslav Halchenko2015-02-071-0/+9
| |
* | ENH: respect GIT_PYTHON_TEST_GIT_REPO_BASE env var in testsYaroslav Halchenko2015-02-071-1/+1
|/
* This should fix the test failure on travisSebastian Thiel2015-01-301-0/+5
|
* Added test to verify we can handle fetch prunes.Sebastian Thiel2015-01-301-0/+13
| | | | | | They are just skipped. Fixes #249
* Remote.update() didn't pass kwargs along to git command.Sebastian Thiel2015-01-301-1/+1
| | | | Fixes #250
* Removed Git.sshkey() as it couldn't be distributed properly.0.3.6Sebastian Thiel2015-01-225-40/+11
| | | | | | | 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-221-6/+1
| | | | | | 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-2215-35/+372
|\ | | | | | | | | | | 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-2211-29/+324
| | | | | | | | | | | | That way they are protected from regression. Fixes #239
* | Intermediate commit on my way to get this finalized.Sebastian Thiel2015-01-223-23/+44
| | | | | | | | | | Renamed context manager 'with_environment' to 'custom_environment'. On my way to implement sshkey test.
* | Add a few testsJonas Trappenberg2015-01-211-0/+20
| |
* | 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-211-1/+75
| |
* | Fix some typosJonas Trappenberg2015-01-213-5/+5
|/
* Fixed regression in test-suite for IndexFileSebastian Thiel2015-01-215-24/+38
| | | | | 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-2111-33/+185
| | | | | | 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-214-8/+52
| | | | | | Now travisci tests should work once again. Related to #239