更改功能分支时自动存储/应用更改

时间:2016-01-19 22:14:45

标签: smartgit

基本上我正在寻找的是将每个功能分支视为一个单独的存储库的方法,如下所示:

1)如果我的活动分支是功能A,并且我修改了“foo.cpp”并想要签出功能B,我希望SmartGit在这样做时自动存储我的更改。

2)在功能B中徘徊,然后返回到功能A,我希望它将我的更改存储到功能A中,然后应用(并可能删除)在步骤1尾部创建的功能。

有没有办法自动执行此操作,还是我要求一些荒谬的事情?

1 个答案:

答案 0 :(得分:4)

SmartGit不会为任何分支机构分配页眉,但您只需将 A 中的修改作为临时 WIP (在制品)提交,然后切换到 B ,继续在那里工作,最后再次以 WIP 提交您的更改并切换回 A 。现在你有几个选择:

  • 本地|撤消上次提交以“解除”您之前的工作;
  • 继续工作并使用现有 WIP 提交的修改选项提交。功能准备就绪后,在传出视图中使用编辑提交消息;
  • 继续工作并提交新的 WIP 提交,一旦您的功能准备就绪,请在传出视图中使用 Squash Commits 来压缩所有 WIP 提交一个整洁的最终提交。

就个人而言,我更喜欢最后一个选择,因为有几个 WIP 提交让我更好地审查我的进度(并看到我在切换任务时可能来回)。