The Atlassian Community Forums are currently in read-only mode. We will be relaunching on a new platform on September 22 (read more here). We apologize for the extended downtime. For concerns or questions, please email communitymanagers@atlassian.com. See you on the other side, on the new Atlassian Community Forums! :)

×

Forums

Articles
Create
cancel
Showing results for 
Search instead for 
Did you mean: 

is it possible to run a rebase in a scriptrunner pre/post hook?

Omar Morales
April 5, 2021

Hello All,

I was wondering if it were possible to run a custom rebase as part of a scriptrunner pre/post hook.

An example of what I am trying to accomplish.

If there are 4 commits being pushed, I want to run a rebase so that the end product is a single commit that contains all changes and the revisions of the other 3 are deleted so that they no longer exist in git's history.

I already know the git command that I would have to run for the actual rebase itself. I just need to know if it's possible to make all pull requests go through that rebase before being merged. Either via scriptrunner or some other method. The rebase would have to be run at any point between the user pushing up their changes and the pull request for those changes being merged back into master.

Any and all help is appreciated!

Thanks!

1 answer

Comments for this post are closed

Community moderators have prevented the ability to post new answers.

1 vote
Robert Giddings _Adaptavist_
Community Champion
May 5, 2021

Hi @Omar Morales ,

The ScriptRunner for Bitbucket team would advise against automating this functionality in a pre/post hook.

However, we do have a custom merge-check Script on our Library which can be used to enforce squashed commits before a Pull Request is allowed to be merged into the target branch.

This merge-check would then advise the user attempting the merge to squash their commits, which they would then need to do manually.

The custom merge-check can be found here: https://library.adaptavist.com/entity/enforce-squashed-commits

If however, you do still want to automate squashing on Pull Request merge, an alternative would be to use Bitbucket's built-in merge strategies, as documented here: https://confluence.atlassian.com/bitbucketserver/pull-request-merge-strategies-844499235.html

Using Bitbucket's merge strategies, you can select to have all commits squashed on merge.

Kind regards,

Robert Giddings,

Product Manager, ScriptRunner for Bitbucket

DEPLOYMENT TYPE
SERVER
VERSION
6.9.0
TAGS
AUG Leaders

Atlassian Community Events