ship - deliver a completed feature branch
git town ship [<branch_name>] [<commit_options>]
Squash-merges the current branch, or
<branch_name> if given,
into the main branch, resulting in linear history on the main branch.
- syncs the main branch
- pulls remote updates for
- merges the main branch into
<branch_name>into the main branch with commit message specified by the user
- pushes the main branch to the remote repository
<branch_name>from the local and remote repositories
Only shipping of direct children of the main branch is allowed. To ship a nested child branch, all ancestor branches have to be shipped or killed.
GitHub Pull Request Integration
If you are using GitHub, this command can squash merge pull requests via the GitHub API. Setup:
- Get a GitHub personal access token with the
reposcope (see how)
git config git-town.github-token XXX(optionally add the
Now anytime you ship a branch with a pull request on GitHub, it will squash merge via the GitHub API. It will also update the base branch for any pull requests against that branch.
<branch_name> The branch to ship. If not provided, uses the current branch. <commit_options> Options to pass to 'git commit' when committing the squash-merge.