An interactive git tool that works with GitHub and Bitbucket Server.
Support for
- Windows
- Linux
- Mac
$ go get -u github.com/tadashi-aikawa/gowl
or
Download a binary from release page.
$ gowl --help
Gowl.
Usage:
gowl get [-s | --shallow] [-f | --force] [-B | --bitbucket-server]
gowl edit [-e=<editor> | --editor=<editor>]
gowl web
gowl list
gowl purge
gowl -h | --help
gowl --version
Options:
-e --editor=<editor> Use editor [default: default]
-s --shallow Use shallow clone
-f --force Force remove and reclone if exists
-B --bitbucket-server Use Bitbucket Server
-h --help Show this screen.
--version Show version.
.gowlconfig
is a TOML file.
root = "Root directory of repositories for gowl"
# ex. C:\\users\\tadashi-aikawa\\.gowl
browser = "Your browser"
# ex. C:\\Program Files (x86)\\Google\\Chrome\\Application\\Chrome.exe
subSpaces = [
"Subspaces that can be used for purposes other than Get 1",
"Subspaces that can be used for purposes other than Get 2",
]
# ex. [
# "C:\\Users\\tadashi-aikawa\\tmp",
# "C:\\Users\\tadashi-aikawa\\works",
# ]
[editors]
default = "code"
vim = "vim"
[github]
token = "your github token"
# If `overrideUser = true`, Add userName and mailAddress to `.git/config` (`user.name` and `user.email`)
overrideUser = true
userName = "your github account name"
mailAddress = "your github email address"
[bitbucketserver]
baseurl = "http://your.bitbucket.server.url"
username = "yourname"
password = "yourpassword"
prefix = "your prefix in gopath (ex: mamansoft/bitbucket)"
useSSH = true
browser = "chrome"
[editors]
default = "code"
[github]
token = "your github token"
This file means...
- Use Google Chrome as browser
- Use VSCode as editor
- Use GitHub only
For example..
gowl get
gowl edit
Gowl uses toml format as a configuration file.
Please check config.go
.
TODO: Definition table
The root directory is determined by the following priority.
root
in.gowlconfig
<GOPATH>/src
<HOME>/.gowlroot
If you use fzf(or peco), the following setting may make you happy!
bash
alias cdg="cd $(gowl list | fzf)"
fish
alias cdg "cd (gowl list | fzf)"
- go >= 1.20
Requirements: Task
Confirm that your branch name is mater. then...
$ task release VERSION=x.y.z