npm package discovery and stats viewer.

Discover Tips

  • General search

    [free text search, go nuts!]

  • Package details

    pkg:[package-name]

  • User packages

    @[username]

Sponsor

Optimize Toolset

I’ve always been into building performant and accessible sites, but lately I’ve been taking it extremely seriously. So much so that I’ve been building a tool to help me optimize and monitor the sites that I build to make sure that I’m making an attempt to offer the best experience to those who visit them. If you’re into performant, accessible and SEO friendly sites, you might like it too! You can check it out at Optimize Toolset.

About

Hi, 👋, I’m Ryan Hefner  and I built this site for me, and you! The goal of this site was to provide an easy way for me to check the stats on my npm packages, both for prioritizing issues and updates, and to give me a little kick in the pants to keep up on stuff.

As I was building it, I realized that I was actually using the tool to build the tool, and figured I might as well put this out there and hopefully others will find it to be a fast and useful way to search and browse npm packages as I have.

If you’re interested in other things I’m working on, follow me on Twitter or check out the open source projects I’ve been publishing on GitHub.

I am also working on a Twitter bot for this site to tweet the most popular, newest, random packages from npm. Please follow that account now and it will start sending out packages soon–ish.

Open Software & Tools

This site wouldn’t be possible without the immense generosity and tireless efforts from the people who make contributions to the world and share their work via open source initiatives. Thank you 🙏

© 2026 – Pkg Stats / Ryan Hefner

n8n-nodes-extended-git

v0.4.0

Published

Community nodes for n8n including a Git Extended node.

Readme

Banner image

n8n-nodes-extended-git

This repo helps you get started building your own custom integrations for n8n. It includes the node linter and other dependencies. This repository also provides a Git Extended node that lets you run Git commands directly from your workflows.

To make your custom node available to the community, you must create it as an npm package, and submit it to the npm registry.

Prerequisites

You need the following installed on your development machine:

  • git
  • Node.js and pnpm. Minimum version Node 20. You can find instructions on how to install both using nvm (Node Version Manager) for Linux, Mac, and WSL here. For Windows users, refer to Microsoft's guide to Install NodeJS on Windows.
  • Install n8n with:
    npm install n8n -g
  • Recommended: follow n8n's guide to set up your development environment.

Using this starter

These are the basic steps for working with the starter. For detailed guidance on creating and publishing nodes, refer to the documentation.

  1. Generate a new repository from this template repository.
  2. Clone your new repo:
    git clone https://github.com/<your organization>/<your-repo-name>.git
  3. Run npm i to install dependencies.
  4. Open the project in your editor.
  5. Add your node and credential files to /nodes and /credentials.
  6. Update the package.json to match your details.
  7. Run npm lint to check for errors or npm lintfix to automatically fix errors when possible.
  8. Test your node locally. Refer to Run your node locally for guidance.
  9. Replace this README with documentation for your node. Use the README_TEMPLATE to get started.
  10. Update the LICENSE file to use your details.
  11. Publish your package to npm.

Git Extended node

This repository includes a Git Extended node located in /nodes/GitExtended. It lets you execute common Git commands inside your workflows. The node supports operations like clone, init, add, commit, push, lfsPush, pull, status, log, switch, checkout, merge, applyPatch, branches, createBranch, deleteBranch, renameBranch, commits, fetch, rebase, cherryPick, revert, reset, stash, tag, and configUser. The push operation includes a Force Push option that appends --force to the command when enabled. Enable Push LFS Objects to run git lfs push --all automatically before pushing. Enable Skip LFS Push to set GIT_LFS_SKIP_PUSH=1 and skip uploading LFS objects during the push. Enable Skip LFS Smudge to set GIT_LFS_SKIP_SMUDGE=1 when cloning, pulling, or fetching so Git LFS objects are not downloaded. Use lfsPush to manually upload Git LFS objects when the remote requires them. Enable Skip Stdout to discard command output and avoid stdout maxBuffer length exceeded errors when commands produce large output.

The Remote parameter accepts either a remote name (such as origin) or a full repository URL. This lets you push or pull from a configured remote or directly specify another repository.

Example usage:

Remote: origin
Branch: main
Remote: https://github.com/example/repo.git
Branch: main

Every operation requires a Repository Path parameter that defines the directory from which the Git command is executed. For clone, the repository will be created inside this directory.

The applyPatch operation uses git apply to apply a patch file. You can provide the patch text directly or specify a path to a patch file. Enable the Binary option when applying binary patches.

Running Git commands

The node relies on the git binary available on the machine running n8n. Make sure git is installed and accessible from the command line.

More information

Refer to our documentation on creating nodes for detailed information on building your own nodes.

License

MIT