---
name: "npm-submodule"
section: "3"
platform: "linux"
package: "npm"
version: "1.4.21+ds-2"
release: "Debian 8 (Jessie)"
platforms: ["linux"]
url: "https://new.carta.tech/npm-submodule/3"
---

# npm-submodule(3)

Add a package as a git submodule

## NAME

**npm-submodule** - Add a package as a git submodule

## SYNOPSIS

```
npm.commands.submodule(packages, callback)
```

## DESCRIPTION

For each package specified, npm will check if it has a git repository url in its package.json description then add it as a git submodule at **node\_modules/\<pkg name\>**.

This is a convenience only. From then on, it´s up to you to manage updates by using the appropriate git commands. npm will stubbornly refuse to update, modify, or remove anything with a **.git** subfolder in it.

This command also does not install missing dependencies, if the package does not include them in its git repository. If **npm ls** reports that things are missing, you can either install, link, or submodule them yourself, or you can do **npm explore \<pkgname\> -- npm install** to install the dependencies into the submodule folder.

## SEE ALSO

- •

  npm help json

- •

  git help submodule

-
