zoukankan      html  css  js  c++  java
  • Git『Everything up-to-date』问题解决

    上网查了下,发现中文大多答非所问,少数能解决的并没有阐述原理,所以我写这篇文章记录下。

    这里先上stackoverflow的回答,基础好的可以看这个。

    接下来说我自己的理解,出现这个问题的原因是git提交改动到缓存,要push的时候不会将本地所有的分支都push掉,所以出现这个问题。我们应该告诉git提交哪个分支。

    这里有种特殊的情况是如果你是fork别人的仓库再clone到本地的话,即使git上只有一个主分支,他还是可能出现这个错误。那么我们就需要新建分支提交改动然后合并分支。

    接下来先创建一个新分支提交改动

    $ git branch newbranch

    然后输入这条命令检查是否创建成功

    $ git branch

    这时终端输出

     newbranch
    * master

    这样就创建成功了,前面的*代表的是当前你所在的工作分支。我们接下来就要切换工作分支。

    $ git checkout newbranch

    这样就切换完了,可以$ git branch确认下。然后你要将你的改动提交到新的分支上。

    $ git add .
    $ git commit -a

    此时可以$ git status检查下提交情况。如果提交成功,我们接下来就要回主分支了,代码和之前一样。

    $ git checkout master

    然后我们要将新分支提交的改动合并到主分支上

    $ git merge newbranch

    合并分支可能产生冲突这是正常的,虽然我们这是新建的分支不会产生冲突,但还是在这里记录下。下面的代码可以查看产生冲突的文件,然后做对应的修改再提交一次就可以了。

    $ git diff

    我们的问题就解决了,接下来就可以push代码了。

    $ git push -u origin master

    新建分支的朋友别忘了删除这个分支

    $ git branch -D newbranch

    如果想保留分支只是想删除已经合并的部分只要把大写的D改成小写的d就行了。

  • 相关阅读:
    input文本框加入xwebkitspeech实现语音输入功能
    获取textarea的光标位置
    初学者使用Application Cache指南
    一个封装了localStorage的增删改查的方法
    video from html5
    Asynchronous Method Invocation
    consume an asp.net webservice(upload a file to server) from java via soap
    INFO:VB/VBA (Long) 的转换自动化错误
    : 使用SAAJ发送和接收SOAP消息
    how to design a hardware service use .net remoting
  • 原文地址:https://www.cnblogs.com/zhujiabin/p/10119038.html
Copyright © 2011-2022 走看看