git octopus [-n|-c] [-s <n>] [-e <pattern>] [<pattern>...] git octopus -v
<pattern> can be any usual refspec or a naming pattern. Patterns are resolved using git ls-remote, the resulting refs are given to git merge.
In case of conflicts, tries to reuse conflict resolutions stored by git conflict in refs/conflicts/*. (See git-conflict(1)).
In case of a merge failure, iterates over all the refs, computing merges with each ref (from HEAD) one by one for diagnosic purpose. Learn more about conflict management on the project’s homepage.
Leaves the repository back to HEAD.
Commit the resulting merge in the current branch. This is the default behavior unless -n or octopus.commit set to false. Use this option to override the latter.
- -s <n>
Chunk mode: the merge is performed by subsets of <n> branches. This is meant to help reading the log graph when lots of branches are merged.
- -e <pattern>
Exclude pattern: the merge excludes branches matching the <pattern>.
Prints the version of git-octopus
Merge check of the current branch with all feature branches and the master from origin:
$ git octopus -n origin/features/* origin/master
This is basically a merge check you would do before pushing your branch.
true by default. set to false behaves like -n
Defines a branch naming pattern that git octopus would use by default. Use multiple lines to define several patterns. See git-config(1).
Defines a branch naming pattern that git octopus will exclude by default.
git-merge(1), git-ls-remote(1), git-conflict(1).
Part of the git-octopus suit.