对于上下文:我作为单个项目的唯一开发人员工作。我最近将我的 SVN 存储库迁移到 Git,在使用 TortoiseGit 与 TortoiseSVN 时,我首先想念的是更改列表,在 TortoiseSVN 中,它允许您对本地更改的文件进行分组并命名这些组,但仍然可以看到所有更改的列表未提交的。当我发现自己在准备提交任何事情之前同时处理多个工单(错误或功能)时,我通常会这样做。
意识到 Git 的做事方式肯定不同于 SVN 的方式,也许我应该在本地提交更改,或者甚至为每个工单创建一个单独的分支并在它们之间切换?我只是有点担心,因为每当我做任何不寻常的事情时,SVN 通常都不能很好地分支/切换/合并,比如重命名(或移动)文件。此外,很高兴在单个分组列表中看到我所有更改的文件,这些更改列表给了我,但我在 Git 中看不到任何方法。
如果在上述情况下,普遍接受的答案是为每张工单使用一个分支,我想要一些关于以下两种情况的步骤的指导,请:
如何分离我当前的一组更改,总共包含 18 个文件。我是否应该从整个当前状态创建两个分支,Ticket #1 分支和 Ticket #2 分支,然后以某种方式从分支 #1 中删除 #2 的更改,反之亦然?
对于我已经对一张票进行了一些代码更改并且我必须开始处理另一张票的新情况,我应该采取哪些步骤以便我仍然可以轻松地在两者之间来回切换并理想地查看所有更改的组合?会这样吗?为当前工单的更改创建一个分支;为第二张票的更改创建一个新的 master 分支,并在我切换工作时在它们之间切换?