Merge branch 'master' of https://github.com/zyv/git-annex
This commit is contained in:
commit
492ffaa9a1
11 changed files with 329 additions and 51 deletions
|
@ -0,0 +1,63 @@
|
|||
Hi,
|
||||
I already have told about that in a comment here <http://git-annex.branchable.com/bugs/submodule_path_problem/#comment-e86330d15b714a41a07b6548fbc79bb2>, but I am not sure it will be seen.
|
||||
|
||||
Then here is an official bug report.
|
||||
### Please describe the problem.
|
||||
|
||||
I have a problem with submodules when the git repository is not a submodule everywhere.
|
||||
|
||||
For instance, if A is a git annexed repository and B another git repository. If B adds A as submodules. The symlinks added in A as submodule won't work in the original A.
|
||||
|
||||
### What steps will reproduce the problem?
|
||||
|
||||
# creating the master repository
|
||||
mkdir annex_master
|
||||
cd annex_master/
|
||||
git init
|
||||
# hack: adding a file to create the master branch
|
||||
touch start
|
||||
git add start
|
||||
git commit -m "start"
|
||||
cd ..
|
||||
# create another repository
|
||||
mkdir annex_sub
|
||||
cd annex_sub/
|
||||
git init
|
||||
# hack: adding a file to create the master branch
|
||||
touch start
|
||||
git add start
|
||||
git commit -m "start"
|
||||
# it is a annexed repository
|
||||
git annex init sub
|
||||
# add the other repository as submodule of the master one
|
||||
cd ../annex_master/
|
||||
git submodule add ../annex_sub/ module
|
||||
cd module/
|
||||
git annex init sub_module
|
||||
git annex sync origin
|
||||
# add an annexed file
|
||||
echo test > test
|
||||
git annex add
|
||||
git annex sync
|
||||
# go back to the origin repository
|
||||
cd ../../annex_sub/
|
||||
git annex sync
|
||||
ls -l
|
||||
This returns test -> ../.git/modules/module/annex/objects/w8/pv/SHA256E-s5--f2ca1bb6c7e907d06dafe4687e579fce76b37e4e93b7605022da52e6ccc26fd2/SHA256E-s5--f2ca1bb6c7e907d06dafe4687e579fce76b37e4e93b7605022da52e6ccc26fd2
|
||||
|
||||
Actually, the file committed is correct. But the fact it points to '../.git/modules/module/...' makes the link work only if the repository is also a submodule and if this submodule is also located in the modules folder in the parent git repository.
|
||||
|
||||
I tried playing with making the repository direct and then indirect, hoping that would fix the symlinks, but it did not work.
|
||||
### What version of git-annex are you using? On what operating system?
|
||||
|
||||
$ git-annex version
|
||||
git-annex version: 4.20130802
|
||||
...
|
||||
|
||||
$ git --version
|
||||
git version 1.8.3.2
|
||||
|
||||
$ uname -a
|
||||
Linux konixwork 3.9-1-amd64 #1 SMP Debian 3.9.8-1 x86_64 GNU/Linux
|
||||
|
||||
### Please provide any additional information below.
|
|
@ -0,0 +1,67 @@
|
|||
[[!comment format=mdwn
|
||||
username="konubinix"
|
||||
ip="82.243.233.186"
|
||||
subject="Git annexed files symlink are wrong when submodule is not in the same path "
|
||||
date="2013-08-08T06:36:10Z"
|
||||
content="""
|
||||
Hi,
|
||||
|
||||
First, thanks for the great tool that is git-annex!
|
||||
|
||||
I have a problem with submodules when the git repository is not a submodule everywhere.
|
||||
|
||||
$ git-annex version
|
||||
git-annex version: 4.20130802
|
||||
...
|
||||
|
||||
$ git --version
|
||||
git version 1.8.3.2
|
||||
|
||||
I try to have a repository has a submodule of another.
|
||||
|
||||
# creating the master repository
|
||||
mkdir annex_master
|
||||
cd annex_master/
|
||||
git init
|
||||
# hack: adding a file to create the master branch
|
||||
touch start
|
||||
git add start
|
||||
git commit -m \"start\"
|
||||
cd ..
|
||||
# create another repository
|
||||
mkdir annex_sub
|
||||
cd annex_sub/
|
||||
git init
|
||||
# hack: adding a file to create the master branch
|
||||
touch start
|
||||
git add start
|
||||
git commit -m \"start\"
|
||||
# it is a annexed repository
|
||||
git annex init sub
|
||||
# add the other repository as submodule of the master one
|
||||
cd ../annex_master/
|
||||
git submodule add ../annex_sub/ module
|
||||
cd module/
|
||||
git annex init sub_module
|
||||
git annex sync origin
|
||||
# add an annexed file
|
||||
echo test > test
|
||||
git annex add
|
||||
git annex sync
|
||||
# go back to the origin repository
|
||||
cd ../../annex_sub/
|
||||
git annex sync
|
||||
ls -l
|
||||
|
||||
This returns
|
||||
test -> ../.git/modules/module/annex/objects/w8/pv/SHA256E-s5--f2ca1bb6c7e907d06dafe4687e579fce76b37e4e93b7605022da52e6ccc26fd2/SHA256E-s5--f2ca1bb6c7e907d06dafe4687e579fce76b37e4e93b7605022da52e6ccc26fd2
|
||||
|
||||
Actually, the file committed is correct. But the fact it points to '../.git/modules/module/...' makes the link work only if the repository is also a submodule and if this submodule is also located in the modules folder in the parent git repository.
|
||||
|
||||
I would expect, since this repository is not an annex:
|
||||
test -> .git/annex/objects/w8/pv/SHA256E-s5--f2ca1bb6c7e907d06dafe4687e579fce76b37e4e93b7605022da52e6ccc26fd2/SHA256E-s5--f2ca1bb6c7e907d06dafe4687e579fce76b37e4e93b7605022da52e6ccc26fd2
|
||||
|
||||
Do you think that is possible?
|
||||
|
||||
Thanks.
|
||||
"""]]
|
|
@ -0,0 +1,10 @@
|
|||
[[!comment format=mdwn
|
||||
username="https://www.google.com/accounts/o8/id?id=AItOawnXybLxkPMYpP3yw4b_I6IdC3cKTD-xEdU"
|
||||
nickname="Matt"
|
||||
subject="comment 2"
|
||||
date="2013-08-08T08:33:32Z"
|
||||
content="""
|
||||
Hi, I've sorted this now. The IP address of my laptop had changed on the local network. Fixing it then let the new fix fully work and the in-progress status of the bad repo went away.
|
||||
|
||||
Is it right that in the UI I don't see the local LAN configured branch (which I setup for speed) - it all seems to come under the jabber account now and makes an appropriate choice?
|
||||
"""]]
|
|
@ -0,0 +1,12 @@
|
|||
[[!comment format=mdwn
|
||||
username="https://www.google.com/accounts/o8/id?id=AItOawniayrgSdVLUc3c6bf93VbO-_HT4hzxmyo"
|
||||
nickname="Tobias"
|
||||
subject="comment 3"
|
||||
date="2013-08-08T12:22:28Z"
|
||||
content="""
|
||||
I also see `unfinished repository` in the assistant, but only at git remotes which don't have git-annex installed (f.e. gitlab). annex-ignore is set to true: `git config remote.gitlab.annex-ignore true`.
|
||||
|
||||
Clicking on `check status` says `Setting up this repository seems to have stalled! Make sure the remote system is available and retry`
|
||||
|
||||
git-annex version: 4.20130802-g1452ac3
|
||||
"""]]
|
Loading…
Add table
Add a link
Reference in a new issue