在线文档教程

2. Publishing a Package(发布包)

2.发布一个包

为了通过Yarn与世界各地的其他开发人员分享您的软件包,您首先需要发布它。

当你用Yarn发布一个包时,它将进入用于全局分发包的npm注册表

登录到npm

如果你还没有准备好,你首先需要创建一个npm账户。完成之后,您可以使用Yarn设置您的用户名和电子邮件。

yarn login

这会提示您输入用户名和电子邮件。但是,它不会要求您输入密码。Yarn不能容纳你的密码或任何会议。当你发布或修改npm的内容时,你需要输入你的密码。

发布你的包

一旦你将所有的代码写入你的包中,测试完毕,你就可以发布你可以解决的问题了:

yarn publish

首先,您需要输入新版本才能发布:

[1/4] Bumping version... info Current version: 1.0.0 question New version: _____

接下来你会被要求输入你的npm密码:

[2/4] Logging in... info npm username: your-npm-username info npm username: you@example.com question npm password: ____________

最后,Yarn将发布包并撤销会话令牌。

[3/4] Publishing... success Published. [4/4] Revoking token... success Revoked login token. ✨ Done in 10.53s.

每次你想发布你的软件包的新版本,你都可以遵循这个流程。

访问你的软件包

你的软件包现在可以在https://www.npmjs.com/package/my-new-project上找到,你应该可以安装它:

yarn add my-new-project

您还可以在npm注册表中看到所有信息:

yarn info my-new-project

{ name: 'my-new-project', description: 'My New Project description.', 'dist-tags': { latest: '1.0.0' }, versions: [ '1.0.0' ], maintainers: [ { name: 'Your Name', email: 'you@example.com' } ], time: { modified: '2017-11-10T10:34:09+00:00', created: '2017-11-10T10:34:09+00:00', '1.0.0': '2017-11-10T10:34:09+00:00' }, homepage: 'https://my-new-project-website.com/', keywords: [ 'cool', 'useful', 'stuff' ], repository: { url: 'https://example.com/your-username/my-new-project', type: 'git' }, contributors: [ { name: 'Your Friend', email: 'their-email@example.com', url: 'http://their-website.com' }, { name: 'Another Friend', email: 'another-email@example.com', url: 'https://another-website.org' } ], author: { name: 'Your Name', email: 'you@example.com' }, bugs: { url: 'https://github.com/you/my-new-project/issues' }, license: 'MIT', readmeFilename: 'README.md', version: '1.0.0', main: 'index.js', files: [ 'index.js', 'lib/*.js', 'bin/*.js' ], bin: { 'my-new-project-cli': 'bin/my-new-project-cli.js' }, dist: { shasum: '908bc9a06fa4421e96ceda243c1ee1789b0dc763', tarball: 'https://registry.npmjs.org/my-new-project/-/my-new-project-1.0.0.tgz' }, directories: {} }