无法使用 git add 暂存提交文件夹。或 git add -u



所以如果我做一个git状态,我得到:

bsg-integration> git status
On branch master
Your branch is up-to-date with 'origin/master'.
Changes not staged for commit:
  (use "git add <file>..." to update what will be committed)
  (use "git checkout -- <file>..." to discard changes in working directory)
  (commit or discard the untracked or modified content in submodules)
    modified:   bsg-services (untracked content)
no changes added to commit (use "git add" and/or "git commit -a")

然后我尝试使用git add .git add -u,但当我使用git status时,我仍然得到同样的东西。发生了什么,我如何把这个文件夹推到github?在我的github repo上,文件夹bsg-services显示为一个灰色的文件夹。这是什么意思?谢谢!

它(bsg-services)是子模块。(见"这个灰色的git图标是什么?")

你需要:

  • 通过先进入该文件夹添加/提交(并从该子repo推送),
    (bsg-services中的git状态会告诉你更多)
  • 然后回到父repo(你所在的地方),添加,提交和推送。
    bsg-services中执行的提交将修改父repo索引中的gitlink条目

所以你需要两个push:

  • 一个从子模块repo到它的上游repo (git remote -v应该告诉你)
  • 为了记录新的gitlink SHA1,该SHA1记录了子模块的新状态。

我也有同样的问题。

转到bsg-services子目录并提交。这就是它!

原因是你在bsg-services目录下有另一个git存储库。如果你需要从bsg-services子目录中删除。git目录

最新更新