whale-makelink是一个npm工具,是强业务的工具,可以将当前工程目录下的项目文件夹,在README中生成项目的链接地址。Demo

一、npm init

使用npm init生成package.json

{
"name": "whale-makelink",
"version": "1.0.5",
"description": "Make-link can get all the project folders of the current directory, and generate the project link directory in the readme.",
"main": "index.js",
"scripts": {
"test": "echo \"Error: no test specified\" && exit 1"
},
"repository": {
"type": "git",
"url": "git@github.com:jingwhale/whale-makelink.git"
},
"keywords": [
"makelink"
],
"author": "jingwhale@yeah.net",
"license": "ISC"
}

二、自定义命令

2.1、在package.json的bin下定义一个对象,这里makelink就是需要的命令,内容交给index.js

{
"name": "whale-makelink",
"version": "1.0.5",
"description": "Make-link can get all the project folders of the current directory, and generate the project link directory in the readme.",
"main": "index.js",
"scripts": {
"test": "echo \"Error: no test specified\" && exit 1"
},
"repository": {
"type": "git",
"url": "git@github.com:jingwhale/whale-makelink.git"
},
"bin": {
"makelink": "./index.js"
},
"keywords": [
"makelink"
],
"author": "jingwhale@yeah.net",
"license": "ISC"
}

2.2、在index.js中添加'#!/usr/bin/env node'

#!/usr/bin/env node

const path = require('path');
const makelink = require('./makelink'); const pathName = path.resolve(__dirname, '../..');
const srcFile = pathName + '/README.md'; makelink(srcFile,pathName);

三、发布npm包

3.1、注册

npm官网注册,并且通过邮件验证后,才能发npm包。

3.2、登录

npm login

输入用户名、密码和邮箱。

3.3、发布

npm publish

3.4、版本更新

1)、变更版本号-自动改变版本

npm version <update_type>

update_type为patch, minor, or major其中之一,分别表示补丁,小改,大改

若是patch,变为1.0.1
若是minor,变为1.1.0
若是major,变为2.0.0

2)、发布

npm publish

3.5、发布出错

1)、验证邮箱

2)、修正npm源

npm config get registry
npm config set registry=http://registry.npmjs.org

四、更新package.json

更新package.json后,需要先提交到github,再进行版本的升级。

五、版本展示

创建

readme中使用

![verion](https://img.shields.io/badge/npm-1.0.8-brightgreen.svg)

策略

每次代码更新完毕,在进行版本的升级操作。

六、npm whale-makelink

npm包开发(whale-makelink)的更多相关文章

  1. npm包开发与发布

    把通用的功能开发成npm包,便用使用和维护,更重要的是可以分享给广大的开发者,是不是很激动人心! 那么,步骤如下: 1.创建项目 创建项目目录,npm init ,根据需要输入配置信息(建完后也可以在 ...

  2. 记npm包开发全过程

    概述 为什么开发npm包? 如何开发? 如何写单元测试? package.json 如何发布模块? 如何使用? 为什么开发npm模块? NPM的全称是Node Package Manager,是一个N ...

  3. 如何开发一个npm包并发布

    一.安装nodejs 不多说了,网上教程多得是 二.创建自己的npm包 目录结构 npm-test a.js b.js package.json 开发 为了简单便于理解,就开发一个简单地hello程序 ...

  4. VS Code项目中通过npm包的方式共享代码片段的方案实现

    VS Code项目中通过npm包的方式共享代码片段的方案实现 上周在 "VS Code项目中共享自定义的代码片段方案" 的文章中提到过一个共享代码片段的方案,上周经过调研后并没有发 ...

  5. 在2018年如何优雅的开发一个typescript语言的npm包?

    欢迎大家前往腾讯云+社区,获取更多腾讯海量技术实践干货哦~ 本文由小明plus发表 很多时候,我们可能想要用 typescript 语言来创建一些模块,并提交到 npm 供别人使用, 那么在 2018 ...

  6. 从零系列--开发npm包(一)

    一.目的 主要是纪录和回顾自己开发的一些步骤以及遇到的一些问题和解决方案 二.准备工作 1.IDE 选择 VS Code 2.安装node 环境 (https://nodejs.org/zh-cn/) ...

  7. 如何开发一个npm包并发布到npm中央仓库

    转自: https://liaolongdong.com/2019/01/24/publish-public-npm.html 如何开发一个npm包并发布到npm中央仓库需求背景:平时在项目工作中可能 ...

  8. 快速开发一个npm包(轮子)

    动机 很多人都想写一个自己的轮子,可是开始动手的时候你总会遇到以下问题 一个基本的 js 库应该如何编写 基本的前端项目都要哪些文件 又要怎么打包发布到 npm 上 你的 es6 语法如何才能让别人识 ...

  9. 开发一个健壮的npm包

    项目地址:loan-calculate-utils npm包的发布.更新查看上一篇文章 开发一个基础的npm包 目前我们的目录是这个样子: . ├── source 源代码目录 │   └── ind ...

随机推荐

  1. Mysql 5.7 基于组复制(MySQL Group Replication) - 运维小结

    之前介绍了Mysq主从同步的异步复制(默认模式).半同步复制.基于GTID复制.基于组提交和并行复制 (解决同步延迟),下面简单说下Mysql基于组复制(MySQL Group Replication ...

  2. 第4章 Selenium2-java WebDriver API (二)

    4.8  定位一组元素 定位一组元素的方法与定位单个元素的方法类似,唯一的区别是在单词element后面多了一个s表示复数.定位一组元素一般用于以下场景: ·批量操作元素,例如勾选页面上所有的复选框. ...

  3. linux下xdebug的安装和配置方法

    xdebug简介 Xdebug是一个开放源代码的PHP程序调试器(即一个Debug工具),可以用来跟踪,调试和分析PHP程序的运行状况. xdebug安装 首先让php错误显示,只需要修改php.in ...

  4. JS 从斐波那契数列浅谈递归

    一.前言 昨晚下班后,经理出于兴趣给我们技术组讲了讲算法相关的东西,全程一脸懵逼的听,中途还给我们出了一道比较有趣的爬楼问题,问题如下: 假设一个人从地面开始爬楼梯,规定一步只能爬一坎或者两坎,人只能 ...

  5. [JZOJ5970] Space

    Description 在一个四维空间中,给 \(4\) 个 \(n\) 的排列 \(A,B,C,D\),对于点 \((x,y,z,w)\) ,到点 \((A_x,B_y,C_z,D_w)\) 的花费 ...

  6. 基于tcp协议下粘包现象和解决方案,socketserver

    一.缓冲区 每个 socket 被创建后,都会分配两个缓冲区,输入缓冲区和输出缓冲区.write()/send() 并不立即向网络中传输数据,而是先将数据写入缓冲区中,再由TCP协议将数据从缓冲区发送 ...

  7. USDT与omniCore钱包

    USDTUSDT,又称为泰达币,是由Tether公司在 2015年推出的一种与美元锚定的加密货币,理论上,1USDT=1美元,这种价格的稳定性基于Tether公司声称对每一个发行的Tether在他们的 ...

  8. [转]如何将Angular localhost:4200 改为IP

    本文转自:https://blog.csdn.net/ygznx/article/details/78249118 ust specify the IP in --host option like n ...

  9. autocomplate 学习

    方法一 :[使用插件] // 联想功能 stat function cselstreet() { var name = ""; //$("#txtname"). ...

  10. Java面试总结(集合、spring)

    Java 集合框架简介 Java Collections Framework,最开始也是一个开源框架,后来被收录到JDK中 所谓的集合,就是能存放多个数据元素的容器,在Java中原生的容器是数组 数组 ...