Currently hermes has a single repo_path configured in the .hermes.yml or by default being $HOME/hermes-repos/. Instead hermes should support having multiple repo paths for use cases such as Golang projects (which should be stored in $GOPATH/src) whereas you may want to store non-go repos elsewhere. I think that in the case where hermes is cloning a repo and unsure which repo_path to clone it to, the user should be prompted to select from the configured paths, but would be open to suggestions. I have also thought about adding support for .hermesrc files that could live in the target project which could specify an ideal repo_path but prompting would be a good starting point. I see a couple parts to this which could be done incrementally:
[ ] Modify the config to have a repo_paths key (or something of the like) which would have a list of key / value pairs as element where the key would be a user defined name for the path (e.g. go) , and the value being the path to store those directories. I think we can retain backwards compatibility here in the case that the repo_path is set it would take precedence.
[ ] In the case that there are multiple repo paths configured and hermes is attempting a clone, the user should be prompted as to which to use and this path should be stored in the cache Add call.
[ ] Optionally support could be added for a default_repo config where if a -f like flag were added to a get command, the user would not be prompted and hermes would proceed with the default_repo
Currently hermes has a single
repo_path
configured in the.hermes.yml
or by default being$HOME/hermes-repos/
. Instead hermes should support having multiple repo paths for use cases such as Golang projects (which should be stored in$GOPATH/src
) whereas you may want to store non-go repos elsewhere. I think that in the case where hermes is cloning a repo and unsure which repo_path to clone it to, the user should be prompted to select from the configured paths, but would be open to suggestions. I have also thought about adding support for.hermesrc
files that could live in the target project which could specify an ideal repo_path but prompting would be a good starting point. I see a couple parts to this which could be done incrementally:[ ] Modify the config to have a
repo_paths
key (or something of the like) which would have a list of key / value pairs as element where the key would be a user defined name for the path (e.g.go
) , and the value being the path to store those directories. I think we can retain backwards compatibility here in the case that therepo_path
is set it would take precedence.[ ] In the case that there are multiple repo paths configured and hermes is attempting a clone, the user should be prompted as to which to use and this path should be stored in the cache Add call.
[ ] Optionally support could be added for a default_repo config where if a
-f
like flag were added to a get command, the user would not be prompted and hermes would proceed with the default_repo