d is for organization of source files. It organizes things like this ~/src/github.com/[owner]/[repo] and allows easy navigation and cloning in this format.
➜ d
usage:
d <command> [options]
commands:
cd <target> navigate
clone <target> clone repo
open pr open pr on github
tclone [-name <name>] create a temp working clone (optional name for branch/dir)
tclone list list all temp working dirs (paths)
create -am <message> create a stacked branch and commit all changes
squash squash current branch commits into one and restack children
submit push current branch to origin (hooks skipped, lease-protected force)
sync fetch + fast-forward trunk and restack all stack branches
continue resume a sync restack after resolving conflicts
options:
-v verbose output
Only works for zsh for now because that's what I use. Requires HOME env variable.
./scripts/install.sh
source ~/.zshrc <- reload shell
This project targets Zig 0.16.0, the stable toolchain specified in
build.zig.zon. Install it from the official Zig downloads,
then verify it with:
zig version
zig build test
zig build fmt
zig build --release=[small/fast]Build debug with per-git-command and total command timings (stderr):
zig build
Each git subprocess and the overall d <command> invocation print [timing] lines.
Use zig build run -- <args> to run from source. The default build is Debug;
--release=small produces the compact binary used for installation.