[ruby-core:94247] [Ruby master Misc#16094] Allow only "Rebase and merge" on GitHub and sync it on git.ruby-lang.org pre-receive hook
From:
takashikkbn@...
Date:
2019-08-10 09:30:22 UTC
List:
ruby-core #94247
Issue #16094 has been reported by k0kubun (Takashi Kokubun). ---------------------------------------- Misc #16094: Allow only "Rebase and merge" on GitHub and sync it on git.ruby-lang.org pre-receive hook https://bugs.ruby-lang.org/issues/16094 * Author: k0kubun (Takashi Kokubun) * Status: Open * Priority: Normal * Assignee: ---------------------------------------- ## Problem * Our pull request merge strategy confuses contributors, as described in [Misc #16093]. * In [Misc #16093], some committers did not like accepting a merge commit. ## Solution * Allow using GitHub's "Rebase and merge" to committers, as suggested by @marcandre * Disable other merge modes like "Create a merge commit" and "Squash and merge" in GitHub repository settings. * Also prohibit pushes to the master branch which are not coming from a pull request by requiring CI in GitHub repository settings. * Perform GitHub bidirectional sync on git.ruby-lang.org pre-receive hook, and accept a push if it does not conflict with "Rebase and merge" on GitHub. ## Notes * Even after implementing this ticket, the Ruby's canonical Git repository will continue to be git.ruby-lang.org as is. * All committers must push non-pull-request commits to git.ruby-lang.org. Direct pushes to GitHub will continue to be disabled. * This approach has one drawback; `git push` to git.ruby-lang.org might block longer than now. -- https://bugs.ruby-lang.org/ Unsubscribe: <mailto:ruby-core-request@ruby-lang.org?subject=unsubscribe> <http://lists.ruby-lang.org/cgi-bin/mailman/options/ruby-core>