Skip to content

viqueen/git-workspaces

Folders and files

NameName
Last commit message
Last commit date
Oct 30, 2024
May 28, 2023
Jan 17, 2023
Oct 30, 2024
May 3, 2023
May 28, 2023
Aug 4, 2023
Feb 19, 2025
Oct 14, 2022
Feb 6, 2024
Jul 4, 2023
Oct 14, 2022
May 6, 2024
Nov 2, 2022
May 28, 2023
Jan 8, 2025
Nov 17, 2022
Jul 6, 2023
Jul 22, 2024
Feb 23, 2025

Repository files navigation

git-workspaces

Quality Gate Status Known Vulnerabilities

install it

from stable

  • with homebrew (preferred)
brew tap viqueen/labset
brew install git-workspaces
  • with npm (not recommended)
npm install @labset/git-workspaces -g

from source

git clone https://github.com/viqueen/git-workspaces.git
cd git-workspace
npm install
npm link

use it

working with branches

  • list recent git branches that you've interacted with locally, select one to check it out
git recent

git recent example

  • list merged git branches that you still have locally, multi select the ones you want to delete
git merged
git merged origin/master

git merged example

  • list squashed git branches that you still have locally, multi select the ones you want to delete
git squashed
git squashed origin/master
  • list recent branches that you've interacted with, multi select the ones you want to delete
git tidy

setup git workspaces

  • start by some configuration
git workspace-config

it will add the following git global config entries

git.workspaces.root                     # where you want all your workspaces to be
git.workspaces.default                  # your default workspace, i.e open-source vs work
git.workspaces.github.username          # your github username
git.workspaces.github.personal.token    # your github personal access token
  • add a repo to your workspace
git workspace-add <urlConnection>         # adds to default workspace
git workspace-add <urlConnect> -w <name>  # adds to workspace with provided name
  • view your workspace
git workspace             # describes default workspace
git workspace -w <name>   # describes workspace with provided name
  • clone your entire workspace
git workspace-clone
git workspace-clone -w <name>
  • sync workspace with GitHub, it requires GitHub username and token to be set when working with private repos
git sync-github                               # logged in user repos
git sync-github --user <namespace>
git sync-github --org <namespace>
git sync-github --org <namespace> --archived  # include archived
git sync-github --user <namespace> --forked   # include forked
  • sync workspace with Bitbucket Cloud, it requires Bitbucket username and token to be configured
git sync-bitbucket --namespace <namespace>
  • execute a script across your git workspace
git workspace-exec <script-file> [args...]