git 本地与远程都有的修改
是先 fetch merge 远程修改,
还是先 commit 本地修改
git 本地与远程都有的修改
是先 fetch merge 远程修改,
还是先 commit 本地修改
我的理解,你是想先同步远程的提交,然后再创建自己的提交,但是工作目录又有改动。
第一步,先将本地修改缓存起来:git stash
,然后发现本地修改清空了,别慌!
第二步,git pull
拉取远程代码并合并。
第三步,git stash pop
将刚才缓存起来的修改还原,然后提交即可!
用类似Git的DVCS要一直在脑子里想着Git本质上是一个分布式的文件系统,remote是恰好逻辑上与你的local有了关联(track)。每个Git仓库都维护着自己的DAG。所以要做什么, 比如大家说的先stash还是先commit,都是按需。只要你习惯了看与用Git的非线性的commit. 我的经验是尊重事实上时空上发生的commit是最不容易出问题的。不用为了干净而刻意的做过多rebase类的 rewrite history的操作,往往写错了commit message之类的amend一下就好.
5 回答2.8k 阅读
3 回答2.6k 阅读
3 回答964 阅读
先 commit ,这是 git 的优势,你可以随时 commit,完成一个方法,一个节点,都 commit 一下,以后需要回退时也更加方便,代码更加具有版本性,且一定程度上可以减少因误操作带来的代码丢失。
否则对于新手在解决冲突阶段导致本地代码丢失是新手比较容易犯的错误。