From 1f8fc9c0fedff6f4ffb9fb4af0645968abe72a8d Mon Sep 17 00:00:00 2001 From: Philipp Tuchardt Date: Fri, 21 Oct 2022 21:20:44 +0200 Subject: [PATCH] docs(core): updated version number and improved README.md --- README.md | 16 ++++++++++++++-- .../readme-ressources/gitlab-merge-request.png | Bin 0 -> 7367 bytes js/frontend.js | 8 ++++---- manifest.json | 2 +- package-lock.json | 4 ++-- package.json | 2 +- ts/frontend.ts | 4 ++-- 7 files changed, 24 insertions(+), 12 deletions(-) create mode 100644 assets/readme-ressources/gitlab-merge-request.png diff --git a/README.md b/README.md index 538c8e5..afb4ce8 100644 --- a/README.md +++ b/README.md @@ -8,9 +8,21 @@ # Gitlab "git clone …" -Simple chrome extension, that adds "git clone" before the source. +Simple Google Chrome extension, which adds some minor tweaks to make working with Gitlab a little better. -![Screenshot Gitlab](assets/readme-ressources/gitlab-git-clone.png "Screenshot Gitlab") +--- + +## Current Features + +It adds "git clone" before the repository source. + +![Screenshot Git Clone](assets/readme-ressources/gitlab-git-clone.png "Screenshot Git Clone") + +and also a _Checkout_ button on the Merge-Request page to copy the branch name plus a _git checkout_ before it. + +![Screenshot Merge Request](assets/readme-ressources/gitlab-merge-request.png "Screenshot Merge Request") + +--- ## How to install? diff --git a/assets/readme-ressources/gitlab-merge-request.png b/assets/readme-ressources/gitlab-merge-request.png new file mode 100644 index 0000000000000000000000000000000000000000..60895b95789573d2c1ccce2828453797ab2ee6ae GIT binary patch literal 7367 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 uWnbyxJ-w1 let mobileCloneButtons = document.querySelector('.mobile-git-clone .clone-dropdown-btn'); const currentPath = window.location.pathname; const beforeVal = 'git clone '; -const copyNameBtnVal = 'Copy branch name'; +const copyNameBtnVal = 'Checkout'; const copyNameBtnClasses = 'gl-display-none gl-md-display-block btn gl-button btn-default btn-grouped'; let branchNameEl; function modifyMobileCloneButtons() { @@ -18,10 +18,10 @@ function createCopyBranchNameButton(branchNameEl) { cloneBranchNameBtn.innerText = copyNameBtnVal; if (branchName) { cloneBranchNameBtn.addEventListener('click', () => { - navigator.clipboard.writeText(branchName).then(() => { - /* success */ + navigator.clipboard.writeText('git checkout ' + branchName).then(() => { + /* success - do nothing */ }, () => { - /* failure */ + /* failure - do nothing */ }); }); } diff --git a/manifest.json b/manifest.json index 021b5e1..96966a3 100644 --- a/manifest.json +++ b/manifest.json @@ -1,7 +1,7 @@ { "name": "Gitlab Git Clone", "description": "Adds 'git clone' to the ssh/https clone url, so you simply can copy and paste it into your terminal.", - "version": "1.2", + "version": "1.3", "manifest_version": 3, "content_scripts": [ { diff --git a/package-lock.json b/package-lock.json index 2d64f5d..57e1c06 100644 --- a/package-lock.json +++ b/package-lock.json @@ -1,12 +1,12 @@ { "name": "gitlab-gitclone", - "version": "1.2.0", + "version": "1.3.0", "lockfileVersion": 2, "requires": true, "packages": { "": { "name": "gitlab-gitclone", - "version": "1.2.0", + "version": "1.3.0", "license": "MIT", "devDependencies": { "typescript": "^4.8.2" diff --git a/package.json b/package.json index d0305f2..802120c 100644 --- a/package.json +++ b/package.json @@ -1,6 +1,6 @@ { "name": "gitlab-gitclone", - "version": "1.2.0", + "version": "1.3.0", "description": "Adds 'git clone' to the ssh/https clone url, so you simply can copy and paste it into your terminal.", "main": "./js/frontend.js", "scripts": { diff --git a/ts/frontend.ts b/ts/frontend.ts index 7e91347..8d0c6fc 100644 --- a/ts/frontend.ts +++ b/ts/frontend.ts @@ -3,7 +3,7 @@ let cloneOptionsDropdown: NodeList | null = document.querySelectorAll('.clone-op let mobileCloneButtons: HTMLElement | null = document.querySelector('.mobile-git-clone .clone-dropdown-btn'); const currentPath: string = window.location.pathname; const beforeVal: string = 'git clone '; -const copyNameBtnVal: string = 'Copy Branch Name'; +const copyNameBtnVal: string = 'Checkout'; const copyNameBtnClasses: string = 'gl-display-none gl-md-display-block btn gl-button btn-default btn-grouped'; let branchNameEl: HTMLElement | null; @@ -20,7 +20,7 @@ function createCopyBranchNameButton(branchNameEl: HTMLElement) { if (branchName) { cloneBranchNameBtn.addEventListener('click', () => { - navigator.clipboard.writeText(branchName).then( + navigator.clipboard.writeText('git checkout ' + branchName).then( () => { /* success - do nothing */ },