2024-07-18 11:11AM
我在进行git pull的时候,出现了这个报错:fatal: Not possible to fast-forward, aborting.
$ git pull
Username for 'https://github.com': xxxxxx
Password for 'https://xxxxxx@github.com':
fatal: Not possible to fast-forward, aborting.
原因是因为我本地有commit没有进行push,所以在拉取代码的时候就冲突了。
方法1:
1.先进行git pull回退commit,使用这个命令:
$ git reset --soft id^
2.再把回退之后的代码进行stash,可以使用这个命令:
$ git stash save 'xxxx'
3.再重新进行git pull
4.把stash的代码再取出,使用这个命令:
$ git stash list // 可以查看刚刚暂存的代码是哪个
$ git stash apply stash@{x} // 取出代码
5.再重新进行git add、git commit、git push的命令,就可以了。
方法2:
使用这个命令:
$ git pull --rebase
1)获取远程分支的更改
首先,它会获取远程分支的最新提交,就像常规的 git pull
命令一样。
2)在本地重新应用您的提交
然后,它会在本地重新应用您自己的提交,使它们位于远程分支的最新提交之上。这个过程被称为"rebase"。
注意:在本地重新提交的过程中,使用了git commit -m 命令之后,需要运行 git rebase --continue
命令,将你刚刚提交的变更合并到正在变基的分支上。
$ git push
fatal: You are not currently on a branch.
To push the history leading to the current (detached HEAD)
state now, use
git push origin HEAD:<name-of-remote-branch>
$ git rebase --continu
Successfully rebased and updated refs/heads/master.
然后可以运行 git push
将你的变更推送到远程仓库。
登录
请登录后再发表评论。
评论列表:
目前还没有人发表评论