Skip to content

GitLab

  • Menu
Projects Groups Snippets
    • Loading...
  • Help
    • Help
    • Support
    • Community forum
    • Submit feedback
    • Contribute to GitLab
  • Sign in
  • T Trilinos
  • Project information
    • Project information
    • Activity
    • Labels
    • Planning hierarchy
    • Members
  • Repository
    • Repository
    • Files
    • Commits
    • Branches
    • Tags
    • Contributors
    • Graph
    • Compare
  • Issues 936
    • Issues 936
    • List
    • Boards
    • Service Desk
    • Milestones
  • Merge requests 22
    • Merge requests 22
  • CI/CD
    • CI/CD
    • Pipelines
    • Jobs
    • Schedules
  • Deployments
    • Deployments
    • Environments
    • Releases
  • Monitor
    • Monitor
    • Incidents
  • Analytics
    • Analytics
    • Value stream
    • CI/CD
    • Repository
  • Wiki
    • Wiki
  • Snippets
    • Snippets
  • Activity
  • Graph
  • Create a new issue
  • Jobs
  • Commits
  • Issue Boards
Collapse sidebar
  • James Willenbring
  • Trilinos
  • Issues
  • #2726

Closed
Open
Created May 10, 2018 by James Willenbring@jmwilleMaintainer

Please disable the "Allow rebase merging" merge button

Created by: bartlettroscoe

@trilinos/framework

Can someone with the GitHub permissions please uncheck the "Allow rebase merging" option under the "Merge button" section at the page:

  • https://github.com/trilnos/Trilinos/settings

?

That will stop people from rebasing and then fast-forward merging a bunch of commits on the 'develop' branch. For example, currently, someone with 30 commits on their topic branch could rebase all of these commits and fast-forward merge them to 'develop'. If those commits badly broke an ATDM build for example, then we would have to back out 30 commits, one git revert <sha1> at a time.

By disabling this option, the options of "Merge" and "Squash" are still available, which is all we want/need.

If the topic branch has more than one commit, and they are well-formed "Separate Changes" (see workflows(7)), then you really should select the "Merge" option. But if you have multiple commits, and they are kind of a mess, then you might as well select the "Squash" option. (But people really should be cleaning up their topic branches before their final topic branch push as described here).

If you only have one commit on your topic branch, then it is silly to create a merge commit for this. In that case, you should select "Squash". When you select "Squash" with a single commit, GitHub populates the squash commit summary and log text the same as for the single commit. Therefore, it is equivalent to rebasing a single commit in this case. And a single squashed commit is as easy to revert as a single merge commit. In fact, a single squash commit is easier to revert because you don't need to provide the parent index with git revert -m <sha>. You can just call git revert <sha1>.

Definition of Done

  • Uncheck the button "Allow rebase merging" on the page https://github.com/trilnos/Trilinos/settings

Possible Solution

  • Uncheck the button "Allow rebase merging" on the page https://github.com/trilnos/Trilinos/settings
Assignee
Assign to
Time tracking