Ecosyste.ms: Awesome
An open API service indexing awesome lists of open source software.
https://github.com/bkuhlmann/dotfiles
Shell scripts for applying default settings to UNIX-based operating systems.
https://github.com/bkuhlmann/dotfiles
bash dotfiles shell
Last synced: about 3 hours ago
JSON representation
Shell scripts for applying default settings to UNIX-based operating systems.
- Host: GitHub
- URL: https://github.com/bkuhlmann/dotfiles
- Owner: bkuhlmann
- License: other
- Created: 2011-07-16T23:28:39.000Z (over 13 years ago)
- Default Branch: main
- Last Pushed: 2024-11-06T01:41:47.000Z (2 days ago)
- Last Synced: 2024-11-06T02:35:29.705Z (2 days ago)
- Topics: bash, dotfiles, shell
- Language: Shell
- Homepage: https://alchemists.io/projects/dotfiles
- Size: 2.8 MB
- Stars: 153
- Watchers: 8
- Forks: 24
- Open Issues: 0
-
Metadata Files:
- Readme: README.adoc
- Funding: .github/FUNDING.yml
- License: LICENSE.adoc
- Citation: CITATION.cff
Awesome Lists containing this project
README
:toc: macro
:toclevels: 5
:figure-caption!:= Dotfiles
These dotfiles are a collection shell scripts for applying default settings to UNIX-based operating
systems. They include useful shortcuts, performance augmentation, and advanced practices that --
even if you don't apply to your own dotfiles -- should be educational for improving your own
practices.By default, these are set to my preferences (namely for macOS) but you can change them to your
liking by editing any of the `.tt` template files in the `home_files` directory. Read on to learn
more.toc::[]
== Features
* Configures link:https://github.com/amazing-print/amazing_print[Amazing Print] (`.aprc`).
* Configures Bash (`.config/bash`, `.bashrc`, `.bash_profile`, and `.inputrc`).
* Configures link:http://bash-completion.alioth.debian.org[Bash Completion].
* Configures link:http://ctags.sourceforge.net[CTags] (`.ctags`).
* Configures link:https://direnv.net[direnv].
* Configures link:https://www.docker.com[Docker].
* Configures link:https://eza.rocks[Eza].
* Configures link:https://github.com/tako8ki/frum[Frum].
* Configures link:https://git-scm.com[Git] (`.config/git`).
* Configures link:https://www.gnupg.org[GPG].
* Configures `.hushlogin`.
* Configures link:https://nodejs.org[Node.js].
* Configures link:https://www.npmjs.org[NPM] (`.npmrc`).
* Configures link:https://www.postgresql.org[PostgreSQL] (`.psqlrc`).
* Configures link:https://voormedia.github.io/rails-erd[Rails ERD] (`.erdconfig`).
* Configures link:https://rspec.info[RSpec] (`.rspec`).
* Configures link:https://www.ruby-lang.org[Ruby] (`.ruby-version` and `.irbrc`).
* Configures link:https://github.com/bbatsov/rubocop[Rubocop] (`.rubocop.yml`).
* Configures link:https://www.rust-lang.org[Rust].
* Configures link:https://github.com/ggreer/the_silver_searcher[Silver Surfer] (`.agignore`).
* Configures link:https://www.sublimetext.com[Sublime Text].
* Configures link:https://www.vim.org[Vim] (`.vimrc`).
* Configures link:https://www.terraform.io[Terraform].
* Configures link:https://github.com/ajeetdsouza/zoxide[Zoxide].== Requirements
. link:https://alchemists.io/projects/mac_os-config[macOS Configuration]
== Setup
To install, run:
[source,bash]
----
git clone https://github.com/bkuhlmann/dotfiles.git
cd dotfiles
git checkout 54.6.1
----== Upgrade
When upgrading to a new version, run the following:
. Run: `bin/run l`. Links new files. If not using linked files, then run `bin/run d` and `bin/run i`
instead.
. Run: `bin/run c`. Displays file differences, if any. Usually, this will be excluded files.
. Run: `exec $SHELL`. Updates current shell with the above changes.== Usage
Edit any of the `.tt` (template) and/or `.command` (command) files in the `home_files` directory as
you see fit. Then open a terminal window and execute the following command to install:[source,bash]
----
cd dotfiles
bin/run
----Executing the `bin/run` script will present the following options:
....
s: Show managed dotfiles.
i: Install dotfiles (existing files are skipped).
l: Link dotfiles to this project (interactive per file, excludes: env.sh and .gitconfig).
c: Check for differences between $HOME files and this project's files.
d: Delete dotfiles (interactive per file, excludes: env.sh and .gitconfig).
q: Quit/Exit.
....The options prompt can be skipped by passing the desired option directly to the `bin/run` script.
For example, executing `bin/run s` will show all managed dotfiles by this project.After install, the following files will require manual updating:
* `.bash/env.sh`: Add secret/machine-specific environment settings (if any).
* `.gitconfig`: Replace all `` values for name, email, and signingKey within the `[user]`
section with your own credentials.The reason the above two files are not managed by this project -- especially via symbolic links --
is because sensitive data is usually stored in these files and you don't want this information
accidentally checked into a source code repository or shared via other means.=== Aliases
==== https://asciidoctor.org:[ASCII Doctor]
....
ad = "asciidoctor"
....==== https://asciinema.org:[asciinema]
....
cin = "asciinema"
cina = "asciinema rec --append"
cinc = "asciinema cat"
cine = "asciinema_plus -e"
cinp = "asciinema play"
cinu = "asciinema upload"
....==== https://www.gnu.org/software/bash:[Bash]
....
bashe = '$EDITOR $HOME/.config/bash/environment.sh'
bashs = 'exec $SHELL'
....==== https://bundler.io:[Bundler]
....
ba = "bundle add"
bb = "bundle binstubs"
bce = '$EDITOR $BUNDLE_USER_CONFIG'
bch = "rm -f Gemfile.lock; bundle check"
bd = "bundle doctor"
be = "bundle exec"
bi = "bundle install"
blo = 'bundle list --paths | fzf | xargs $EDITOR'
bo = "bundle outdated --only-explicit"
br = "bundle remove"
bu = "bundle update"
....==== https://crystal-lang.org:[Crystal]
....
cr = "crystal"
crb = "crystal build"
crd = "crystal docs"
crdo = "open docs/index.html"
crr = "crystal run"
crs = "crystal spec"
....==== https://direnv.net:[direnv]
....
denva = "direnv allow"
denvr = "direnv reload"
denvs = "direnv status"
....==== https://www.docker.com:[Docker]
....
dr = "docker"
drb = "docker build"
drc = "docker-compose"
drcb = "docker-compose build"
drcr = "docker-compose run --rm"
drcu = "docker-compose up"
drd = "docker system prune --force && docker buildx prune --force"
dri = "docker images"
drp = "docker ps --all"
drt = "docker tag"
....==== http://duti.org:[duti]
....
dutia = 'duti $HOME/.config/duti/configuration.duti'
....==== https://eza.rocks:[Eza]
....
x1 = "eza --oneline --all --group-directories-first"
x = "eza --all --all --long --header --group --group-directories-first --time-style long-iso --git"
xt = "eza --all --group-directories-first --ignore-glob '*.git' --git-ignore --tree"
....==== https://github.com/Schniz/fnm:[Fast Node Manager]
....
js = "fnm"
jsd = "fnm default"
jse = "fnm env"
jsi = "fnm install"
jsl = "fnm list"
jss = "fnm use"
jsu = "fnm uninstall"
....==== https://github.com/TaKO8Ki/frum:[Frum]
....
rb = "frum"
rbd = "frum global"
rbl = "frum versions"
rbs = "frum local"
rbu = "frum uninstall"
....==== https://github.com/junegunn/fzf:[Fuzzy Finder]
....
ff = "_fzf_preview_and_select | xargs -0 -o \$EDITOR"
....==== https://alchemists.io/projects/gemsmith:[Gemsmith]
....
gsb = "gemsmith build --name"
gsc = "gemsmith config --edit"
gse = "gemsmith --edit"
gsi = "gemsmith --install"
gsp = "gemsmith --publish"
gsq = "rake quality"
gsv = "gemsmith --view"
....==== General
....
... = "cd ../.."
.. = "cd .."
c = "clear"
cat = "bat --theme DarkNeon"
cdb = "cd -"
du = "dust"
h = "history"
l1 = "ls -A1 | _copy_and_print '\n'"
l = "ls -alhT"
o = "open"
p = 'pwd | tr -d "\r\n" | _copy_and_print'
pss = "pgrep -i -l -f"
rmde = "find . -type d -empty -not -path '*.git*' -delete"
....==== https://git-scm.com:[Git]
....
gall = "git add --all ."
gamend = "git commit --amend"
gamenda = "git commit --amend --all --no-edit"
gamendh = "git commit --amend --no-edit"
gap = "git ls-files --modified | _fzf_preview_and_select | xargs -0 -o -t git add --patch"
gashc = "git stash clear"
gatch = "git commit --patch"
gau = "git add --update"
gb = "git switch"
gbb = "git switch -"
gbe = "git branch --edit-description"
gbi = "git bisect"
gbv = 'git config get branch.$(_git_branch_name).description'
gbib = "git bisect bad"
gbig = "git bisect good"
gbih = "git bisect help"
gbil = "git bisect log"
gbir = "git bisect reset"
gbire = "git bisect replay"
gbis = "git bisect start"
gbisk = "git bisect skip"
gbiv = 'git bisect visualize --reverse --pretty=format:"$(_git_log_line_format)"'
gbm = 'git switch $(_git_branch_default)'
gbn = "_git_branch_name | _copy_and_print"
gbt = "git show-branch --topics"
gca = "git commit --all"
gcam = "git commit --all --message"
gcd = "git config list --show-origin --show-scope | fzf"
gce = 'cat .git/COMMIT_EDITMSG | pbcopy'
gcge = "git config edit --global"
gch = "git checkout"
gcl = "git clone"
gcle = "git config edit --local"
gcm = "git commit --message"
gco = "git commit"
gcp = "git cherry-pick"
gcpa = "git cherry-pick --abort"
gcpc = "git cherry-pick --continue"
gcps = "git cherry-pick --skip"
gcs = "git commit --squash"
gd = "git diff"
gdc = "git diff --cached"
gdm = 'git diff origin/$(_git_branch_default)'
gdo = 'git diff --name-only | uniq | xargs $EDITOR'
gdt = "git difftool"
gdtc = "git difftool --cached"
gdtm = 'git difftool origin/$(_git_branch_default)'
gdw = "git diff --color-words"
gel = "git rm"
gelc = "git rm --cached"
ges = "git diff --name-only --cached | _fzf_preview_and_select | xargs -0 -o -t git reset"
gf = "git fetch"
gg = "git grep"
gget = "git config get"
ggp = "git config --global --get-regexp includeif | awk '{print \$NF}' | fzf | xargs \$EDITOR"
gi = "git init"
gl = 'git log --graph --pretty=format:"$(_git_log_line_format)"'
glame = "git blame -M -C"
glean = "git clean -d --force"
glf = 'git fetch && git log --reverse --no-merges --pretty=format:"$(_git_log_line_format)" ..@{upstream}'
glh = "_git_sha | _copy_and_print"
gna = "git notes add"
gnd = "git notes remove"
gne = "git notes edit"
gnl = "git notes list"
gnp = "git notes prune"
gns = "git notes show"
gp = "git push"
gpf = "git push --force-with-lease"
gpn = "git push --no-verify"
gpu = "git pull"
gpuo = "git pull origin"
gpuom = 'git pull origin $(_git_branch_default)'
gpuum = 'git pull upstream $(_git_branch_default)'
gr = "git ls-files --modified | _fzf_preview_and_select | xargs -0 -o -t git restore"
grba = "git rebase --abort"
grbc = "git rebase --continue"
grbd = "git rebase --show-current-patch"
grbo = "git rebase --onto"
grbs = "git rebase --skip"
grbt = "git rebase --edit-todo"
grev = "git revert --no-commit"
grl = "git reflog --relative-date"
grom = 'git fetch --all && git reset --hard origin/$(_git_branch_default)' # Reset local branch to origin/main branch. UNRECOVERABLE!
grr = "git rerere"
gset = "git config set"
gst = "git status --short --branch"
gt = "git tag"
gte = 'cat .git/TAG_EDITMSG | pbcopy'
gtp = "git push --tags"
gtv = "git tag --verify"
guthors = "git shortlog --numbered --summary --group=author --group=trailer:Co-Authored-By"
gwl = "git worktree list"
gwp = "git worktree prune"
....==== https://alchemists.io/projects/hanamismith:[Hanamismith]
....
hsb = "hanamismith build --name"
hse = "hanamismith config --edit"
hsh = "hanamismith --help"
....==== https://brew.sh:[Homebrew]
....
hb = "brew"
hbd = "brew doctor"
hbi = "brew install"
hbin = "brew info"
hbl = "brew list --versions | fzf"
hblc = "brew list --casks --versions | fzf"
hblf = "brew list --formulae --versions | fzf"
hbp = "brew pin"
hbpu = "brew unpin"
hbr = "brew reinstall"
hbs = "brew search"
hbsu = "brew update && brew upgrade && brew cleanup"
hbu = "brew uninstall"
hbug = "brew update && brew upgrade"
....==== https://trac.webkit.org/wiki/JSC:[JavaScript Core]
....
jsc = "/System/Library/Frameworks/JavaScriptCore.framework/Versions/Current/Helpers/jsc"
....==== https://jless.io:[jless]
....
jlr = "jless --mode line"
....==== https://alchemists.io/projects/milestoner:[Milestoner]
....
ms = "milestoner"
mse = "milestoner config --edit"
msp = "milestoner --publish"
....==== https://en.wikipedia.org/wiki/Network_Computer:[Network]
....
dnsi = "scutil --dns"
dnss = "sudo dscacheutil -statistics"
ipa = 'curl --silent checkip.dyndns.org | rg --only-matching "[0-9\.]+" | _copy_and_print'
key = "open /Applications/Utilities/Keychain\ Access.app"
ping = "gping"
sshe = '$EDITOR $HOME/.ssh/config'
top = "htop"
....==== https://www.npmjs.com:[NPM]
....
na = "npm login"
nb = "npm run build"
ni = "npm install"
nid = "npm install --save-dev"
nl = "npm ls"
no = "npm outdated"
np = "npm publish"
nq = "npm run quality"
nt = "npm test"
ntw = "npm run test:watch"
....==== https://cocoatech.com:[Path Finder]
....
pfo = 'open -a "Path Finder.app" "$PWD"'
....==== https://www.postgresql.org:[PostgreSQL]
....
pgi = 'initdb "$HOME/.pgenv/pgsql/data"'
pgsp = "pgenv stop"
pgst = "pgenv start"
....==== https://redis.io:[Redis]
....
redc = "redis-cli"
reds = 'redis-server $HOMEBREW_PREFIX/etc/redis.conf &'
....==== https://github.com/AlexB52/retest[Retest]
....
rt = "NO_COVERAGE=true retest"
....==== https://github.com/BurntSushi/ripgrep:[ripgrep]
....
rgf = "rg --files --glob"
....==== https://rspec.info:[RSpec]
....
rsf = "NO_COVERAGE=true rspec spec --only-failures"
rsn = "NO_COVERAGE=true rspec spec --next-failure"
rso = "NO_COVERAGE=true rspec spec --dry-run --format doc > tmp/rspec-overview.txt && e tmp/rspec-overview.txt"
rss = "rspec"
rst = "NO_COVERAGE=true rspec spec --tag"
....==== https://github.com/bbatsov/rubocop:[Rubocop]
....
cop = "rubocop --parallel --display-cop-names --display-style-guide"
copc = "rubocop --auto-gen-config"
copf = "rubocop --autocorrect"
copfo = "rubocop --autocorrect --only"
copo = "rubocop --display-cop-names --only"
cops = "rubocop --show-cops"
copu = "rubocop --autocorrect-all"
....==== https://www.ruby-lang.org:[Ruby]
....
rbbe = '$EDITOR $HOME/Engineering/Misc/benchmark'
rbbr = '$HOME/Engineering/Misc/benchmark'
rbde = '$EDITOR $HOME/Engineering/Misc/demo'
rbdr = '$HOME/Engineering/Misc/demo'
rbdw = 'viddy $HOME/Engineering/Misc/demo'
....==== https://rubyonrails.org:[Ruby on Rails]
....
railsb = "rails console --sandbox"
railse = "EDITOR = 'sublime --wait' rails credentials:edit"
....==== https://rubygems.org:[RubyGems]
....
gemc = "gem cleanup"
gemcli = "rg 'spec\.executables' --no-messages --max-depth=2 --files-with-matches gemspec . | xargs basename | cut -d. -f1 | sort | _copy_and_print '\n'"
gemcr = '$EDITOR $HOME/.gem/credentials'
gemb = "gem build"
geme = "gem environment"
gemi = "gem install"
geml = "gem list"
gemp = "gem pristine"
gemu = "gem uninstall"
gemuc = "gem update --system && gem update && gem cleanup"
....==== https://alchemists.io/projects/rubysmith:[Rubysmith]
....
rbb = "rubysmith build --name"
rbe = "rubysmith config --edit"
rbh = "rubysmith --help"
....==== https://github.com/colszowka/simplecov:[SimpleCov]
....
cov = "open coverage/index.html"
....==== https://www.sublimetext.com:[Sublime Text]
....
e = "sublime"
....==== https://www.gnu.org/software/tar/tar.html:[Tar]
....
bzc = "tar --use-compress-program=pigz --create --preserve-permissions --bzip2 --verbose --file"
bzx = "tar --extract --bzip2 --verbose --file"
....==== https://www.terraform.io:[Terraform]
....
tf = "terraform"
tfa = "noti --title 'Terraform Apply' terraform apply"
tfc = "terraform console"
tff = "terraform fmt -recursive"
tfg = "terraform graph | dot -Tsvg > tmp/graph.svg && open -a 'Firefox.app' tmp/graph.svg"
tfi = "terraform init"
tfo = "terraform output"
tfp = "noti --title 'Terraform Plan' terraform plan"
tft = "terraform taint"
tfu = "terraform untaint"
tfup = "terraform init -upgrade"
tfv = "terraform validate"
....==== http://tmux.sourceforge.net:[tmux]
....
tsa = "tmux attach-session -t"
tsk = "tmux kill-session -t"
tsl = "tmux list-sessions"
tsr = "tmux rename-session -t"
....==== https://gitlab.com/procps-ng/procps:[Watch]
....
wp = "watch --interval 1 --color --beep --exec"
....=== Functions
==== link:https://asciidoctor.org[ASCII Doctor]
....
ado = ASCII Doctor Open - Transforms ASCII Doc into HTML and opens in default browser.
....==== https://asciinema.org:[asciinema]
....
cinr = asciinema Record - Create new asciinema recording.
....==== https://bundler.io:[Bundler]
....
bca = Bundler Clean (all) - Clean projects of gem artifacts.
bcg = Bundler Config Gem - Configure Bundler to use local gem for development purposes.
bj = Bundler Jobs - Answer maximum Bundler job limit for current machine or automatically set it.
bl = Bundle List - List gem dependencies for project and copy them to clipboard.
boa = Bundle Outdated (all) - Answer outdated gems for projects in current directory.
bua = Bundle Update (all) - Update gems for projects in current directory.
....==== https://alchemists.io/projects/caliber:[Code Quality]
....
cqa = Code Quality (all) - Run code quality tasks for projects in current directory.
cqi = Code Quality Issues - List all source files affected by code quality issues.
....==== https://curl.se:[curl]
....
curld = Curl Diagnostics - Curl with diagnostic information for request.
curli = Curl Inspect - Inspect remote file with default editor.
....==== Dotfiles
....
dots = Dotfiles - Learn about dotfile aliases, functions, etc.
....==== https://github.com/Schniz/fnm:[Fast Node Manager]
....
jsf = JavaScript Force - Installs new Node version as default and removes previous version.
jsua = JavaScript Upgrade (all) - Upgrade JavaScript projects in current directory to new JavaScript version.
....==== General
....
cype = Colorized Type - Identical to "type" system command but with Bat support.
eup = Environment Update - Update environment with latest software.
iso = ISO - Builds an ISO image from mounted volume.
kilp = Kill Process - Kill errant/undesired process.
t2s = Tab to Space - Convert file from tab to space indentation.
....==== https://git-scm.com:[Git]
....
ga = Git Add - Interactively adds modified/untracked files.
gafe = Git Safe - Marks repository as safe for auto-loading project's `bin` path.
galla = Git Add (all) - Apply file changes (including new files) for projects in current directory.
gash = Git Stash - Creates stash of all changes.
gasha = Git Stash (all) - Answer stash count for projects in current directory.
gashd = Git Stash Drop - Drop stash or prompt for stash to drop.
gashl = Git Stash List - List stashes.
gashp = Git Stash Pop - Pop stash or prompt for stash to pop.
gashs = Git Stash Show - Show stash or prompt for stash to show.
gasht = Git Stash Stage - Creates stash of staged work.
gbc = Git Branch Create - Create and switch to branch.
gbca = Git Branch Create (all) - Create and switch to branch for projects in current directory.
gbd = Git Branch Delete - Interactively delete local and/or remote branch.
gbdl = Git Branch Delete (local) - Delete local branch.
gbdm = Git Branch Delete (merged) - Delete remote and local merged branches.
gbdr = Git Branch Delete (remote) - Delete remote branch.
gbf = Git Branch Facsimile - Duplicate current branch with new name and switch to it.
gbl = Git Branch List - List local and remote branch details.
gbla = Git Branch List (all) - List current branch for projects in current directory.
gblo = Git Branch List (owner) - List branches owned by current author or supplied author.
gbna = Git Branch Number (all) - Answer number of branches for projects in current directory.
gbr = Git Branch Rename - Rename current branch.
gbs = Git Branch Switch - Switch between branches.
gbsa = Git Branch Switch (all) - Switch to given branch for projects in current directory.
gcaa = Git Commit (all) - Commit changes (unstaged and staged) for projects in current directory.
gcap = Git Commit and Push (all) - Commit and push changes for projects in current directory.
gcb = Git Commit Breakpoint - Create a breakpoint (empty) commit to denote related commits in a feature branch.
gcf = Git Commit Fixup - Create fixup commit with optional amend or reword support.
gcff = Git Commit Fix (file) - Create commit fix for file (ignores previous fixups).
gcfi = Git Commit Fix (interactive) - Select which commit to fix within current feature branch.
gdf = Git Diff Files - List all added/changed files on current branch.
gday = Git Day - Answer summarized list of current day activity for projects in current directory.
gesh = Git Reset Hard - Reset to HEAD, destroying all untracked, staged, and unstaged changes. UNRECOVERABLE!
gesha = Git Reset Hard (all) - Destroy all untracked, staged, and unstaged changes for all projects in current directory. UNRECOVERABLE!
gess = Git Reset Soft - Resets previous commit (default), resets back to number of commits, or resets to specific commit.
ggeta = Git Get Config Value (all) - Answer key value for projects in current directory.
gga = Git Guise Add - Adds Git configuration and associated profile.
ggd = Git Guise Delete - Deletes Git configuration and associated profile.
ghow = Git Show - Show commit details with optional diff support.
ghurn = Git Churn - Answer commit churn for project files (sorted highest to lowest).
gia = Git Init (all) - Initialize/re-initialize repositories in current directory.
gile = Git File - Show file details for a specific commit (with optional diff support).
gim = Git Import - Import remote repository commits into current local branch.
gince = Git Since - Answer summarized list of activity since date/time for projects in current directory.
ginfo = Git Info - Print repository overview information.
gistory = Git File History - View file commit history (with optional diff support).
glameh = Git Blame History - View commit history for file and/or lines (with optional diff support).
gld = Git Log Details - List default or feature branch commit details.
gleana = Git Clean (all) - Clean uncommitted files from all projects in current directory.
glear = Git Clear - Clear repository for packaging/shipping purposes.
glg = Git Log Grep - Grep Git log by query.
gli = Git Log (interactive) - List default or feature branch commits with commit show and/or diff support.
gls = Git Log Search - Search Git log by query.
glz = Git Log Fuzzy - Fuzzy find commits in the log.
gma = Git Merge (all) - Merges, deletes, and pushes feature branch.
gmonth = Git Month - Answer summarized list of current month activity for projects in current directory.
gmpa = Git Amend Push (all) - Amend all changes and force push with lease for projects in current directory.
gnai = Git Notes Add (interactive) - Select which commit note to add for current feature branch.
gnei = Git Notes Edit (interactive) - Select which commit note to edit for current feature branch.
gndi = Git Notes Remove (interactive) - Select which commit note to remove for current feature branch.
gnri = Git Notes Show (interactive) - Select which commit note to show for current feature branch.
gount = Git Commit Count - Answer total number of commits for current project.
gpa = Git Push (all) - Push changes for projects in current directory.
gpua = Git Pull (all) - Pull new changes from remote branch for projects in current directory.
gra = Git Remote Add - Add and track a remote repository.
grbi = Git Rebase (interactive) - Rebase commits, interactively.
grbq = Git Rebase (quick) - Rebase commits, quickly. Identical to `grbi` function but skips editor.
groot = Git Root - Change to repository root directory regardless of current depth.
gseta = Git Set Config Value (all) - Set key value for projects in current directory.
gsta = Git Status (all) - Answer status of projects with uncommited/unpushed changes.
gstats = Git Statistics - Answer statistics for current project.
gstatsa = Git Statistics (all) - Answer statistics for all projects in current directory.
gsup = Git Standup - Answer summarized list of activity since yesterday for projects in current directory.
gtd = Git Tag Delete - Delete local and remote tag (if found).
gtl = Git Tag List - List tags in tabular form.
gtr = Git Tag Rebuild - Rebuild a previous tag. WARNING: Use with caution, especially if previously published.
gtail = Git Tail - Answer commit history since last tag for current project (copies results to clipboard).
gtaila = Git Tail (all) - Answer commit history count since last tag for projects in current directory.
gucca = Git Upstream Commit Count (all) - Answer upstream commit count since last pull for projects in current directory.
guke = Git Nuke - Permanently destroy and erase a file from history. UNRECOVERABLE!
garb = Git Garbage Collect - Garbage collect dangling commits for projects in current directory.
gunseta = Git Unset (all) - Unset key value for projects in current directory.
gup = Git Update - Fetch commits, prune untracked references, review each commit (optional, with diff), and pull (optional).
guthorc = Git Author Contributions - Answers total lines added/removed by author for repo (with emphasis on deletion).
guthorsa = Git Authors (all) - Answer author commit activity per project (ranked highest to lowest).
gvac = Git Verify and Clean - Verify and clean objects for current project.
gvaca = Git Verify and Clean (all) - Verify and clean objects for projects in current directory.
gwa = Git Worktree Add - Add and switch to new worktree.
gwd = Git Worktree Delete - Deletes current Git worktree.
gweek = Git Week - Answer summarized list of current week activity for projects in current directory.
gync = Git Sync - Syncs up remote changes and deletes pruned/merged branches.
....==== https://github.com:[GitHub]
....
gh = GitHub - View GitHub details for current project.
ghpra = GitHub Pull Request (all) - Open pull requests for all projects in current directory (non-default branches only).
....==== https://en.wikipedia.org/wiki/Less_(Unix):[less]
....
lessi = Less Interactive - Inspect file, interactively.
....==== https://github.com/pivotal/LicenseFinder:[License Finder]
....
licensea = License Finder (add) - Adds library to global list.
licensei = License Finder (include) - Include license in global list.
....==== https://people.freebsd.org/~abe:[lsof]
....
port = Port - List file activity on given port.
....==== https://marked2app.com:[Marked 2]
....
mo = Marked Open - Opens Markdown file in Marked.
....==== https://alchemists.io/projects/milestoner:[Milestoner]
....
msa = Milestoner (ASCII Doc) - Build milestone(s) in ASCII Doc format.
msf = Milestoner (feed) - Build milestone(s) in feed (atom) format.
msm = Milestoner (Markdown) - Build milestone(s) in Markdown format.
mss = Milestoner (stream) - Build milestone(s) in stream format.
msw = Milestoner (web) - Build milestone(s) in web format.
....==== https://jedisct1.github.io/minisign:[Minisign]
....
sigf = Minisign Sign File - Sign a file.
sigg = Minisign Generate - Generate private and public key pair.
sigv = Minisign Verify File - Verify signed file.
....==== https://en.wikipedia.org/wiki/Network_Computer:[Network]
....
dnsf = DNS Flush - Flush DNS cache.
....==== https://openssl.org:[OpenSSL]
....
sslc = SSL Certificate Creation - Create SSL certificate.
....==== https://github.com/DarthSim/overmind:[Overmind]
....
omc = Overmind Connect - Connect to running process.
omr = Overmind Restart - Restart running process.
oms = Overmind Start - Start processes.
....==== https://www.postgresql.org:[PostgreSQL]
....
pgt = PostgreSQL Template - Edit PostgreSQL template.
pguc = PostgreSQL User Create - Create PostgreSQL user.
pgud = PostgreSQL User Drop - Drop PostgreSQL user.
....==== https://github.com/ruby/rake:[Rake]
....
rakea = Rake (all) - Run default Rake tasks for projects in current directory.
....==== https://rspec.info:[RSpec]
....
rsall = RSpec (all) - Run RSpec for projects in current directory.
rsb = RSpec Bisect - Debug RSpec failure using bisect to automatically determine the root cause.
rsd = RSpec Debug - Debug intermittent RSpec failure(s) by running spec(s) until failure is detected.
rsp = RSpec Profile - Runs RSpec specs with profiling enabled.
....==== https://docs.rubocop.org:[Rubocop]
....
copa = Rubocop (all) - Run Rubocop for all projects in current directory.
....==== https://www.ruby-lang.org:[Ruby]
....
rbi = Ruby Install - Install a specific version with safe defaults.
reb = Ruby Web Server - Serve web content from current directory via WEBrick.
rbw = Ruby Which - Locate path to current Ruby program.
rbua = Ruby Upgrade (all) - Upgrade Ruby projects in current directory to new Ruby version.
rbva = Ruby Version (all) - Show current Ruby version for all projects in current directory.
....==== https://rubygems.org:[Ruby Gems]
....
gemd = Gem Dependencies - Answers dependencies for a gem.
gemdep = Gem Dependency Search - Finds a gem defined within a Gemfile or a gemspec.
....==== https://rubyonrails.org:[Ruby on Rails]
....
railsn = Ruby on Rails New - Create new Rails application from selected option.
....==== https://github.com/colszowka/simplecov:[SimpleCov]
....
cova = RSpec (all) - Run RSpec for projects in current directory.
....=== Git Hooks
....
brakeman_check = Brakeman Check - Scan Rails project for security vulnerabilities.
bundler_gemfile_path = Bundler Gemfile Path - Detect gem path statements.
bundler_audit_check = Bundler Audit Check - Scans gem dependencies for security vulnerabilities.
comment_totals = Comment Totals - Print project comment totals.
ctags_rebuild = CTags Rebuild - Rebuild project .tags file.
dotenv_check = Dotenv Linter - Scan environment files for consistent style and security issues.
git_lint_check = Git Lint Check - Enforce consistent Git commits.
git_trailer_cleaner = Git Trailer Cleaner - Remove unused/empty Git commit body trailers.
git_add_trailers = Git Add Trailers - Dynamically add trailers based on branch description.
java_script_debugger = JavaScript Debugger - Detect JavaScript debug statements.
java_script_console = JavaScript Console - Detect JavaScript console statements.
java_script_alert = JavaScript Alert - Detect JavaScript alert statements.
license_finder_check = License Finder Check - Scan project for valid licenses.
osv_check = Open Source Vulnerability (OSV) Check - Scan Ruby dependencies for vulnerabilities.
reek_branch_check = Reek Branch Check - Scan Ruby code -- feature branch only -- for poor style choices.
reek_stage_check = Reek Stage Check - Scan Ruby code -- staged files only -- for poor style choices.
rspec_dotfile = RSpec Dotfile - Detect RSpec dotfile.
rspec_order = RSpec Order - Detect RSpec ordered specs.
rubocop_branch_check = RuboCop Branch Check - Scan Ruby code -- feature branch only -- for poor style choices.
rubocop_stage_check = RuboCop Stage Check - Scan Ruby code -- staged files only -- for poor style choices.
....== Development
To contribute, run:
[source,bash]
----
git clone https://github.com/bkuhlmann/dotfiles.git
cd dotfiles
----== link:https://alchemists.io/policies/license[License]
== link:https://alchemists.io/policies/security[Security]
== link:https://alchemists.io/policies/code_of_conduct[Code of Conduct]
== link:https://alchemists.io/policies/contributions[Contributions]
== link:https://alchemists.io/policies/developer_certificate_of_origin[Developer Certificate of Origin]
== link:https://alchemists.io/projects/dotfiles/versions[Versions]
== link:https://alchemists.io/community[Community]
== Credits
Engineered by link:https://alchemists.io/team/brooke_kuhlmann[Brooke Kuhlmann].