git-annex/doc/submodules.mdwn

22 lines
953 B
Markdown

[Git submodules](http://git-scm.com/book/en/v2/Git-Tools-Submodules) are
supported by git-annex since version 5.20150303.
Git normally makes a `.git` **file** in a
submodule, that points to the real git repository under `.git/modules/`.
This presents problems for git-annex. So, when used in a submodule,
git-annex will automatically replace the `.git` file with a symlink
pointing at the git repository. (When the filesystem doesn't support
symlinks, direct mode is used, and submodules are supported in that
setup too.)
With that taken care of, git-annex should work ok in submodules. Although
this is a new and somewhat experimental feature.
The conversion of .git file to .git symlink mostly won't bother git.
Known problems:
* If you want to delete a whole submodule, `git rm submodule`
will refuse to delete it, complaining that the
submodule "uses a .git directory". Workaround: Use `rm -rf`
to delete the tree, and then `git commit`.