从 git 存储库交互创建补丁

Creating patch from git repository interactivelly

我有一个存储库,其中有一个提交,我想作为开源项目的补丁发布。问题是该提交的某些部分具有我需要并希望自己保留的调试信息,但对这个 public 存储库来说是混乱的。

我正在寻找的是通过与 git add -up 类似的机制从我的存储库中生成一个补丁文件,在那里我可以 select 差异的哪些部分将被上演犯罪。有什么方法可以生成我可以发送的补丁吗?

你可以只使用 git add -up:

  • 根据您的工作签出一个新分支。

  • 将其重置回您作品的父级,例如 git reset master。这将倒回存储库 而不会 对您的工作副本进行更改。

  • 现在使用 git add -up 添加您的更改。

  • 提交更改,现在您可以git format-patch master获取补丁。

Is there any way to this to produce a patch I can send?

当然可以。提交你所拥有的,基于你当前的分支创建一个新分支(比如git checkout -b NewBranchName)并编辑掉你不想发布的部分。当您准备就绪时,考虑变基以将您的提交压缩为一个提交,然后从 NewBranchName 创建一个拉取请求。然后你可以回到你以前的分支并且仍然保持所有调试的东西完好无损。