Rename Merge Request Title Automatically

Compatible gitlab

Від 21.03.2022. Дивіться остання версія.

You will need to install an extension such as Tampermonkey, Greasemonkey or Violentmonkey to install this script.

You will need to install an extension such as Tampermonkey or Violentmonkey to install this script.

You will need to install an extension such as Tampermonkey or Violentmonkey to install this script.

You will need to install an extension such as Tampermonkey or Userscripts to install this script.

You will need to install an extension such as Tampermonkey to install this script.

You will need to install a user script manager extension to install this script.

(У мене вже є менеджер скриптів, дайте мені встановити його!)

You will need to install an extension such as Stylus to install this style.

You will need to install an extension such as Stylus to install this style.

You will need to install an extension such as Stylus to install this style.

You will need to install a user style manager extension to install this style.

You will need to install a user style manager extension to install this style.

You will need to install a user style manager extension to install this style.

(I already have a user style manager, let me install it!)

// ==UserScript==
// @name Rename Merge Request Title Automatically
// @name:es Rename Merge Request Title Automatically
// @description Compatible gitlab
// @description:es Compatible gitlab
// @date 2022-03-21
// @compatible chrome
// @compatible firefox
// @compatible opera
// @compatible safari
// @license CC BY-NC-ND 4.0 International. https://creativecommons.org/licenses/by-nc-nd/4.0/
// @match *://*.gitlab.com/*
// @match *://gitlab.*.com.*/*
// @version 0.1
// @namespace https://greasyfork.org/en/users/314553-stefango
// ==/UserScript==
(() => {
  if (window.location.href.includes('cherry-pick')) {
    const branchSelector = document.getElementsByClassName("branch-selector");
    const texto = branchSelector[0].innerText;
    const textoToInput = texto.split(' ');
    const source = textoToInput[1];
    const target = textoToInput[3];
    const url = window.location.href;
    const originalTitle = document.getElementById("merge_request_title").value;

    if (originalTitle.startsWith('Merge branch')) {
      let titleArr = document.getElementById("merge_request_title").value.split(' ');
      titleArr.splice(-1, 1, `'${target}'`);
      document.getElementById("merge_request_title").value = titleArr.join(' ');
    } else {
      // rename manually when code conflicted
    }
  }
})();