【问题标题】:Git - git push origin master returns Everything up-to-date but in remote files not updatedGit - git push origin master 返回一切都是最新的,但在远程文件中没有更新
【发布时间】:2019-08-01 05:51:12
【问题描述】:

我在本地有一个项目,我从远程运行git init。我跑了git status,得到了nothing to commit, working directory clean,然后从本地跑了git push root@mysite.com:/home/mysite/public_html/.git master。返回cdf0879..d49d488 master -> master,表示推送成功。为了确保它已正确推送,我再次运行它,返回值为Everything up-to-date。我更新了一个名为script.js 的文件并运行git add . 然后git commit -m "First Edit" 然后git push root@mysite.com:/home/mysite/public_html/.git master 但是当我从远程运行git status 时它返回:

# On branch master
# Changes to be committed:
#   (use "git reset HEAD <file>..." to unstage)
#       modified:   script.js

如果我也从本地添加、提交和推送以更新远程,我该如何解决?

【问题讨论】:

  • 如果您尝试推送到远程仓库中的当前分支,Git 应该返回错误。 “我从远程运行git status”是什么意思?你是如何连接到远程服务器的?您使用的是 ssh 还是类似的东西?
  • 我已经通过git config receive.denyCurrentBranch ignore 禁用了它。我正在使用 putty 并与 ssh 连接。
  • 查看stackoverflow.com/questions/12265729/… 以获得解释。
  • 解释什么?我只是不知道为什么遥控器没有被更新。正如我一开始所说的那样,它是裸露的,我已经删除了远程.git 目录中的所有文件和目录,并从本地推送了一个新的。
  • 在下面查看我的答案,并直接引用我链接的问题中的一个答案。

标签: git


【解决方案1】:

git push 并没有按照你的想法去做:

git push 命令仅更新远程存储库上的分支和HEAD 引用。它做的也是更新非裸远程中的工作副本和暂存区域。

如果您输入git log,您将看到您推送的所有提交都存在于存储库中。但是,如上所述,您的工作树将不会更新。

Source

【讨论】:

    猜你喜欢
    • 2018-10-06
    • 2021-07-14
    • 1970-01-01
    • 2014-03-23
    • 2018-05-31
    • 2011-06-17
    • 1970-01-01
    • 1970-01-01
    • 2012-01-31
    相关资源
    最近更新 更多