发生推迟跟踪错误
git.exe push "origin" master:master
To prevent you from losing history, non-fast-forward updates were rejected
Merge the remote changes before pushing again. See the 'non-fast forward'
section of 'git push --help' for details.
To //oht-fsv1/Source/Git/Test
! [rejected] master -> master (non-fast forward)
怎么了?
答案 0 :(得分:7)
来自git push
:
当更新改变一个曾经指向提交A指向另一个提交B的分支(或更多通常是一个ref)时,当且仅当B是A的后代时,它才被称为快进更新。
在从A到B的快速更新中,原始提交A构建在其上的提交集是新提交B构建在其上的提交的子集。因此,它不会失去任何历史。
相反,非快进更新将失去历史记录。
因此,这会阻止您丢失历史记录:首先尝试git pull
,解决潜在冲突,然后“git push
”结果。