Documentation ¶
Overview ¶
Git Town - a high-level CLI for Git
Git Town adds Git commands that make software development more efficient by keeping Git branches better in sync with each other. This reduces merge conflicts and the number of Git commands you need to run.
Directories ¶
Path | Synopsis |
---|---|
src
|
|
browser
Package browser allows interacting with the default browser on the user's machine.
|
Package browser allows interacting with the default browser on the user's machine. |
cli
Package cli provides tooling to interact with the command-line environment that Git Town runs in.
|
Package cli provides tooling to interact with the command-line environment that Git Town runs in. |
cli/dialog
Package dialog allows the user to enter configuration data via CLI dialogs and prompts.
|
Package dialog allows the user to enter configuration data via CLI dialogs and prompts. |
cli/flags
Package flags provides helper methods for working with Cobra flags in a way where Go's usage checker (which produces compilation errors for unused variables) enforces that the programmer didn't forget to define or read the flag.
|
Package flags provides helper methods for working with Cobra flags in a way where Go's usage checker (which produces compilation errors for unused variables) enforces that the programmer didn't forget to define or read the flag. |
cli/format
Package format formats data for printing to the CLI.
|
Package format formats data for printing to the CLI. |
cli/io
Package io provides low-level access to operating system primitives in a way that works across different operating systems.
|
Package io provides low-level access to operating system primitives in a way that works across different operating systems. |
cli/log
Package log provides a mechanism for operations that don't produce CLI output naturally to log their activity to the CLI anyways.
|
Package log provides a mechanism for operations that don't produce CLI output naturally to log their activity to the CLI anyways. |
cli/print
Package print outputs complex data structures to the CLI.
|
Package print outputs complex data structures to the CLI. |
cmd
Package cmd defines the Git Town commands.
|
Package cmd defines the Git Town commands. |
config
Package config provides facilities to read and write the Git Town configuration.
|
Package config provides facilities to read and write the Git Town configuration. |
domain
Package domain provides strong type support for modeling the domain of Git Town.
|
Package domain provides strong type support for modeling the domain of Git Town. |
execute
Package execute provides infrastructure to run Git Town that is shared between all Git Town commands.
|
Package execute provides infrastructure to run Git Town that is shared between all Git Town commands. |
git
Package git runs Git commands in a controlled and typesafe way.
|
Package git runs Git commands in a controlled and typesafe way. |
git/giturl
Package giturl provides facilities to work with the special URL formats used in Git remotes.
|
Package giturl provides facilities to work with the special URL formats used in Git remotes. |
gohacks
Package gohacks implements all the small things that are needed during programming but not present in Go or its standard library.
|
Package gohacks implements all the small things that are needed during programming but not present in Go or its standard library. |
gohacks/cache
Package cache provides infrastructure to cache things in memory.
|
Package cache provides infrastructure to cache things in memory. |
gohacks/slice
Package slice provides generic functions to work with slices.
|
Package slice provides generic functions to work with slices. |
gohacks/stringslice
Package stringslice provides helper functions for working with slices of strings.
|
Package stringslice provides helper functions for working with slices of strings. |
hosting
Package hosting provides support for interacting with code hosting services.
|
Package hosting provides support for interacting with code hosting services. |
subshell
Package subshell provides facilities to execute CLI commands in subshells.
|
Package subshell provides facilities to execute CLI commands in subshells. |
validate
Package validate provides functionality to validate the status of Git repositories.
|
Package validate provides functionality to validate the status of Git repositories. |
vm/interpreter
Package runvm implements the virtual machine for executing steps of Git Town commands.
|
Package runvm implements the virtual machine for executing steps of Git Town commands. |
vm/opcode
Package opcode defines the individual operations that the Git Town VM can execute.
|
Package opcode defines the individual operations that the Git Town VM can execute. |
vm/program
Package steps provides facilities to represent and build collections of steps.
|
Package steps provides facilities to represent and build collections of steps. |
vm/runstate
Package runstate represents the current execution status of a Git Town command.
|
Package runstate represents the current execution status of a Git Town command. |
vm/statefile
Package persistence stores Git Town runstate on disk.
|
Package persistence stores Git Town runstate on disk. |
Package test provides the infrastructure for the end-to-end tests.
|
Package test provides the infrastructure for the end-to-end tests. |
envvars
Package envvars provides helper functions to work with lists of environment variables as provided by `os.Environ`.
|
Package envvars provides helper functions to work with lists of environment variables as provided by `os.Environ`. |
tools
|
|
Click to show internal directories.
Click to hide internal directories.