功能分支和Pull请求 - Git

时间:2013-09-27 15:24:20

标签: git github open-source rebase

我可以创建一个开源项目的用户,克隆项目,分支到功能分支,进行更改,通过在当前工作分支之上重新设置代码进行测试,然后推送他们的拉取请求功能分支,所以我可以将他们的变化重新加入我的工作? (不确定那些大多数开源社区是如何实际工作的......)

所以它看起来像这样:

Project On Github
     |
Clone Project
     |
git checkout branch x.x
git checkout -b new_feature
... Add some code/fix some issues .. TDD is a must
git commit // Commit your stuff.
git checkout branch x.x
git rebase new_feature
.. Rebaseing ...
.. Test to make sure it works // unit tests :D ..
git checkout branch new_feature
     |
submit this branch, new_feature, as a pull request
     |
I see new branch, I review, I rebase or reject.

这是一种典型的工作流程吗?或者大多数开源社区如何处理这个问题,意识到这个问题是模棱两可的,并且可能会导致这个问题被关闭,假设它是你的开源项目,你将如何处理这种情况呢?这是一种“标准”的做法吗?

1 个答案:

答案 0 :(得分:0)

回答问题的第一部分:是的。

他们可以克隆吗?是的,他们可以克隆任何公共存储库 他们可以创建分支吗?是的,他们可以分支任何克隆的存储库 可以做出改变吗?是的,他们可以分支任何克隆的存储库 可以通过在当前工作分支之上重新定位来进行测试吗?是的,使用git的开发人员通常会在他们开始工作之前检查他们感兴趣的分支,然后生成提交,不需要重新设置(还)。 他们可以发送拉动请求吗? GitHub允许他们create pull requests

然后,您可以merge the pull requestreject/delete the pull request

正如GitHub文档所描述的那样,Approvers(对主存储库具有写权限的开发人员)可以合并来自Web的pull请求,或者检查pull请求并对其进行处理(修改它,rebase it,无论你喜欢什么)和然后推送已接受的更改。

回答你的第二部分:IMO这是接收互联网上其他专业人士的代码贡献的好方法。

相关问题