用smart git.在未提交前pull会提示你stage

覆盖了就版本回退
git reflog 命令查看你的历史更改记录
在这里插入图片描述
git reset --hard HEAD@{n}
(HEAD@{n} 或版本号,就前面那一串数字)

Git:避免更新代码导致被还原或覆盖的解决方案
结论先行:

  • 1、明确分工,相同文件,尽可能只由一个人操作 (根本上解决问题)
  • 2、保存储藏->拉取代码->弹出储藏->解决冲突 (推荐,版本记录好看且方便)
  • 3、拉取代码,合并时的必填消息不填或为空!最后检查每一个被修改的文件,确保没有问题后再重新提交

白菜实验:
人物:小白与小菜
前提:协同开发,关联同一个远程仓库

假设:
小白修改 a.txt 文件后提交并推送到远程仓库
小菜也修改了 a.txt 文件

小菜使用 git pull 拉去代码失败,提示可以使用 commit 或 stash 去解决问题

解决办法:

  • 采用 stash 方法 (推荐)
    保存储藏(git stash save) -> 拉取代码(git pull) -> 弹出代码(git pop) -> 解决冲突(如果有) -> 添加代码(git add . ) -> 提交代码(git commit -m’msg’) -> 推送远程(git push)
  • 采用 commit 方法
    先提交改变的代码到本地仓库:添加代码(git add . ) -> 提交代码(git commit -m’msg’)
    执行 (git pull) 或者(git fetch + git merge)代码后将会触发2种情况
    有冲突,合并失败:解决冲突问题并核对修改的文件,确定无误在重新添加并推送远程
    提示填写消息:不填写或者取消,去检查修改的代码,确定无误在重新添加并推送远程
Logo

旨在为数千万中国开发者提供一个无缝且高效的云端环境,以支持学习、使用和贡献开源项目。

更多推荐