在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.