我的公司使用 atlassian stash 进行开发。 因此,我们正常的开发过程是为您正在执行的操作创建一个远程分支,将更改推送到分支,然后执行拉取请求。
但是,很多时候我想一次浮动几个更改。 例如,当我在处理功能 X 时,我在 Y 中暴露了一个错误。 我想在提交拉取时保持变更集独立。
我可以想到几种蛮力方法:
- 为每个修补程序提供多个本地存储库,并同步推送它们。
- 创建大量远程分支,并并行推送。
- 使用存储来保存我的补丁集,并同步推送。
但是,必须有一种更简单的方法。 我想我正在寻找某种被子,但不是订购的。 我想将我的补丁集分开,直到准备好提交。
建议?
您已经列出了一些针对您的问题的好解决方案。
有时,当我不想引入更改时,我只是不将这些文件添加到我的提交中 - 只需指定要添加的文件git add filename
。我真的只有在快速测试时才这样做 - 我想这可能会很快变得混乱。当再次拉取时,如果其他人触摸了您正在处理的文件,您可能会遇到合并冲突。但是重新引入代码应该很容易。
您可以尝试 git stash - 这会将未完成的更改保存到堆栈中。您可以随时重新应用它们。
另外,如果您正在研究长期增强功能或错误 - 我会像 Krüger 提到的那样创建另一个分支。