将子模块与裸存储库一起使用失败
Using submodules with bare repository fails
我正在遵循 this 存储点文件的指南。我从我的第一台计算机上推送了所有的点文件,包括子模块。
我添加了这样的子模块:
config submodule add https://github.com/Aloxaf/fzf-tab .cache/zsh/plugins/fzf-tab
,
其中 alias config='/usr/bin/git --git-dir=$XDG_CONFIG_HOME/cfg --work-tree=$HOME
.
在使用 git clone --bare --recursive my-repo-ssh .config/cfg
在目标计算机上的 $HOME/cfg
中克隆我的存储库后,执行 config checkout
然后 config submodule update --recursive
,我收到消息“克隆到 home/user/.cache/zsh/plugins/fzf-tab
我觉得还不错。
但是,在 .cache/zsh/plugins/fzf-tab
目录中只有 .git
文件只有一行:../../../../.config/cfg/modules/.cache/zsh/plugins/fzf-tab
(这是我克隆裸存储库的地方)。
为什么会这样?我在任何地方都找不到如何通过裸仓库正确使用子模块。提前致谢。
已修复:
git clone --bare --recurse-submodules my-repo-ssh .config/cfg
config checkout -f
config submodule update --init --recursive
我正在遵循 this 存储点文件的指南。我从我的第一台计算机上推送了所有的点文件,包括子模块。 我添加了这样的子模块:
config submodule add https://github.com/Aloxaf/fzf-tab .cache/zsh/plugins/fzf-tab
,
其中 alias config='/usr/bin/git --git-dir=$XDG_CONFIG_HOME/cfg --work-tree=$HOME
.
在使用 git clone --bare --recursive my-repo-ssh .config/cfg
在目标计算机上的 $HOME/cfg
中克隆我的存储库后,执行 config checkout
然后 config submodule update --recursive
,我收到消息“克隆到 home/user/.cache/zsh/plugins/fzf-tab
我觉得还不错。
但是,在 .cache/zsh/plugins/fzf-tab
目录中只有 .git
文件只有一行:../../../../.config/cfg/modules/.cache/zsh/plugins/fzf-tab
(这是我克隆裸存储库的地方)。
为什么会这样?我在任何地方都找不到如何通过裸仓库正确使用子模块。提前致谢。
已修复:
git clone --bare --recurse-submodules my-repo-ssh .config/cfg
config checkout -f
config submodule update --init --recursive