1 Push to origin /master was rejected
2 failed to push some refs to
描述:
$ git push -u origin master
To git@github.com:******/Demo.git! [rejected] master -> master (non-fast-forward)
error: failed to push some refs to 'git@github.com:******/Demo.git'
hint: Updates were rejected because the tip of your current branch is behind
hint: its remote counterpart. Merge the remote changes (e.g. 'git pull')
hint: before pushing again.
hint: See the 'Note about fast-forwards' in 'git push --help' for details.
解决方案:
(1).使用强制push的方法:
$ git push -u origin master -f
这样会使远程修改丢失,一般是不可取的,尤其是多人协作开发的时候。
(2).push前先将远程repository修改pull下来
$ git pull origin master
$ git push -u origin master
(3).若不想merge远程和本地修改,可以先创建新的分支:
$ git branch [name]
然后push
$ git push -u origin [name]
$ git push -u origin master -f
这样会使远程修改丢失,一般是不可取的,尤其是多人协作开发的时候。
(2).push前先将远程repository修改pull下来
$ git pull origin master
$ git push -u origin master
(3).若不想merge远程和本地修改,可以先创建新的分支:
$ git branch [name]
然后push
$ git push -u origin [name]
3 fatal: refusing to merge unrelated histories
描述:这是从远程库pull项目,合并文件发生的异常
解决方案:在pull的时候添加
--allow-unrelated-histories。
$
git pull origin master ----allow-unrelated-histories
4 error:src refspec master does not match any
描述:在push项目的时候,引发该异常。
原因分析:
目录中没有文件,空目录是不能提交上去的,获取没有add、commit文件直接进行push了。
解决方案:
$
touch README
$
git add README
$
git commit -m 'first commit'
$
git push origin master
5 fatal: Authentication failed for 'https://github.com/ ...
描述:
使用的https提交,在用SourceTree提交代码时候发生错误,返回的错误提示说:
fatal: Authentication failed for 'https://github.com/ ...
$git config -–global user.name "xxx"
$git config –-global user.email "xxx@xxx.com"
$git config –-global user.email "xxx@xxx.com"
6 ! [rejected] master -> master (fetch first)
描述:
To git@git.oschina.net:yangzhi/hello.git
! [rejected] master -> master (fetch first) error: failed to push some refs to 'git@git.oschina.net:yangzhi/hello.git' hint: Updates were rejected because the remote contains work that you do hint: not have locally. This is usually caused by another repository pushin hint: to the same ref. You may want to first merge the remote changes (e.g. hint: 'git pull') before pushing again. hint: See the 'Note about fast-forwards' in 'git push --help' for details.
解决方案:
可以输入:$ git push -u origin master -f