summaryrefslogtreecommitdiff
path: root/doc/bugs/submodule_path_problem.mdwn
diff options
context:
space:
mode:
authorGravatar https://www.google.com/accounts/o8/id?id=AItOawkywesyg6tKBZcmxJ2EMUO89DZL1LZ7Sng <Peter@web>2012-10-15 13:36:15 +0000
committerGravatar admin <admin@branchable.com>2012-10-15 13:36:15 +0000
commitd067251ae82ab02b871f3581b538f91ecc2e96e9 (patch)
treea716b2fbc6f1f2cf89c2826419f585164957c3dc /doc/bugs/submodule_path_problem.mdwn
parente850fa9abbccadd1a2ad1cf5039ca38d54ec1bb1 (diff)
Diffstat (limited to 'doc/bugs/submodule_path_problem.mdwn')
-rw-r--r--doc/bugs/submodule_path_problem.mdwn55
1 files changed, 55 insertions, 0 deletions
diff --git a/doc/bugs/submodule_path_problem.mdwn b/doc/bugs/submodule_path_problem.mdwn
new file mode 100644
index 000000000..7885d0287
--- /dev/null
+++ b/doc/bugs/submodule_path_problem.mdwn
@@ -0,0 +1,55 @@
+If a submodule isn't toplevel, git-annex breaks
+
+**What steps will reproduce the problem?**
+
+Make two non-empty repositories:
+
+ mkdir submod
+ cd submod
+ git init
+ touch README && git add README
+ git commit -a -m "first import of submodule"
+ cd ..
+
+ mkdir test
+ cd test
+ git init
+ touch README && git add README
+ git commit -a -m "first import of master"
+
+Add first repository as a non-toplevel submodule:
+
+ git submodule add ../submod lib/submod
+
+Setup git-annex for the submodule inside the other repository:
+
+ cd lib/submod
+ git annex init
+
+**What is the expected output? What do you see instead?**
+
+Expected:
+
+ init ok
+ (Recording state in git...)
+
+Got:
+
+ init fatal: Could not switch to '../../../../lib': No such file or directory
+ git-annex: git config [Param "annex.uuid",Param "55D974D1-73E8-489E-B454-03D164664C82"] failed
+
+
+**What version of git-annex are you using? On what operating system?**
+
+3.20121011 compiled from git on Mac OS X 10.8
+
+
+**Please provide any additional information below.**
+
+* git-annex read the path from the "worktree" variable in the git config.
+* The git config for a submodule is storen in the main repository, e.g. "../../.git/modules/lib/submod/config"
+* The path in that config is relative to the config file: "worktree = ../../../../lib/submod"
+* Git-annex expect the path to be relative to the current directory, which is why it fails.
+
+
+