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

时间:2014-06-11 16:09:15

标签: git github staging

所以如果我做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显示为灰色文件夹。这是什么意思?谢谢!

2 个答案:

答案 0 :(得分:7)

它(bsg-services)是 submodule 。 (参见&#34; What is this grey git icon?&#34;)

你需要:

  • 首先进入该文件夹添加/提交(并从该子仓库推送),
    bsg-services内的git状态会告诉你更多信息)
  • 然后回到父回购(你在哪里),添加,提交和推送 您在bsg-services内完成的提交将修改您父代回购邮件索引中的 gitlink entry

所以你需要两个推动:

  • 从子模块仓库到其上游仓库的一个(git remote -v应该向您显示)
  • 来自父repo的一个,以便记录新的gitlink SHA1,它记住了该子模块的新状态。

答案 1 :(得分:3)

我有同样的问题。

转到 bsg-services 子目录并进行提交。多数民众赞成!

您在 bsg-services 目录中有另一个git存储库。如果您需要从 bsg-services 子目录中删除.git目录。