使用化石/bzr 时是否可以模拟“git stash”的行为?
基本上我有兴趣处理以下工作流程:
- 在某些时候,源代码树有状态 X,它被提交
- 我继续编写新代码,我写了一段时间,我看到了重构的机会
- 我现在不能提交,因为我开始做的改变还没有完成,它还不是原子的
- 此时我会执行“git stash”,保存当前工作并返回状态 X
- 我会进行重构和提交,源代码现在有状态 Y
- 我会将状态 Y 中的源代码与 stash 中的代码合并,完成更改以使其成为原子,然后再次提交,将源代码推送到状态 Z
我认为通常可以在使用另一个 SCM 时模拟这种情况,方法是在状态 X 中分支代码而不是执行“git stash”,在该分支中进行重构,然后将分支合并回主分支。但我知道分支并不总是便宜的操作。那么有没有更好的特定方法最终依赖于化石/bzr 的特定特征?