Last active
October 10, 2024 03:14
-
-
Save lamngockhuong/e02e7af13174844989b20e34921f7372 to your computer and use it in GitHub Desktop.
Disable Regular/Squash Merge for GitHub Pull-Request
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
// ==UserScript== | |
// @name Disable Merge for GitHub PR | |
// @namespace https://gist.github.com/search?q=user%3Alamngockhuong+filename%3Auserscript+language%3Ajs&ref=searchresults | |
// @version 0.7 | |
// @description Automatically disable regular/squash merge on target branch for GitHub PRs | |
// @icon64 data:image/png;base64,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 | |
// @source https://gist.github.com/lamngockhuong/e02e7af13174844989b20e34921f7372 | |
// @updateURL https://gist.githubusercontent.com/lamngockhuong/e02e7af13174844989b20e34921f7372/raw/5d93d61ce0adec315a456bb97e440f2ead5c2bd5/disable-merge-for-github-pr.userscript.js | |
// @downloadURL https://gist.githubusercontent.com/lamngockhuong/e02e7af13174844989b20e34921f7372/raw/5d93d61ce0adec315a456bb97e440f2ead5c2bd5/disable-merge-for-github-pr.userscript.js | |
// @author Lam Ngoc Khuong | |
// @match https://github.com/*/pull/* | |
// @grant none | |
// ==/UserScript== | |
(function() { | |
'use strict'; | |
const releaseBranches = ['main', 'master']; | |
const intervalId = setInterval(() => { | |
const targetBranchElement = document.querySelector('span.css-truncate-target'); | |
const targetBranch = targetBranchElement.textContent.trim(); | |
const mergeButton = document.querySelector('button.merge-box-button.btn-primary.btn-group-merge'); | |
const squashButton = document.querySelector('button.merge-box-button.btn-primary.btn-group-squash'); | |
const rebaseButton = document.querySelector('button.merge-box-button.btn-primary.btn-group-rebase'); | |
if (!mergeButton || !squashButton || !rebaseButton) { | |
return; | |
} | |
if (releaseBranches.includes(targetBranch)) { | |
console.log('<<DisableSquashMerge>> 🐙 Disabled squash merge on: ' + targetBranch); | |
mergeButton.disabled = false; | |
squashButton.disabled = true; | |
rebaseButton.disabled = true; | |
clearInterval(intervalId); | |
} else { | |
console.log('<<DisableSquashMerge>> 🐙 Disabled regular merge on: ' + targetBranch); | |
mergeButton.disabled = true; | |
squashButton.disabled = false; | |
rebaseButton.disabled = true; | |
clearInterval(intervalId); | |
} | |
}, 1000); | |
})(); |
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment