
Research
Security News
The Growing Risk of Malicious Browser Extensions
Socket researchers uncover how browser extensions in trusted stores are used to hijack sessions, redirect traffic, and manipulate user behavior.
git-cactus
is a git management tool that supports the Cactus Branching Model.
xcode-select --install
$ npm install -g git-cactus
On Arch Linux, because nodegit's precompiled binary was compiled against an outdated version of libcurl, you must build it from source. See this nodegit issue for details. After running npm install -g git-cactus
, change to the directory where git-cactus
was installed and run BUILD_ONLY=1 npm install nodegit
.
git-cactus
is invoked as a git subcommand like this: git cactus
(note the space!)
The tool is fairly bare bones to start with. You can only do two things:
If you want help you can run git cactus
without any arguments or with the help
argument.
Warning: Adding a --help
flag will make git try to open a man page (which doesn't yet exist).
$ git cactus cut # cuts a release
$ git cactus tag # tags a version
Cutting a release branch is used to branch code off of origin's master. Teams typically do this when they want to make a snapshot of the branch where development happens to do QA for an upcoming release. This allows collaborative development to continue while the snapshot of the code is validated for production.
Running the operation is fairly simple:
$ cd <repository>
$ git cactus cut
If the master branch's package.json version is currently v1.2.0 (last release) cutting a release branch will:
npm version minor -m 'Release v%s'
on master
release-v1.3
master
branchrelease-v1.3
v1.3.0
If you don't use origin as the name of your upstream remote you can specify another:
git cactus cut --upstream my-upstream
Don't worry about working state! Git cactus will clone the repository you run the command in
to a temporary directory (/tmp/xxx/
) and run the necessary operations there (including cleanup).
This opinionated but necessary to avoid common errors and frustrations:
Tagging a version is typically done when you want to apply a hotfix to the current release.
To make a hotfix for v1.3.0:
git checkout release-v1.3 # lets make hotfix for v1.3
git pull <upstream> release-v1.3
git cherry-pick <fix sha>
git apply <fix sha>
git cactus tag
Tagging a release version will:
npm version patch -m 'Release v%s'
release-v1.3
v1.3.1
FAQs
A opinionated tool for cutting releases
The npm package git-cactus receives a total of 1 weekly downloads. As such, git-cactus popularity was classified as not popular.
We found that git-cactus demonstrated a not healthy version release cadence and project activity because the last version was released a year ago. It has 2 open source maintainers collaborating on the project.
Did you know?
Socket for GitHub automatically highlights issues in each pull request and monitors the health of all your open source dependencies. Discover the contents of your packages and block harmful activity before you install or update your dependencies.
Research
Security News
Socket researchers uncover how browser extensions in trusted stores are used to hijack sessions, redirect traffic, and manipulate user behavior.
Research
Security News
An in-depth analysis of credential stealers, crypto drainers, cryptojackers, and clipboard hijackers abusing open source package registries to compromise Web3 development environments.
Security News
pnpm 10.12.1 introduces a global virtual store for faster installs and new options for managing dependencies with version catalogs.