我怎样才能创建一个在 git submodule update
中仍然存在的目录链接?
给定以下示例目录结构:
proj
|-- lib3
| `-- submod
| `-- lib
`-- lib
我使用如下命令创建了一个从 proj/lib/
到 proj/lib3/submod/lib
的软链接(soft link):
brad@bradpc:~/proj/lib$ ln -s ../lib3/submod/lib submodlib
创建以下目录结构:
proj
|-- lib3
| `-- submod
| `-- lib
`-- lib
`-- submodlib
但是,运行 git submodule update
会破坏我的链接。我的印象是软链接(soft link)是到相对路径的逻辑链接,因此删除对象并重新添加它会保持链接完好无损。怎样才能达到预期的效果?
最佳答案
使用 ln -s 建立的软链接(soft link)应该如您所愿。据我了解,如果您执行 git submodule update 目录的某些部分 proj/lib3/submod/lib 将被删除并重新创建。这意味着这与手动执行 rm proj/lib3/submod 然后再执行 mkdir -p proj/lib3/submod/lib 没有区别。
我在我的 openSuse Linux 安装上手动测试(rm 和 mkdir),重新创建目录结构后软链接(soft link)仍然正常。
您在哪个操作系统环境中工作?也许这不是真正的软链接(soft link)。
关于linux - git 子模块 : ln -s,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/994155/