0-60
这是我用于从一个样板项目创建npm包的脚本,并且 尽可能快地设置CI构建。一旦你用过这个,你就永远不会 想回到手动设置那些东西的状态。
安装
yarn global add 0-60
或者如果你想的话,你可以用 npx:
npx 0-60
命令行界面
克隆骨架存储库
0-60 clone <REPO URL>[#<BRANCH>]
0-60 将提示您输入新的包名称、组织等:
$ 0-60 clone https://github.com/jedwards1211/es2015-library-skeleton.git
? Destination directory: cool-project
Cloning into 'cool-project'...
remote: Enumerating objects: 182, done.
remote: Counting objects: 100% (182/182), done.
remote: Compressing objects: 100% (41/41), done.
remote: Total 1078 (delta 162), reused 150 (delta 140), pack-reused 896
Receiving objects: 100% (1078/1078), 586.17 KiB | 2.78 MiB/s, done.
Resolving deltas: 100% (724/724), done.
? Package name: cool-project
? Package description: made with 0-60!
? Package author: Andy Edwards
? Package keywords: foo,bar
? GitHub organization: jedwards1211
? GitHub repo: cool-project
Installing dependencies...
yarn install v1.13.0
[1/4] 🔍 Resolving packages...
[2/4] 🚚 Fetching packages...
[3/4] 🔗 Linking dependencies...
[4/4] 🔨 Building fresh packages...
✨ Done in 9.17s.
Ready to go!
从预设的骨架库列表中选择
您不必每次都键入存储库URL。相反,您可以配置
通过将其添加到预设的仓库列表中进行选择 ~/.0-60.json.
然后运行 0-60 不带参数,并且在repo目录之外。
0-60 将提示您从此列表中选择所需的骨架。
例子 ~/.0-60.json:
{
"skeletons": [
"jedwards1211/es2015-library-skeleton",
"jedwards1211/react-library-skeleton",
"jedwards1211/react-karma-library-skeleton",
"jedwards1211/untranspiled-js-library-skeleton",
"jedwards1211/typescript-library-skeleton",
"jedwards1211/typescript-library-skeleton#pnpm"
]
}
$ 0-60
? Skeleton repo: (Use arrow keys)
❯ jedwards1211/es2015-library-skeleton
jedwards1211/react-library-skeleton
jedwards1211/react-karma-library-skeleton
jedwards1211/untranspiled-js-library-skeleton
jedwards1211/typescript-library-skeleton
jedwards1211/typescript-library-skeleton#pnpm
准备CI构建
运行 0-60 在你的repo目录中将:
- 在GitHub上创建存储库
- 启用Travis CI(如果
.travis.yml存在)
对骨架进行修改
你就跑 git pull skeleton master (0-60 将框架存储库URL保存在 skeleton 远程)。
我建议在我的fork中使用CLI 合并-package.json 自动修复中的合并冲突 package.json. (安装 npm i -g jedwards1211/merge-package.json#cli 然后运行 merge-package.json 在拉取后位于项目目录中。)