我有一个存储库,我有一个提交,我想将其作为一个补丁发布到一个开源项目。问题是该提交的某些部分具有我需要并希望为自己保留的调试信息,但对这个公共存储库来说是混乱的。
我正在寻找的是通过与 类似的机制从我的存储库中生成一个补丁文件,git add -up
我可以在其中选择将要提交的差异的哪些部分。有什么办法可以生成我可以发送的补丁吗?
你可以使用git add -up
:
根据您的工作签出一个新分支。
将其重置回您工作的父级,例如git reset master
. 这将在不更改工作副本的情况下回退存储库。
现在使用git add -up
添加您的更改。
提交更改,现在您可以git format-patch master
获取补丁。
有什么办法可以生成我可以发送的补丁吗?
当然。提交您拥有的内容,根据您当前的分支(如git checkout -b NewBranchName
)创建一个新分支并编辑掉您不想发布的部分。当你准备好后,考虑 rebase 将你的提交压缩为一个提交,然后从NewBranchName
. 然后你可以回到你之前的分支并且仍然保持所有的调试内容完好无损。