Greets,

Our CONTRIBUTING file has been out of date, discouraging Github pull
requests against our mirrors because of difficulties closing them.
Thanks to Infra's hard work, that's no longer a problem: to close Github
pull requests, create a commit on `master` which contains the text `This
closes #NUM`, where "NUM" represents the pull request number.

I'd like to take this opportunity to suggest a change in our committer
workflow.  In order to smoothe the Lucy community's transition from
Subversion to Git, we adopted a practice of rebasing everything before
committing to master -- preserving a linear history similar to svn's.
That practice has served its purpose; I think it's time that we started
using `git merge --no-ff` instead of rebasing.

To illustrate, Tim Wilkens has an open pull request against Lucy for
LUCY-265.  To merge it, I would run the following sequence of commands:

    git remote add timwilkens https://github.com/timwilkens/lucy.git
    git fetch timwilkens
    git merge --no-ff timwilkens/master
    git push origin master

The commit message for the merge commit would include `This fixes #6.`,
causing the ASF github bot to close the pull request.

If this sounds good, I'll inaugurate the new workflow using Tim's
branch.

The reason we use `--no-ff` is to force a merge commit which contains
the magic phrase "This closes #NUM".  If we were to perform a
fast-forward merge, then we'd have to add an empty commit with that
phrase using `git commit --allow-empty` in order to close the pull
request.  (There are other arguments for using `--no-ff` consistently
for all feature branches, such as getting good summary output from
`git log --merges` but the priority is to start merging Github pull
requests this way.)

I've committed an update to CONTRIBUTING which updates our policy on
Github pull requests.

  
https://git-wip-us.apache.org/repos/asf?p=lucy.git;a=commitdiff;h=b678f50718f1796f2c4d08ae4c3478067b8b21b8

In a couple of days I'll claim lazy consensus and merge that change to
master, then make a similar change for lucy-clownfish.git.

Marvin Humphrey

Reply via email to