【问题标题】:Why won't my changes in git go through?为什么我在 git 中的更改无法通过?
【发布时间】:2017-03-30 04:34:49
【问题描述】:

我只想添加所有文件。

现在我得到了只是图标的目录,我以前从未见过这样的东西。

我只是想添加所有文件。我做了

git add *
git commit -m "added"
git push

现在我得到了这个难以理解的混乱。

你如何解释这种状态?

【问题讨论】:

    标签: git


    【解决方案1】:

    那些灰色文件夹是gitlinks (special entry in the index)。
    它们代表嵌套的 git 存储库:父存储库仅记录它们的 SHA1(您在灰色图标旁边看到)

    您需要决定是否要:

    • 将它们正确记录为submodules
    • 完全忽略它们
    • 在您的存储库中添加他们的内容(删除他们的内部 .git 文件夹)

    注意:不要使用git add ** 是由 shell 扩展的。
    使用git add .

    【讨论】:

    • 我想在对另一个存储库进行重要更改后创建一个新的干净存储库。我想释放与旧仓库的连接并将此仓库作为新仓库启动。
    • @DjDac 是的,但是您需要所有这些嵌套 git 存储库的历史记录吗?如果没有,请删除任何.git 目录,执行git init . 并重试git add .
    • 我不需要历史记录。我做了这么大的改变,这应该是一个新的开始。
    • 然后删除您可以找到的任何.git 文件夹,新建一个git init .git add .git commit -m "first commit"git push --force -u origin master 即可。
    【解决方案2】:

    您可以在 cmd、cli、shell 或 git bash 上使用以下代码。

    1. git 状态
    2. git add -A
    3. git commit -m "[你的提交信息]"
    4. git push origin {你的分支}

    示例:

    1. git 状态 [回车]
    2. git add -A [回车]
    3. git commit -m "新提交" [回车]
    4. git push origin master [enter]

    不要使用“git add .”,因为它会覆盖你所有的代码。

    【讨论】:

      猜你喜欢
      • 2020-06-12
      • 2020-12-20
      • 1970-01-01
      • 2010-11-22
      • 2011-12-04
      • 2013-06-04
      • 2016-10-03
      • 2023-01-11
      • 2020-02-03
      相关资源
      最近更新 更多