从fork到上游的Git独立提交

问题描述 投票:1回答:1

我有一个共同的问题,但是我没有可靠的最佳实践来解决此问题。我正在为别人的GitHub回购做贡献。我将最新的Development分支分支到了我的仓库中。现在,我想一个接一个地应用拉取请求,这样就很容易分别评估和合并每个请求。

[具体来说,我正在提供文档,上游作者可能想挑选他想要的文档,而不是全部。过去我遇到过这样的问题,我在一个PR中编写了很多文档,但由于太多而被驳回。因此,现在我要为每个预先编写的文档分别对我的存储库/分支进行提交,我想将其提交以进行单独评估。

[使用示例上游MainRepo和分支main-dev,以及我的ContribRepo分支上游-dev,我有多个提交,每个提交中都有一个新文件。什么是“最佳实践”,它将允许每次提交被合并或拒绝,而无需强制执行全部或全部操作?

我不认为GitHub在浏览器用户界面中支持此功能。我了解樱桃采摘,以及如何使用它从我自己的分支中提取提交。但是我已经读到上游作者需要访问贡献者的回购协议才能将提交提交回自己的回购/分支。

似乎我需要在回购中为要提交的每个文档创建一个新分支,考虑到我正在考虑将每个文件视为一个单独的项目,在某些方面这似乎很合适。我会做的,但似乎我们正在为一个小事件消耗大量资源。

如果我问有关如何摆脱困境的错误问题,请提出一种更好的方法来应对这一(常见的?)挑战。

git github cherry-pick
1个回答
1
投票

很容易使每个更改成为一个单独的分支。在命令行中,执行:

git checkout main-dev
git checkout -b my-first-work
git add .
git commit -m 'did some first work'
git push -u origin my-first-work

git checkout main-dev
git checkout -b my-second-work
git add .
git commit -m 'did some second work'
git push -u origin my-second-work

像这样继续为您想要的多个分支。然后对每个分支执行一次拉取请求。

话虽这么说,我真的不明白为什么他们需要你这样工作。他们可以轻松地处理在单个分支上具有多个提交的单个拉取请求。他们没有理由不挑剔他们想要的东西。

他们当然“有权访问您的仓库”!这就是github的全部内容。

但是如果这就是他们的标准,那么他们就是仓库的老板。像上面一样工作,希望他们会快乐。

© www.soinside.com 2019 - 2024. All rights reserved.