Merge pull request #3213 from fabiosantoscode/feature/3121-push-no-remote-specified-hint

push: improve 'no remote specified' hint
This commit is contained in:
Ruslan Kuprieiev
2020-01-24 22:46:55 +02:00
committed by GitHub
2 changed files with 21 additions and 10 deletions
+1 -9
View File
@@ -24,15 +24,7 @@ class ConfigError(DvcException):
class NoRemoteError(ConfigError):
def __init__(self, command):
msg = (
"no remote specified. Setup default remote with\n"
" dvc remote default <name>\n"
"or use:\n"
" dvc {} -r <name>\n".format(command)
)
super().__init__(msg)
pass
def supported_cache_type(types):
+20 -1
View File
@@ -39,7 +39,26 @@ class DataCloud(object):
if remote:
return self._init_remote(remote)
raise NoRemoteError(command)
has_non_default_remote = bool(
self.repo.config.list_options(
Config.SECTION_REMOTE_REGEX, Config.SECTION_REMOTE_URL
)
)
if has_non_default_remote:
error_msg = (
"no remote specified. Setup default remote with\n"
" dvc remote default <remote name>\n"
"or use:\n"
" dvc {} -r <remote name>".format(command)
)
else:
error_msg = (
"no remote specified. Create a default remote with\n"
" dvc remote add -d <remote name> <remote url>"
)
raise NoRemoteError(error_msg)
def _init_remote(self, remote):
return Remote(self.repo, name=remote)