当我在 dev分支改了代码以后。但是还没提交 想切换到master上的时候。先commit 然后 checkout 跟 state 然后checkout 有什么区别吗。
免费说一下应用场景,因为commit其实是提交到本地仓库并不是提交到中央仓库。
在所在我看来跟stash使用到结果也差不多。
关于git中的stash跟commit的有一些疑问
- 写回答
- 好问题 0 提建议
- 追加酬金
- 关注问题
- 邀请回答
-
1条回答 默认 最新
- duxin_ 2018-07-08 14:57关注
你首先要问自己一个问题,当你在某个分支修改代码的时候,你为什么要切换到其他分支(比如master)?commit有commit的含义,checkout有checkout的含义,stash有stash的含义,虽然你说的两种操作效果是一样的,但是他们的目的完全不同。就你的问题而言,如果你换到其他分支是想在那个分支工作,有两种情况:1.你当前的工作已经完成了,那你完全可以commit到你当前的分支,不管你要不要push到remote去。这种情况下,你说的两种操作效果是一样的。2.你的工作没有完成,那你就只能用stash了。你首先不应该commit,每一个commit从理论上来说都是完成某件事情的,是可以work的代码,而不是一个半成品。你可以说,我先commit,一会再checkout不就行了。可以是可以,但是如果你在另一个分支操作很久,回来的时候你忘了呢?你可能会继续修改,然后再创建一个新的commit。
请参看git关于stash的说明:https://git-scm.com/book/zh/v1/Git-%E5%B7%A5%E5%85%B7-%E5%82%A8%E8%97%8F%EF%BC%88Stashing%EF%BC%89
本回答被题主选为最佳回答 , 对您是否有帮助呢?解决 1无用
悬赏问题
- ¥100 只改动本课件的 cal_portfolio_weight_series(decision_date), 跑完本课件。设计一个信息比率尽量高的策略。
- ¥20 如何在visual studio 2022中添加ImageMagick库
- ¥50 如何实现uniapp编译的微信小程序做可回溯视频
- ¥15 求Houdini使用行家,付费。价格面议。
- ¥15 前端高拍仪调用问题报错
- ¥15 想用octave解决这个数学问题
- ¥15 Centos新建的临时ip无法上网,如何解决?
- ¥15 海康威视如何实现客户端软件对设备语音请求的处理。
- ¥15 支付宝h5参数如何实现跳转
- ¥15 MATLAB代码补全插值