summaryrefslogtreecommitdiff
path: root/git/objects/submodule/base.py
diff options
context:
space:
mode:
authorMarkus Siemens <siemens1993@gmail.com>2015-04-07 14:33:39 +0200
committerMarkus Siemens <siemens1993@gmail.com>2015-04-07 15:36:49 +0200
commit1c2502ee83927437442b13b83f3a7976e4146a01 (patch)
tree3309fd315d8802ad984fa564da1e0f94123d3b62 /git/objects/submodule/base.py
parentbe81304f2f8aa4a611ba9c46fbb351870aa0ce29 (diff)
downloadgitpython-1c2502ee83927437442b13b83f3a7976e4146a01.tar.gz
Fix problem with submodules on Windows
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.
Diffstat (limited to 'git/objects/submodule/base.py')
-rw-r--r--git/objects/submodule/base.py3
1 files changed, 2 insertions, 1 deletions
diff --git a/git/objects/submodule/base.py b/git/objects/submodule/base.py
index 7e8dd053..f9b0b6ad 100644
--- a/git/objects/submodule/base.py
+++ b/git/objects/submodule/base.py
@@ -293,7 +293,8 @@ class Submodule(util.IndexObject, Iterable, Traversable):
fp.close()
writer = GitConfigParser(os.path.join(module_abspath, 'config'), read_only=False, merge_includes=False)
- writer.set_value('core', 'worktree', os.path.relpath(working_tree_dir, start=module_abspath))
+ writer.set_value('core', 'worktree',
+ to_native_path_linux(os.path.relpath(working_tree_dir, start=module_abspath)))
writer.release()
#{ Edit Interface