我正在按照John Anderson Vim Setup的指南来帮助设置vim。他逐步将各种子模块以格式
添加到git中git submodule add http://github.com/tpope/vim-fugitive.git bundle/fugitive
自完成指南以来,我做了进一步的改动。超越自己我在ubuntu我的路径是〜/ .vim,我使用了指南中描述的确切{autoload,bundle}设置。
我希望将我在〜/ .vimrc中添加的更改以及我已安装到我的github中的ohther捆绑包中包含,以便我可以克隆它并继续使用任何其他PC。
真的很难弄清楚如何获取git的变化。例如,在我的〜/ .vim / bundle /目录中,它有两个新的文件夹delimitMate和colorschemes。但是,当我执行git push时,它会返回所有内容。
我错过了什么?
答案 0 :(得分:4)
我认为这些是子模块。你需要做的是:
# To add new modules
git add .gitmodules
git commit -m "Add new bundles"
# To add changes in vimrc
git add vimrc
git commit -m "Update my vimrc"
# To upload to Github
git push origin
在另一台PC上,克隆/拉动Github仓库后,你需要:
git submodule init
git submodule update
要对子模块进行新的更改,您可以在以后使用:
git submodule foreach git pull origin master
# NOTE: no trailing slash!
git add bundles/fugitive
git add bundles/etc
git commit -m "Update bundles"
git push
您可以通过以下命令减少许多add
:
git ls-files -m bundles | xargs git add
答案 1 :(得分:1)
尝试:
git submodule update
git add delimitMate colorschemes [and any other file names]
git commit -m "My changes"
git push origin master
推送用于远程存储库。提交将承诺您的本地回购。必须先在本地提交更改,然后才能推送到远程存储库。