大家在开发过程中,遇到需要切换分支的情况,比如需要紧急修复一个线上 bug 。这个时候,是使用 git commit 临时保存本地代码还是使用 git stash 。
101
zbowen66 360 天前 1
@flyqie #2 年轻啊,commit 可以随意丢弃重置啊,有 reflog 可以找回来,stash 丢了就真没了。误操作是一方面,我经历过硬盘损坏开不开机的情况,所以我临时 commit 也推送远程,然后 reset/rebase 回来
|
102
11232as 360 天前
git stash ,怕丢就 git diff HEAD .输出成 Patch 保存到本地,需要用的时候再把 Patch 打上来得了。
|
103
littlewing 360 天前 1
当然是 commit
后面再 reset 、rebase 、amend 都行啊 |
104
littlewing 360 天前
我们都是先把代码拷贝一份然后再改呢
|
105
Torpedo 360 天前
我都是同一个项目多个副本。之前忙的时候,一个项目最多有三、四个
|
106
JasonGrass 360 天前
worktree 啊,简直就是专门用来处理这种问题的。
[git worktree 使用笔记 - J.晒太阳的猫 - 博客园]( https://www.cnblogs.com/jasongrass/p/11178079.html ) |
107
Jony4Fun 360 天前
@liuidetmks stash save 写上 message 不就好了?
|
108
petercui 360 天前
git worktree
|
109
ClericPy 360 天前
换电脑就 WIP 提交, 反正一个问题改完了也要修分支各种合并无效提交
不换电脑 stash 够了, 不然单体仓库切换分支时候也够麻烦的 很久以前看 Github flow 还是什么 flow 时候有过讲解, 太久了忘了.. |
110
kilakilia007 359 天前 via Android
本地重新拉一个版本库,天知道 bug 要修到什么时候
|
111
Pig930 359 天前
看了一圈大家的回复我还是觉得 git worktree 更好一点哈哈哈,如果 commit 带有一些 hooks 的话那就会避免一些解决问题的成本
|
112
litchinn 359 天前
我使用 githubdesktop ,当我有代码没提交并切换分支时,它会提示,是 stash 还是将修改带到目标分支去,so ,我都是 stash
|
113
Mjhhh 359 天前 1
我是在看到这个帖子之后,才想起我有一个两天之前的 stash ,我决定以后不用 stash ,真会忘记的。。
|
114
sprite82 359 天前
@pkoukk #91 github/gitlab work flow 不是圣经,不是每个公司都是完全照搬的,都是人在操作,规范并不能限制他想干什么,他要是 rebase 了,他自己愿意多操作几个步骤关我什么事,而且这也不叫污染,污染是他最终直接 merge push 了,一个需求项 N 多提交记录。另外我加的基本和大多数你是直接对号入座了是吧,还有什么磁盘天天炸?
|
115
SaigyoujiNono 359 天前
我一般同时 clone 几个项目下来
|
117
XGF 359 天前
git worktree 或者手动拉一个版本库,ignore 的文件怎么办,也复制过来?
|
120
sankooc 359 天前
commit stash 都可以 看个人习惯
|
122
ZE3kr 359 天前
不 push 上去的话电脑一丢,在没有其他备份的情况下,之前写了一半的分支不就丢了;就算有其他备份,commit+push 上去也更保险。我宁可多点垃圾 commit 也不愿意丢掉代码
|