GitHub远程仓库在使用中可能会出现的一些问题

不能完成托管,托管报错:

  问题(Non-fast-forward)的出现原因在于:git仓库中已经有一部分代码,所以它不允许你直接把你的代码覆盖上去。于是你有2个选择方式:   

    1、强推,即利用强覆盖方式用你本地的代码替代git仓库内的内容  ------(我第一次就是采用这种方式解决的)

        git push -f

      可是,这时候又出现了如下的问题:

            

      通过Settings—Email—Keep my email address private,把这项勾掉就可以了。

    2、先把git的东西fetch到你本地然后merge后再push      

        $ git fetch

        $ git merge

        这2句命令等价于 == $ git pull

      可是,这时候又出现了如下的问题:

      

      [branch "master"]是需要明确(.git/config)如下的内容
        [branch "master"]
           remote = origin

           merge = refs/heads/master      

      这等于告诉git2件事:
        1,当你处于master branch, 默认的remote就是origin。

        2,当你在master branch上使用git pull时,没有指定remote和branch,那么git就会采用默认的remote(也就是origin)来merge在master branch上所有的改变
        如果不想或者不会编辑config文件的话,可以在bush上输入如下命令行:

          $ git config branch.master.remote origin

          $ git config branch.master.merge refs/heads/master


原文:https://blog.csdn.net/chain2012/article/details/7476493

猜你喜欢

转载自www.cnblogs.com/jjb1997/p/11272808.html