Skip to content

Git workflow automation to keep branches in sync and reduce merge conflicts.

License

Notifications You must be signed in to change notification settings

yonasBSD/git-town

 
 

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Git Town logo
end-to-end test status unit test status linters and documentation test status windows tests Go report card status Netlify deploy status

Git Town provides additional Git commands that automate the creation, synchronization, shipping, and cleanup of Git branches. Compatible with all popular Git workflows like Git Flow, GitHub Flow, GitLab Flow, and trunk-based development. Supports mono-repos and stacked changes. Check out this screencast for an introduction.

Basic development commands

  • hack - create a new up-to-date feature branch off the main branch
  • sync - update existing branches, remove shipped branches
  • switch - switch between branches via text UI
  • propose - create a pull or merge request for a feature branch

Stacked changes

  • append - insert a new branch as a child of the current branch
  • diff-parent - show the changes committed to a feature branch
  • prepend - insert a new branch between the current branch and its parent
  • set-parent - update the parent of a branch

Limit branch syncing

  • contribute - add commits to somebody else's feature branch
  • observe - track somebody else's feature branch without contributing to it
  • park - stop syncing one of your feature branches
  • prototype - sync but don't push a branch

Dealing with errors

  • continue - restart the last Git Town command after having resolved conflicts
  • skip - restart the last run Git Town command by skipping the current branch
  • status - displays or resets the current suspended Git Town command
  • undo - undo the most recent Git Town command

Setup and configuration

  • config - display or update your Git Town configuration
  • config setup - run the visual setup assistant
  • offline - start or stop running in offline mode

Advanced development commands

  • compress - squash all commits on feature branches down to a single commit
  • kill - remove a feature branch
  • rename-branch - rename a branch
  • repo - view the repository homepage
  • ship - merge a completed feature branch and remove it

Installation

See the installation and configuration instructions.

Documentation

The Git Town website provides documentation for Git Town users. git town help [command] shows help on the CLI.

Contributing

Found a bug or have an idea for a new feature? Open an issue or send a pull request! Our developer documentation helps you get started.

Stargazers over time

About

Git workflow automation to keep branches in sync and reduce merge conflicts.

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages

  • Go 54.0%
  • Gherkin 45.3%
  • Other 0.7%