Go to file
2022-12-11 15:33:53 +01:00
app Upgrade to Go 1.19 2022-12-11 15:33:53 +01:00
commands Limit number of concurrent goroutines 2021-11-08 18:45:15 +01:00
config Add a skip field to the repository configuration 2021-11-08 22:09:12 +01:00
echo Limit number of concurrent goroutines 2021-11-08 18:45:15 +01:00
.gitignore Upgrade to Go 1.19 2022-12-11 15:33:53 +01:00
go.mod Upgrade to Go 1.19 2022-12-11 15:33:53 +01:00
go.sum Upgrade to Go 1.19 2022-12-11 15:33:53 +01:00
main.go Upgrade to Go 1.19 2022-12-11 15:33:53 +01:00
README.md Upgrade to Go 1.19 2022-12-11 15:33:53 +01:00
Taskfile.yml Upgrade to Go 1.19 2022-12-11 15:33:53 +01:00

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)
max-concurrent-process string empty Determine how many tasks can run simultaneously

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.1 Upgrade to Go 1.19
  • 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