代码之家  ›  专栏  ›  技术社区  ›  Jim

如何在Git中存储包含Git存储库的目录?

git
  •  0
  • Jim  · 技术社区  · 7 年前

    是否有首选的Git技术来管理可能包含其他第三方存储库的本地存储库?我保存我的“点”文件。bashrc。bash\u别名,和。vimrc位于“dotfiles”子目录~/dotfiles中。我也有一个。dotfiles中的vim子目录,其中包含许多第三方包,这些包本身包含Git repos。因此,当我在对点文件执行提交之前尝试添加文件时,我会看到以下许多条目:

    modified:   .vim.snipmate/bundle/Vundle.vim (modified content)
    modified:   .vim.snipmate/bundle/tlib_vim (modified content)
    modified:   .vim.snipmate/bundle/vim-addon-mw-utils (modified content)
    modified:   .vim.snipmate/bundle/vim-snipmate (modified content)
    modified:   .vim.snipmate/bundle/vim-snippets (modified content)
    modified:   .vim.ultisnips/bundle/Vundle.vim (modified content)
    

    有几种方法可以解决这个问题,比如把这些子目录放进去。gitignore或创建删除的脚本。git子目录。但这两个都不是很好的选择,因为我必须记住在添加新的Vim插件时要做些什么。Git是否提供了处理这种情况的标准方法?

    1 回复  |  直到 7 年前
        1
  •  1
  •   toniedzwiedz    7 年前

    你可能想调查一下 Git Submodules .

    我已经多年没有使用它们了,但这似乎是处理具有重叠源树的多个存储库的惯用方法。本质上,子模块允许您将Git存储库视为其他Git存储库的子目录。