我把这次的改动 cherry-pick 到了发布分支。这套流程走下来,我从头到尾又确认了一遍。我看了看这条历史记录的作者,然后决定不去追究了。复盘会上我们把它列成了案例

这个分支的命名让我们后来找了半天。我在心里给这次的回滚方案想好了备选。幸好之前留了备份

提交信息写得好,等于给未来的自己留了份说明书。我把它记在心里,没跟任何人说。我把这个文件的改动从这次提交里剔了出去。同事说这波操作可以写进新人培训教材

在 GitHub 上找到个完美解决方案,一打开链接:404,技术债连同一台服务器一起消失了。我先给自己泡了杯茶,做好了打持久战的准备。我把这个分支的改动 rebase 到了最新主线,冲突不少。这大概就是程序员的人生吧

我把这个 tag 打在了一个不该打的提交上。我重新看了一遍手上的计划,把风险项标了出来。我在心里给这次的 rebase 做好了冲突准备。我把这条经验写进了团队 wiki

分支策略越复杂,新人上手越慢。我叹了口气,然后打开了编辑器。我发现这个冲突有六个文件,每个都要手动选。这大概就是程序员的人生吧

冲突的解决方式比冲突本身更值得记录。我停了一下,然后继续手上的活。我发现这个合并提交里有一处冲突解决错了。好在最后有惊无险

我在提交前会看一眼改动列表,这个习惯救过我几次。我拉了个小群,把相关同学都叫了进来。我在心里给这次的回滚方案想好了备选。世界瞬间清净了

提交信息写得好,等于给未来的自己留了份说明书。我想了想自己这些年,好像确实如此。我把这个 stash 找了出来,里面有我上周的代码。复盘会上我们把它列成了案例

detached HEAD 状态像极了周末的我:不知道自己该在哪个分支上。我笑了笑,决定不解释。我把这个冲突的解决方式记录了下来,下次参照。幸好之前留了备份