Node bindings to the libgit2 project.
| Linux | OS X | Windows | Dependencies |
|---|---|---|---|
|
|
|
|
|
Stable: 0.2.7
[]
(https://gitter.im/nodegit/nodegit)
Tim Branyen @tbranyen, John Haley @johnhaley81, Max Korp @maxkorp, and Steve Smith @orderedlist with help from tons of awesome contributors!
Michael Robinson @codeofinterest, and Nick Kallen @nk
NodeGit will work on most systems out-of-the-box without any native dependencies.
npm install nodegitIf you encounter problems while installing, you should try the Building from source instructions below.
If you wish to help contribute to NodeGit it is useful to build locally.
# Fetch this project.
git clone git://github.com/nodegit/nodegit.git
# Enter the repository.
cd nodegit
# Install all dependencies, run the code generation scripts, and build.
npm installIf you encounter errors, you most likely have not configured the dependencies correctly.
Using APT in Ubuntu:
sudo apt-get install build-essentialUsing Pacman in Arch Linux:
sudo pacman -S base-develNote that GCC/G++ 4.7+ are required, as the library makes use of some c++11 std calls.
You may have to add a build flag to the installation process to successfully install.
Try first without, if the build fails, try again with the flag.
Allegedly the order in which you install Visual Studio could trigger this error.
npm install nodegit --msvs_version=2013
# Or whatever version you've installed.In many of the npm scripts (and examples above), things are run like
BUILD_ONLY=true npm install. This sets the BUILD_ONLY environment variable
to true for the duration of that command. This doesn't work in windows, however
there is a solution. You can use cmd to call a command inside of cmd (very meta)
with the variable set, and it only lasts for the duration of the inner call to cmd.
So for the above example, you would run cmd /C "set BUILD_ONLY=true && npm install".
See here for more details:
SuperUser.
In order to track down possible bugs, you will need a debug buid so you can get a backtrace with gdb or lldb.
If you're building for the first time, run npm run installDebug (or BUILD_ONLY=true npm link)
Note that you should run rm -rf build/Release (or rd /s /q build/Release in Windows) to make sure a release build doesn't get loaded instead of the debug build.
If you're doing a subsequent rebuild of NodeGit in debug, the clean function will cause a lot of extraneous recompilation of things you probably didn't change (like the vendor dependencies). If you need to regenerate the C++ files and recompile you can run npm run rebuildDebug, or npm run recompileDebug if you've manually updated the C++ files and don't want them to regenerate.