【发布时间】:2020-05-18 07:51:48
【问题描述】:
我想知道在以下情况下正确的方法是什么。
我正在本地处理master 分支,并且我有多个未提交的更改,我不想提交给origin/master 还。
我想将我当前的更改提交到一些新创建的 origin/temporary 分支(以便其他人可以快速自己运行我工作区的当前阶段),同时将所有更改保留在本地 master 中,以便稍后能够将它们提交给origin/master。
我假设我必须以某种顺序使用git stash,但我不确定...
编辑:
你们中的一些人建议,我可以将temporary 合并到master 中。情况并非如此,因为我不假设临时分支包含任何要接受的东西或任何有效的东西。其目的只是为了快速显示当前代码阶段将在足以提交掌握或进行适当审查之前肯定会发生变化。
这就是为什么我不想将这些更改视为树中稍后的真正更改,它们只是丑陋的。
【问题讨论】:
-
事实上的方法是在工作被接受后将
temporary合并到master。你为什么不想要那个?您也可以以这样的方式合并(快进,变基),如果这是问题的话,它不会作为合并提交可见。另外,你试过什么?您可以提交到一个分支,然后再次签出 master 并将状态重置为temporary分支的状态。 -
简而言之,您想要的都是可能的(但是您尝试过什么?),但您不应该这样做,期间。当然,您的同事可以接受在其他分支上可见的更改,但是是什么阻止您在 master 上提交相同的更改之前再进行一次更改?这正是分支和合并的用途。为什么要按照你描述的方式使用 Git?
-
如果它们还没有准备好提交到任何分支,请使用 stash 将它们收起来。您可能还考虑创建一个辅助工作文件夹,以便您可以将它们未提交到磁盘上,准备好在某个分支上提交。查看 git worktree 命令。
标签: git