当我在 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无用
悬赏问题
- ¥15 删除虚拟显示器驱动 删除所有 Xorg 配置文件 删除显示器缓存文件 重启系统 可是依旧无法退出虚拟显示器
- ¥15 vscode程序一直报同样的错,如何解决?
- ¥15 关于使用unity中遇到的问题
- ¥15 开放世界如何写线性关卡的用例(类似原神)
- ¥15 关于并联谐振电磁感应加热
- ¥60 请查询全国几个煤炭大省近十年的煤炭铁路及公路的货物周转量
- ¥15 请帮我看看我这道c语言题到底漏了哪种情况吧!
- ¥66 如何制作支付宝扫码跳转到发红包界面
- ¥15 pnpm 下载element-plus
- ¥15 解决编写PyDracula时遇到的问题