Add squash quick action for merge requests
Issue
Projects have a default shallow clone depth of 20 commits. For merge requests with more than 20 commits, danger-review-local
on GitLab projects fails with:
fatal: not a valid branch point: '3ddffaacb3735622fc85e7efc0ec1daa6be27b57'
fatal: couldn't find remote ref refs/heads/danger_base
The current implementation makes it impossible for contributor who only uses the Web IDE from making the pipeline pass after 20 commits.
- contributor may not want to clone the GitLab repo to their local computers due to the large size (> 1 GB)
- contributor may not want to use GitPod because
- of the long loading time (> 20 minutes on a fresh start)
- it blocks registration from certain email address domains
- it has a free tier limit of 10 hours (unverified) or 50 hours (verified) per month on standard class instances
Proposal
Add a /squash
quick action that when called with:
-
/squash
: squashes all commits on merge request branch, and keep existing commit message- solves the
danger-review-local
issue
- solves the
-
/squash "commit message"
: squashes all commits on merge request branch, and sets commit message (which may be multiline)- this allows adding/updating a
CHANGELOG
entry
- this allows adding/updating a
Implementation guide
- may be similar to the
/rebase
quick action - extract message after quick action
Edited by FromTheStackAndBack