Git 本地有未推送的提交,远程又变动了的处理方法

网站代码 浏览 51 评论 0

使用赛博菩萨 github 脱管 Hugo 博客,因为同时使用 github 手机 app、自建 md 文件管理同步以及电脑端,所以时不时遇到分支出叉的情况,比如使用 github 手机 app 或自建 md 文件管理发布了新文章,然后使用电脑修改主题时要推送了才发现远程没同步回来,出现了分支,因为本地已经提交,就很麻烦。

以下是几种解决办法:

1.拉取远程更新并自动合并(推荐)

git pull origin <branch-name>
git add .
git commit
git push origin <branch-name>

2.手动合并

git fetch origin
git merge origin/<branch-name>
git push origin <branch-name>

以上两种方法都需要手动解决冲突后再提交推送。

3.变基(Rebase)方式(保持提交历史线性)

git pull --rebase origin <branch-name>
git rebase --continue
git push origin <branch-name>

3.远程强制覆盖本地

做好本地修改的备份,然后强制远程覆盖本地,接着复制备份文件回来,在提交。

git fetch origin
git reset --hard origin/<branch-name>
git pull
0
分享

评论

还没有评论,快来抢沙发吧!