git 解决 error: failed to push some refs to 'https://github.com/xxxx.git'
在github远程创建仓库后, 利用gitbash进行提交本地文件的时候出现如下错误
[root@foundation38 demo]# git push -u origin master Username for 'https://github.com': xuefeilong Password for 'https://xuefeilong@github.com': To https://github.com/xuefeilong/test.git ! [rejected] master -> master (non-fast-forward) error: failed to push some refs to 'https://github.com/xuefeilong/test.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前先将远程仓库pull到本地仓库 $ git pull origin master #git pull --rebase origin master $ git push -u origin master 2: 强制push本地仓库到远程 (这种情况不会进行merge, 强制push后远程文件可能会丢失 不建议使用此方法) $ git push -u origin master -f 3: 避开解决冲突, 将本地文件暂时提交到远程新建的分支中 $ git branch [name] # 创建完branch后, 再进行push $ git push -u origin [name]
我使用的是直接加入参数-f,但是不推荐比较粗暴:
[root@foundation38 demo]# git push -u origin master -f Username for 'https://github.com': xuefeilong Password for 'https://xuefeilong@github.com': Counting objects: 13, done. Delta compression using up to 4 threads. Compressing objects: 100% (7/7), done. Writing objects: 100% (13/13), 975 bytes | 0 bytes/s, done. Total 13 (delta 1), reused 0 (delta 0) remote: Resolving deltas: 100% (1/1), done. To https://github.com/xuefeilong/test.git + 5c057df...abfded5 master -> master (forced update) Branch master set up to track remote branch master from origin.