我已使用两个不同的帐户(其中一个与工作有关,另一个与个人有关)将软件包上传到pub.dartlang.org。
pub
命令行工具没有任何选择来选择要发布的帐户的选项,因此,一旦我使用该工具登录并尝试上传属于另一个帐户的软件包,就可以看到:
$ pub publish
UnauthorizedAccess: Unauthorized user: ___@example.com is not allowed to upload versions to package xyz..
如何使用特定帐户发布?失败了,如何注销pub
工具以使用其他帐户再次登录?
答案 0 :(得分:1)
如果要使用不同的凭据临时发布,可以使用以下命令:
std::string test(vec.begin(), vec.end());
这将创建一个完全独立的“配置文件”,该文件在运行任何PUB_CACHE=~/.other_credentials_cache pub publish
环境变量并指向pub
以外的目录的任何PUB_CACHE
命令时使用。如果您打算~/.pub_cache
使用此缓存,则将下载完全独立的软件包。
使用这种方法,您可以通过指定或不指定其他缓存目录在凭据之间切换。首次使用新目录时,需要进行身份验证。
答案 1 :(得分:0)
目前,命令行pub
工具无法使用不同的凭据上传(尽管有proposal)。
如果您使用的是pub
的较新版本,则可以使用以下方式注销:
$ pub logout
然后再次尝试pub publish
。该工具会要求您提供新的凭据。
pub logout
命令是附加的from January 2019。如果pub
告诉您该命令不存在,则必须手动删除凭据文件。
$ rm ~/.pub-cache/credentials.json