refs #5901 Second commit
This commit is contained in:
parent
f3469bd61b
commit
66192f2505
|
@ -0,0 +1 @@
|
|||
\node_modules
|
|
@ -0,0 +1,30 @@
|
|||
require('simple-git');
|
||||
const { promisify } = require('util');
|
||||
|
||||
// Local path of the git repository
|
||||
const repoPath = '/home/username/Projects/project-name';
|
||||
|
||||
const git = simpleGit(repoPath);
|
||||
const gitBranch = promisify(git.branch.bind(git));
|
||||
const gitPush = promisify(git.push.bind(git));
|
||||
|
||||
async function main() {
|
||||
try {
|
||||
await git.fetch(['--prune']);
|
||||
let branches = (await gitBranch(['-r', '--merged', 'HEAD'])).all;
|
||||
const trunkBranches = ["test", "master", "dev"];
|
||||
branches = branches.map((branch) => {return branch.substring(7, branch.length)});
|
||||
branches = branches.filter((element) => !trunkBranches.includes(element));
|
||||
|
||||
for (let branch of branches) {
|
||||
await gitPush(['origin', '--delete', branch]);
|
||||
console.log(`Branch deleted: ${branch}`);
|
||||
}
|
||||
|
||||
console.log('Merged branches deleted successfully!');
|
||||
} catch (err) {
|
||||
console.error('[Error]', err);
|
||||
}
|
||||
}
|
||||
|
||||
main();
|
|
@ -0,0 +1,60 @@
|
|||
{
|
||||
"name": "git-branch-clean",
|
||||
"lockfileVersion": 3,
|
||||
"requires": true,
|
||||
"packages": {
|
||||
"": {
|
||||
"dependencies": {
|
||||
"simple-git": "^3.19.1"
|
||||
}
|
||||
},
|
||||
"node_modules/@kwsites/file-exists": {
|
||||
"version": "1.1.1",
|
||||
"resolved": "https://registry.npmjs.org/@kwsites/file-exists/-/file-exists-1.1.1.tgz",
|
||||
"integrity": "sha512-m9/5YGR18lIwxSFDwfE3oA7bWuq9kdau6ugN4H2rJeyhFQZcG9AgSHkQtSD15a8WvTgfz9aikZMrKPHvbpqFiw==",
|
||||
"dependencies": {
|
||||
"debug": "^4.1.1"
|
||||
}
|
||||
},
|
||||
"node_modules/@kwsites/promise-deferred": {
|
||||
"version": "1.1.1",
|
||||
"resolved": "https://registry.npmjs.org/@kwsites/promise-deferred/-/promise-deferred-1.1.1.tgz",
|
||||
"integrity": "sha512-GaHYm+c0O9MjZRu0ongGBRbinu8gVAMd2UZjji6jVmqKtZluZnptXGWhz1E8j8D2HJ3f/yMxKAUC0b+57wncIw=="
|
||||
},
|
||||
"node_modules/debug": {
|
||||
"version": "4.3.4",
|
||||
"resolved": "https://registry.npmjs.org/debug/-/debug-4.3.4.tgz",
|
||||
"integrity": "sha512-PRWFHuSU3eDtQJPvnNY7Jcket1j0t5OuOsFzPPzsekD52Zl8qUfFIPEiswXqIvHWGVHOgX+7G/vCNNhehwxfkQ==",
|
||||
"dependencies": {
|
||||
"ms": "2.1.2"
|
||||
},
|
||||
"engines": {
|
||||
"node": ">=6.0"
|
||||
},
|
||||
"peerDependenciesMeta": {
|
||||
"supports-color": {
|
||||
"optional": true
|
||||
}
|
||||
}
|
||||
},
|
||||
"node_modules/ms": {
|
||||
"version": "2.1.2",
|
||||
"resolved": "https://registry.npmjs.org/ms/-/ms-2.1.2.tgz",
|
||||
"integrity": "sha512-sGkPx+VjMtmA6MX27oA4FBFELFCZZ4S4XqeGOXCv68tT+jb3vk/RyaKWP0PTKyWtmLSM0b+adUTEvbs1PEaH2w=="
|
||||
},
|
||||
"node_modules/simple-git": {
|
||||
"version": "3.19.1",
|
||||
"resolved": "https://registry.npmjs.org/simple-git/-/simple-git-3.19.1.tgz",
|
||||
"integrity": "sha512-Ck+rcjVaE1HotraRAS8u/+xgTvToTuoMkT9/l9lvuP5jftwnYUp6DwuJzsKErHgfyRk8IB8pqGHWEbM3tLgV1w==",
|
||||
"dependencies": {
|
||||
"@kwsites/file-exists": "^1.1.1",
|
||||
"@kwsites/promise-deferred": "^1.1.1",
|
||||
"debug": "^4.3.4"
|
||||
},
|
||||
"funding": {
|
||||
"type": "github",
|
||||
"url": "https://github.com/steveukx/git-js?sponsor=1"
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
|
@ -0,0 +1,5 @@
|
|||
{
|
||||
"dependencies": {
|
||||
"simple-git": "^3.19.1"
|
||||
}
|
||||
}
|
Loading…
Reference in New Issue