git-project
v0.1.0
Published
The goal of this project is to add features to git for sub projects management.
Downloads
1
Readme
git-project
With git-project, you can manage the projects to checkout even if these are all in the same git repository. It uses the new feature available in git v1.7: sparse-checkout.
It is based on 2 elements:
- a file format to define your different projects inside the git repository
- a tool to read the config files and simplify git sparse-checkout commands (git clone is no more efficient)
The goal is not replace git but simplify its management for multi-projects repository.
And for whose who don't think that one git repository for all project is good practise: google did it so why not someon else.
Install
# as a node module
npm install gitp
# as a cli
npm install -g gitp
Getting started
In order to use git-project, follow these steps:
On your repository:
- create a .gitprc config file in the repository you can to checkout
- define your project in the .gitprc file (see example)
As a CLI
Where you want to checkout only a sub part of the repository:
npm install -g git-project
to install git-project on your computer- use command
gitp init [<ref>] <url>
to define the repository to pull - use command
gitp config project <project1> <project2>
to define the projects to pull - use command
gitp pull <ref> <branch>
and it will automatically pull what you want
Onyl this 3 commands exists, use standard git commands for other operations.
As a node module
var gitp = require('git-project')(<dirname>);
gitp.init(<url>, [<ref>,] callback);
gipt.configureProjects([<project1>, <project2>, ..], callback);
gitp.pull(<ref>, <branch>, callback);