SYNOPSIS
mg init [--update-only|u] [--clean|c] [--remove-missing|--rm|-R] [FILE]
With FILE, creates a .mgconfig with the contents of FILE. FILE may be a local file, a URL or stdin (indicated with -); the script will try to get it if it can.
Any existing .mgconfig file will be overwritten.
Then, with or without FILE, does two things:
First, reads any existing .mgconfig and clones any URLs that haven't been cloned. With FILE, therefore, spawns a new copy of the project. (Caveat: --clean
, --update-only
.)
Second, creates or updates the .mgconfig by iterating the subdirectories and assuming they are git repos, registering any that have not been. (Caveat: --remove-missing
.)
Except for the dir keys, all existing configuration will be maintained, if possible.
OPTIONS
--update-only
-u
This will update the .mgconfig but won't clone anything. If FILE was provided, this will basically just copy the file to ./.mgconfig and exit.
--clean
-c
Removes the config for any directory not present. Necessarily, this requires that we do not clone them first.
--clean
is incompatible with --update-only
.
--remove-repos
--rm
Removes any directory not present in the config. Note that if there is no config yet, it will be created irrespective of this option; and thus this option will have no effect in that situation.
This option will not check for changes in the repository. It will just delete it.