sorcerer-cli v0.3.1
Sorcerer.js CLI tool for managing multiple VCS projects from a central location.
Current supported VCS providers
- Git
Installation
npm install -g sorcerer-cliSetup
You can tell Sorcerer.js CLI to always use an existing projects root directory containing all your VCS projects with command:
src config:set src.projectsDir {pathToYourProjects}Or you can append -d command option for every command you execute:
src clone -d {pathToYourProjects} {cloneUrl}Or
By default Sorcerer.js CLI will use directory {homeDirectory}/.sorcerer/projects when running
all commands such as clone, fetch etc. See full list of commands below.
Commands
Lists all branches for project.
Displays project selection prompt if
[project]is not specified
- Show all branches for project command (with project prompt):
src branch- Show all branches for explicit project command (with command argument
<project>):
src branch <project>Checkout command
Checkout project branch.
Displays project selection prompt if
[project]is not specified Displays branch selection or branch input prompt if[branch]is not specified
- Checkout branch for project command (with project prompt)
src checkout- Checkout branch for explicit project (with command argument
<project>):
src checkout <project>- Checkout branch for project command (with project prompt and branch prompt):
src checkout <project> <branch>- Checkout and create new branch for project using -b|--new command (with project prompt and branch prompt):
src checkout -b <project> <branch>or
src checkout --new <project> <branch>or (with branch input prompt)
src checkout --new <project>Clone command
Clone a repo into root projects directory.
- Clone repo
src clone <cloneUrl>Config command
config:show | cf:show command
- Display sorcerer cli config value command:
src config:show <configName>config:set | cf:set command
- Sets sorcerer cli config value command:
src config:set <configName> <configValue>config:list | cf:list command
- List all sorcerer cli config values command:
src config:listFetch command
Fetches upstream changes for project.
Displays project selection prompt if
[project]is not specified
- Fetches upstream changes for project command (with project prompt):
src fetch- Fetches upstream changes for project command (with command argument
<project>):
src fetch <project>List command
Lists all project(s) currently in root projects directory.
- List all project(s) command:
src list- Pull branch changes for project command (with command argument
<project>):
src pull <project>Pull command
Pull branch changes for project.
Displays project selection prompt if
[project]is not specified
- Pull branch changes for project command (with project prompt):
src pull- Pull branch changes for project command (with command argument
<project>):
src pull <project>Status command
Displays project status.
Displays project selection prompt if
[project]is not specified
- Displays project status for project command (with project prompt):
src status- Displays project status for project command (with command argument
<project>)
src status <project>Add command
Stages project changes.
Displays project selection prompt if
[project]is not specifiedDisplays unstaged changes selection prompt if no files or
.is not appended to command
- Stage changes command (with project prompt):
src add- Stage changes (with command argument
<project>)
src add <project> - Stage all changes command:
src add <project> .- Stage multiple changes command:
src add <project> <file1> <file2> ... <fileN>- Stage a single change command:
src add <project> <file>Commit command
Displays project selection prompt if
[project]is not specifiedDisplays commit message input if no commit message is explicitly passed to command.
- Commit staged changes command (with project prompt):
src commit- Commit staged changes (with command argument
<project>)
src commit <project> - Commit staged changes with message (with command argument
<project>)
src commit <project> "Intial commit"Push command
Displays project selection prompt if
[project]is not specified
- Push commits command (with project prompt):
src push- Push commits command (with command argument
<project>)
src push <project> Init command
Initializes/Creates a new VCS project.
Displays project input prompt if
[project]is not specified
- Init project command (with project input prompt):
src initor
src in- Init project command (with command argument
<project>)
src in <project> 