The hack command ("let's start hacking") creates a new feature branch with the given name off the main branch and brings all uncommitted changes over to it. Before it does that, it syncs the main branch to ensure you develop on top of the current state of the repository.
If the repository contains a remote called
upstream, it also syncs the main
branch with its upstream counterpart. You can control this behavior with the
If push-new-branches is set,
creates a remote tracking branch for the new feature branch. This behavior is
disabled by default to make
git hack run fast. The first run of
will create the remote tracking branch.