dcoapp / app

GitHub App that enforces the Developer Certificate of Origin (DCO) on Pull Requests
https://github.com/apps/dco
ISC License
296 stars 73 forks source link

Fix instructions when there has been a merge from master #203

Open alexec opened 12 months ago

alexec commented 12 months ago

Resolving DCO failures takes too long. I’ve lost hours of time and actual valuable work to DCO because I must check out the code, follow the instructions, and they often result in merge conflicts.

None of this was a problem with CLA which we used before, open the PR, click the accept T&CS button, and it was safely fixed in moments..

But good news - it just the developers experience that is problem - and that can be improved!

—-

The instructions are wrong when there has been a merge from master on a pull request. Following them will break the branch, creating merge conflicts which take a long time to fix.

It is this particular instruction that is wrong:

In your local branch, run: git rebase HEAD~29 --signoff

For my branch, only the most recent 3 commits needed fixing:

In your local branch, run: git rebase HEAD~3 --signoff

Any value greater than 3 would I result in rebasing a commit that was the merge from master and creating merge conflicts that create a of risk corrupting the branch.

As each commit increasing the chances of merge conflict and corruption, 29 commits essentially guarantees this problem.

—-

More generally I hate any tool that complains and makes me do work. It would be better if DCO had a button like CLA had I that just safely fixes the commit history.

alexec commented 12 months ago

I’ll happily submit a pull request to help fix this if:

  1. You can give me a few pointers at to which files I should look at to fix it.
  2. You can set some expectations about when it might be merged and released.

I’ve been burnt too many times with OSS projects submitting a fix and then it is not released until months or even years later. As an OSS maintainer myself, I know it is really important to set expectations to contributors.