GIT-OCTOPUS(1)

πŸ“¦
version 2.0 Β· 4 versions
, in epel 9

πŸ’… GIT-OCTOPUS(1) β€” the girlies' guide to merging all the branches

okay so bestie, welcome to git-octopus(1), from the git-octopus suit manual. yes i said "suit" and yes that's what it says, we don't ask questions, we slay. πŸ™βœ¨ This one extends git-merge with branch naming patterns, and honestly? it's giving main character energy.


🌸 NAME 🌸

git-octopus β€” it extends git-merge with branch naming patterns. that's it, that's the vibe.


πŸŽ€ SYNOPSIS πŸŽ€

git octopus [-n|-c] [-s <n>] [-e <pattern>] [<pattern>...]
git octopus -v

πŸ¦‹ DESCRIPTION πŸ¦‹

so <pattern> can be any usual refspec, or a naming pattern. patterns get resolved using git ls-remote, and then the resulting refs are handed straight to git merge. simple as.

if you hit conflicts, it tries to reuse conflict resolutions stored by git conflict in refs/conflicts/*. (peep git-conflict(1) for that one πŸ’–)

and if a merge fails? it literally iterates over all the refs, computing merges with each ref (from HEAD) one by one, for diagnostic purposes. like a little detective πŸ•΅οΈβ€β™€οΈ learn more about conflict management on the project's homepage.


✨ OPTIONS ✨

  • -n β€” leaves the repository back to HEAD. cleanup queen behavior.
  • -c β€” commit the resulting merge in the current branch. this is the default behavior unless -n is used or octopus.commit is 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. honestly iconic for when the graph gets unreadable 😭
  • -e <pattern> β€” exclude pattern: the merge excludes branches matching the <pattern>. bye felicia 🫢
  • -v β€” prints the version of git-octopus.

πŸ”₯ EXAMPLES πŸ”₯

  • 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. no cap, do it before you push, your future self will thank you 🌈


πŸ’œ CONFIGURATION πŸ’œ

  • octopus.commit β€” true by default. set to false behaves like -n.
  • octopus.pattern β€” defines a branch naming pattern that git octopus would use by default. use multiple lines to define several patterns. see git-config(1).
  • octopus.excludePattern β€” defines a branch naming pattern that git octopus will exclude by default.

πŸ‘‘ SEE ALSO πŸ‘‘

git-merge(1), git-ls-remote(1), git-conflict(1).


🧚 GIT-OCTOPUS 🧚

part of the git-octopus suit. periodt.


k that's the whole page bestie, go merge something cute πŸ’–

✿ git-octopus 1.4 ✿ 07/05/2023 ✿ β€” mwah, that's the source/version and date, signed off with love πŸŽ€πŸ¦‹πŸ’…

πŸ“¦ where this page comes from