I am looking for software that implements following development workflow with git:

  • master branch is blessed. Any commit on master pass tests.
  • trusted developers push to branches like dev/Joe/joes-feature
  • Software in question tries to cherry pick commits from developer's branches on top of master and test it one-by-one.

    • If tests pass, commit is landed on master, and next commit in branch is processed.
    • If tests fail, whole branch is marked as faulty, no other commits are m cherry-picked from it and developer is notified somehow.
  • Software repeats until all developer branches are either fully cherry- picked into master or marked faulty.
  • Nicety: pushes from developer Alice into master or into dev/Bob/* branches are rejected by Git.

How it is different to GitLab (GitHub is same):

  • pull requests must be merged manually. There is no "merge any good commit" automatically feature
  • CI only checks HEAD of pull-request branch, not every commit.
  • CI checks pull-request branch, not what will happen when it is merged into master.

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

Browse other questions tagged or ask your own question.