git push不将更改发送到远程git存储库

git push不将更改发送到远程git存储库,git,push,Git,Push,我正在对本地git存储库中的某些文件进行更改,然后希望将更改发送到远程git存储库,通过ssh从中克隆本地git存储库 在本地运行“git commit-a”之后,为了将更改发送到远程,我运行 $ git push Everything up-to-date 但是,我检查了远程文件,它们没有更改! 有什么想法吗 谢谢和问候 您尝试过以下方法吗 $ git push origin master:master 您可能会被推入一个非裸存储库,即一个附加了工作副本的存储库。如果git push注意

我正在对本地git存储库中的某些文件进行更改,然后希望将更改发送到远程git存储库,通过ssh从中克隆本地git存储库

在本地运行“git commit-a”之后,为了将更改发送到远程,我运行

$ git push
Everything up-to-date
但是,我检查了远程文件,它们没有更改! 有什么想法吗


谢谢和问候

您尝试过以下方法吗

 $ git push origin master:master

您可能会被推入一个非裸存储库,即一个附加了工作副本的存储库。如果git push注意到这种情况,您不应该忽略它给您的警告

无论如何,登录到远程计算机,更改到存储库并执行以下操作

git checkout <whatever branch you’re on>
git签出

好了。下次只推送到裸存储库。:)

我建议你考虑一下使用。在初始设置之后,它非常容易使用。

在远程存储库中键入“git log”,查看它是否包含最新的提交。 如果没有,您应该检查本地存储库的配置以查看远程设置

要查看不同类型远程存储库中的更改,请执行以下操作:

A.如果您的远程存储库是空的,您可以在远程存储库中找到文件 分支机构/ 配置 描述 头 钩子/ 信息/ 物体/ 裁判/

推送新提交后,对象/目录中的文件将发生更改

B.如果您的远程存储库是非裸存储库, 键入“git签出主机”
和远程存储库中的“git状态”,以查看文件状态。查看某个文件是否已被修改或删除。

另一个问题可能是您可能已使用

git添加你的目录

您必须记住提交目录中的文件

git commit-m'addyourmessage'您的目录/*


然后添加一个git push,以便将其推送到您的远程

我也有同样的问题,这是因为我签出到了历史中的某个点(在本例中是一个标记),而不是任何分支或主分支的末端(头部)。我会做出改变,并承诺会成功,我会看到我当地历史上的变化。当我运行git push时,git表示一切正常,但更改实际上并未提交到服务器(可以通过检查日志或重新克隆repo并检查其日志来查看)。此错误的最佳症状是看到消息“Head Depatched from uuuuuuuuuuuuuu”

解决方案 一个人实际需要做的(如果你已经做了我所做的)是创建一条新的开发线,方法是创建一个分支,然后在进行更改之前切换到该分支

git branch [a new branch name]
git checkout [a new branch name]  
然后在提交更改后,如果希望将更改推送到服务器,则需要将分支本身推送到服务器

git push -u origin [local branch name]
现在,如果您克隆了存储库,您应该可以在日志中看到您所做的更改。但是,下次克隆存储库时,为了能够转到刚才更改的位置,您将需要签出该分支,因为默认情况下,您将位于主线上,这是从您分支的开发线“更远”的地方

git checkout [branch name]  

我刚刚经历了一次同样令人沮丧的事情,没有看到我的更改在github上被复制。 作为一个新的git用户,刚刚习惯了使用这个系统,我在我的计算机上创建了一个文件夹,添加它,提交它,推送它-没有改变。 我考虑了无法推送空目录的可能性,因此我在目录中创建了一个空文件,然后重复上述步骤。 更好的是,这一变化立即反映在我的github回购协议中

git commit --amend

将更改
提交ID
,并使远程存储库“认为”已做了新的更改。

这些解决方案对我都不起作用,只有在运行
GIT\u WORK\u TREE=/path/to/website GIT checkout-f
后,提交才会出现在我的live网站上。如果这是您的情况,您必须向git配置添加一个“钩子”

  • 转到git文件夹中的hooks文件夹:

    cd~/path/.git

    cd挂钩

    nano post接收

  • 在post接收文件中写入此行:

    GIT\u WORK\u TREE=/path/to/your/website/or/project/GIT checkout-f

  • 最后,您必须修改post接收文件的权限:

    chmoda+x后期接收


  • 这将在每次推送时执行该命令,更新远程项目上的提交。

    我发现问题在于我没有将文件以及消息添加到更新中。我使用以下命令修复了此问题:

    git add .
    
    然后

    git commit -m "updates done by..."
    
    然后

    git push origin <repo_name>
    
    git推送原点
    

    希望这对某人有帮助;)

    嗯,这对我来说很有用

    git stash
    
    git pull
    
    git add .
    
    git commit -m "commit message"
    
    git push
    

    一种解决方案是移除遥控器并重新插入,只需重置本地树和预设。手动移动文件夹时会出现此问题

    要删除您的遥控器:

    $ git stash
    
    然后:


    我的问题与一个新的git/github用户完全相同。 您必须将其写入命令行:

    git push -u origin master
    

    这应该可以解决你的问题。

    我也面临同样的问题,我尝试了几种方法,但都没有奏效


    最后,我添加了一个虚拟提交并再次推送了更改,现在我可以在GitHub远程存储库上同时看到这两个更改(前一个和虚拟一个)。

    有时这只是由于加载问题而发生的。尝试直接在另一个新选项卡中从分支菜单打开链接。这对我很有效。

    因为我在CentoS 7上与NetworkManager有类似的问题。 ping git服务器给出了响应,连接netcat(nc)也给出了响应,甚至尝试连接ssh都有效。但是git命令一直挂着

    最后发现,
    /etc/hosts
    中的一个条目指向了一个无法访问的错误ip地址,而不是使用NetworkManager及其DNS设置来解析git服务器。

    我成功地
    $ git remote add origin <URL>
    
    git push -u origin master