【Git】如何使用git stash

回顧我以前寫的那篇文章真是尷尬啊。讀了幾年前寫的 qiit(誤把它當成 Git stash)後,感到非常尷尬。

由于与那个时候不同,我学会了巧妙地使用git stash,因此对此进行了总结。本次文章不仅关于git stash的使用方法,还涉及了使用场合。

我只使用以下这些基本命令。我觉得区分使用很麻烦,所以不费心思。

git st 'hogehoge'

無論如何

git stash save -u 'hogehoge'

为了与其相似,我们对其进行了别名处理。

为了向不熟悉上述命令的人作简单介绍,

通过使用-u选项,您可以将未跟踪的文件与stash一起保存。
通过使用save选项,您还可以留下注释。

这个问题。

突然出现了紧急任务。

这是我认为很多人都使用的方法。
当正在实现问题A时,如果被告知出现了bug,可以毫不犹豫地执行git stash save -u ‘hogehoge’指令,然后切换到其他工作。
当任务完成后,返回原来的分支并执行git stash pop指令即可。

我希望在另一个分支上进行这个实现。

我稍微谈谈分支管理的问题。

根据行为表现来进行分支(branch)划分。
例如,在实现这样一项任务时:从某个外部API获取数据,将数据在应用程序中进行修改和保存,然后实现一个能够获取这些数据的API。
我们可以按照以下方式进行分支划分。

用于设置实施所需内容的分支 feature/initialize。

使得能够从外部API获取数据的功能/分支- feature/get-data

使得已获取的数据能够修正和保存的分支:feature/update-data

特性/获取-hoge 分支是为了能够获取已保存的数据。

这个形象是这样的感觉。

所以,比如在实现能够获取已保存数据的功能时,
在实现能够修改和保存获取到的数据的功能时,发现了错误和改进之处,使用stash临时储存起来。
如果在feature/update-data分支中进行了修正,然后回到原来的分支,合并feature/update-data分支也是可以的,但我选择先删除原来的分支,然后再从feature/update-data分支开始分岐。(希望保持提交的整洁…)如果在重新创建的分支中执行stash pop,就可以恢复到原来的状态。

那个3,用另外一个实现的分支更好啊,对吧?

有没有类似这样的时候呢? 我经常遇到这种情况。
就像第2点那样将分支细分,当我意识到已经快要完成实现,但另一个分支更好的时候,我会先在当前分支上 add&commit 只想要提交的东西,然后在另一个分支上 stash 需要提交的内容,切换到相关分支,再pop stash 后 add&commit,最近我经常这样做。

总结

最近我总结了使用stash的时机,如下所示。
虽然以上的使用方法会有些麻烦,但考虑到评审人的情况,我认为尽量为每个具体的操作创建PR可以让评审变得更加容易,所以请尝试利用stash并关注分支的划分。

如果你还有其他类似的情况要使用stash的话,请务必留下评论。

广告
将在 10 秒后关闭
bannerAds