summaryrefslogtreecommitdiff
path: root/git/objects/submodule
Commit message (Collapse)AuthorAgeFilesLines
* config: FIX regression by prev commit "wrap all conf..."Kostis Anagnostopoulos2016-10-041-2/+2
| | | | | | + Bug appeared as last 5 TCs (test_commit & test_stream) said: OSError: [WinError 6] The handle is invalid
* io: Wrap (probably) allconfig_writers in `with` blocksKostis Anagnostopoulos2016-10-041-39/+27
|
* hidden win-errs: Let leaking TCs run till end, then hideKostis Anagnostopoulos2016-10-041-5/+19
| | | | | | | | | + Detect code breaking the body of TCs eventually hidden win-errors by raising SkipTest ALAP. + submodule.base.py: import classes from `git.objects` instead of `utils`. + had to ++ ulimit 100->110 for the extra code tested (more leaks :-) + Centralize is_win detection.
* BF: Allow to remove a submodule with a remote without refsYaroslav Halchenko2016-10-031-1/+1
|
* io, #519: ALL open() --> with open()Kostis Anagnostopoulos2016-10-011-0/+2
| | | + Some cases had restructuring of code.
* Win, #519: FIX repo TCs.Kostis Anagnostopoulos2016-10-011-9/+12
| | | | | | | | | | | | | | | + FIX TestRepo.test_submodule_update(): + submod: del `.git` file prior overwrite; Windows denied otherwise! + FIX TestRepo.test_untracked_files(): + In the `git add <file>` case, it failed with unicode args on PY2. Had to encode them with `locale.getpreferredencoding()` AND use SHELL. + cmd: add `shell` into `execute()` kwds, for overriding USE_SHELL per command. + repo: replace blocky `communicate()` in `_clone()` with thread-pumps. + test_repo.py: unittestize (almost all) assertions. + Replace open --> with open for index (base and TC). + test_index.py: Enabled a dormant assertion.
* FIX hook TC on PY3+Win & indeterministic lock timing.Kostis Anagnostopoulos2016-09-291-0/+2
| | | | | | | | | + Cannot `index.path` into ENV, it is bytes! + The hook TC never runs on linux! + Unblock removal of odbfile in perf-large streams TC. + Attempt to unblock removal of submodule file by intensive cleaning. more unblock files
* gic {init,clone} --separate-git-dir is supported only since 1.7.5Julien Pivotto2015-07-221-1/+1
| | | | | Without this commit the update() function of a submodule does not work in CentOS 6.
* typo in submodules api documentationJulien Pivotto2015-07-171-1/+1
|
* Added NullHandlers to all loggers to preven "No handler" messagesJames Nowell2015-06-252-0/+2
| | | | | | | | When the code is run without setting up loggers, the loggers have no handlers for the emitted messages. The logging module displays: `No handlers could be found for logger "git.cmd"` on the console. By adding a NullHandler (a no-op) the message disappears, and doesn't affect logging when other handlers are configured.
* 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.
* 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
* 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
* Overhauled all tutorials, and placed them in a unit-test.Sebastian Thiel2015-01-221-2/+2
| | | | | | That way they are protected from regression. Fixes #239
* Fixed regression in test-suite for IndexFileSebastian Thiel2015-01-212-17/+3
| | | | | 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-211-1/+1
| | | | | | GIT_PYTHON_TRACE would actually fail (now) if we debugged archive operations. Related to #239
* Assured that branch changes are properly handled.Sebastian Thiel2015-01-213-28/+11
| | | | | | | | | 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-202-23/+26
| | | | | 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-202-350/+376
| | | | Fixes #50
* Submodule.parent_commit() now automatically points to repo.head unless it ↵Sebastian Thiel2015-01-201-27/+38
| | | | | | | | 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-202-25/+68
| | | | | | | | | | | | 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.
* Submodule.move() will auto-rename the submodule if the name was equal to the ↵Sebastian Thiel2015-01-191-0/+6
| | | | | | path Fixes #238
* Implemented Submodule.rename()Sebastian Thiel2015-01-191-4/+78
| | | | | | A test verifies it's truly working. Related to #238
* Submodule.move() fixed to deal with 'non-gitfile' clones appropriately.Sebastian Thiel2015-01-191-1/+1
| | | | | | | 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-191-10/+18
| | | | | | | | 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-171-18/+20
| | | | | | 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-171-7/+13
| | | | | 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-171-15/+29
| | | | A simple test verifies this at least.
* Assured Submodule.(update|move) are dealing with .git files appropriately.Sebastian Thiel2015-01-171-60/+92
| | | | | 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-161-5/+34
| | | | | | | 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-151-2/+2
| | | | | | 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 ... .
* Submodule.add() can now handle absolute module paths in agreement to the doc ↵Sebastian Thiel2015-01-151-0/+11
| | | | | | | | | | 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-151-1/+1
| | | | | | This is verified by the respective test. Fixes #117
* test_repo worksSebastian Thiel2015-01-061-8/+23
|
* Fixed io types to make tests work on PY2 once again.py3Sebastian Thiel2015-01-052-5/+5
| | | | Now it's about going through PY3 issues
* Dum brute force conversion of all types.Sebastian Thiel2015-01-041-1/+2
| | | | | | However, StringIO really is ByteIO in most cases, and py2.7 should run but doesn't. This should be made work first.
* initial set of adjustments to make (most) imports work.Sebastian Thiel2015-01-043-6/+9
| | | | More to come, especially when it's about strings
* Replaced ordered dict with standard version; used logging moduleSebastian Thiel2015-01-042-8/+12
| | | | All performance tests still print to stderr, but do so in a py3 compatible way
* Bumped version, updated changelog, reduced code smellSebastian Thiel2015-01-042-8/+14
| | | | | There is more work to do though, as many imports are still incorrect. Also, there are still print statements
* Applied autopep8Sebastian Thiel2014-11-193-102/+119
| | | | | Commandline was autopep8 -j 8 --max-line-length 120 --in-place --recursive --exclude "*gitdb*,*async*" git/
* Backport of https://github.com/gitpython-developers/GitPython/pull/118Sebastian Thiel2014-11-191-1/+1
|
* pep8 linting (trailing whitespace)Antoine Musso2014-11-163-76/+76
| | | | W291 trailing whitespace
* pep8 linting (whitespace before/after)Antoine Musso2014-11-163-32/+32
| | | | | | | | | | | | | E201 whitespace after '(' E202 whitespace before ')' E203 whitespace before ':' E225 missing whitespace around operator E226 missing whitespace around arithmetic operator E227 missing whitespace around bitwise or shift operator E228 missing whitespace around modulo operator E231 missing whitespace after ',' E241 multiple spaces after ',' E251 unexpected spaces around keyword / parameter equals
* pep8 linting (blank lines expectations)Antoine Musso2014-11-163-5/+12
| | | | | | E301 expected 1 blank line, found 0 E302 expected 2 blank lines, found 1 E303 too many blank lines (n)
* pep8 linting (whitespaces)Antoine Musso2014-11-163-153/+152
| | | | | | | | | | | W191 indentation contains tabs E221 multiple spaces before operator E222 multiple spaces after operator E225 missing whitespace around operator E271 multiple spaces after keyword W292 no newline at end of file W293 blank line contains whitespace W391 blank line at end of file
* Make sure that branches looking like a numeric scalar will not become number ↵Sebastian Thiel2014-05-011-1/+1
| | | | | | type in python. The latter will break code that assumes it will get a string.
* tabs to 4 spaces - this won't make integrating the patches easier, but it's ↵Sebastian Thiel2014-02-093-1260/+1260
| | | | probably a good idea to go a little more pep8 (and fix sins of my youth ;) )