GitRepositoryManager/README.md

2.4 KiB

Git repositories manager

Sync your repositories with single click

Usage

Create a yaml file with the given structure

# Place where your repositories should be saved
workspace: ${HOME}/workspace 
# List with repositories, that you want to manage with GRM
repositories:
- src: "git@github.com:Revalus/GitRepositoryManager.git" # Required - specified repository to clone/fetch data
  name: GRM     # Optional, Uniq - if no name is specified, the repository will be treated as a name
  dest: manager # Optional, Uniq - if no value is specified, name will be taken as destination 
  tags: ['companyX', 'departmentY'] # Optional - tags to specify to limit/exclude actions on the repository

Note

By default, the config file is searched for in [HOME_DIR]./config/grm/config.yaml.

Commands and arguments

Global args

argument type default Description
-c, --config-file string [HOME_DIR]./config/grm/config.yaml Path to configuration file, where the repositories must be specified
-v, --version bool false Display current version
--no-color bool false Turning off the display of output in color
-n --name string empty Limit action to the specified repository name
-t --tag string empty Limit action to the specified repository tag (may be more than one tag)

Commands

command Description
sync Fetches changes from repositories or pulls a repository if one does not exist.
status Get repository information - what is the current branch, how many commits are above and behind it for each remote.

Changelog

  • 0.3.0 Adding the ability to limit actions to repositories containing a given name or tags
  • 0.2.0 Add status command - get information about the current status in the repository
  • 0.1.1 Allow to use env vars in config
  • 0.1.0 Add sync command - allow to fetch and clone repositories