reef-dev mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From Markus Weimer <>
Subject Re: Accepting Pull Requests on GitHub
Date Mon, 27 Oct 2014 15:13:09 GMT

my prior attempt to start a thread where we discuss and decide these 
issues hasn't seen any messages. Hence, I really don't know the answer 
to the questions below. I can give you my take, though.

However a contribution ends up in master, I vote to have it be *one* 
commit that *must* reference the JIRA where the change was discussed as 
well as the contributor of the code. I don't really care how the change 
was handed to us: Patch, branch on Apache GIT or Pull Request on GitHub 
are all fine by me. What matters more to me is the paper trail that got 
us there.

Now, there might be some practical concerns coming from the integration 
into the build servers and all. Whoever picks up that work (REEF-11) can 
probably advise us further on that angle.


On 2014-10-26 21:39, Byung-Gon Chun wrote:
> Markus,
> This email says that we can handle pull requests.
> But we do not encourage committers to go through this process. Right?
> Or we don't care which process reef committers choose between the two?
> Thanks.
> -Gon
> On Fri, Oct 24, 2014 at 9:19 AM, Markus Weimer <>
> wrote:
>> (turns out that Apache mailing lists remove formatting. The below is a
>> more plain-text friendly version of the prior mail)
>> Hi,
>> Apache INFRA has set up a GitHub mirror for us. You can find it at:
>> Note that this is a one way mirror: Whatever gets committed into the
>> Apache GIT will show up on GitHub, but we have no write-access to the
>> GitHub version. Nevertheless, you might want to add this repository as a
>> remote to your local repository via
>> $ git remote add github_apache
>> And while you are at it, renaming origin also seems like a good idea:
>> $ git remote rename origin apache
>> As you can see on the Apache GitHub page, there have been two pull
>> requests accepted into Apache REEF already:
>> The mechanism to do so is somewhat cumbersome, but workable. The person
>> wanting to do a PR needs to fork the Apache REEF GitHub repository, change
>> the code in that fork and file a PR against the Apache GitHub. So far, this
>> is standard GitHub fare and not new to those of you outside Microsoft.
>> Actually merging the pull request is very different, though. As mentioned
>> above, we do not have write access to the Apache REEF GitHub mirror. This
>> prevents us from (1) merging the PR and (2) closing it. Both of these can
>> be addressed via the following protocol:
>>    (1) Pull the changes proposed in the pull request into a branch on your
>> local repository.
>>    (2) Rebase that branch to the current apache/master. While doing so,
>> please squash all commits into one and add the line `closes #PRNUMBER` to
>> the commit.
>>    (3) Merge that local branch into apache/master and push that to the
>> Apache GIT
>> Step 2 is the crucial one here. Once the Apache GIT gets mirrored onto
>> GitHub, the latter will see this commit message (e.g. `closes #3`) and
>> close the mentioned issue / PR in the process. That way, we have (1) merged
>> the changes into our code base and (2) closed the PR. The details for these
>> steps are well explained in the Git book's chapter 3:
>> In all of this, I suggest to be super-explicit: Mention the JIRA in the
>> commit messages before making the pull request, mentioning the pull request
>> on the JIRA etc. You can see what we have done to that end in the pull
>> requests already there.
>> Happy merging!
>> Markus

View raw message