版本号

一、npm基础

南楼画角 提交于 2020-02-06 19:24:47
一、 什么是 npm? npm 是模块管理工具,可以下载、更新第三方模块,也可以发布自己的模块共替他人使用,主要目的在于分享和重用代码; 二、下载安装node,更新npm node 下载网址 https://nodejs.org/ 下载完成 node -v 查看版本 安装 node 自带 npm npm -v 查看版本 更新 npm 的命令 npm install npm@latest -g 三、下载安装npm package npm install < 包名 > --save 生产环境依赖 npm install < 包名 > --save-dev 开发环境依赖 npm install -g jshint 全局安装 通过 ls node_modules 查看安装的包 使用 var lodash = require('lodash'); 重点: npm 如何安装指定版本的包 没有 packge.json 文件将默认下载最新版本 如果有 packge.json 文件 四、使用package.json  创建 packge.json npm init 问卷的形式 npm init --yes 创建个默认的 If you have a package.json file in your directory and you run npm install , then npm will

【Java】连接MySQL数据库报错:Could not create connection to database server

梦想与她 提交于 2020-02-03 13:58:07
原因是:mysqll版本号和maven中pom文件中配置的mysql-connector版本号不同 原先我的是: <dependency> <groupId>mysql</groupId> <artifactId>mysql-connector-java</artifactId> <version>5.1.35</version> </dependency> 修改后的是: <dependency> <groupId>mysql</groupId> <artifactId>mysql-connector-java</artifactId> <version>8.0.19</version> </dependency> 获取mysql版本号:在任何一个能执行sql语句的地方执行语句: select version() from dual; 来源: CSDN 作者: 骑码学GIS 链接: https://blog.csdn.net/weixin_42034217/article/details/104152518

《即时消息技术剖析与实战》学习笔记9——IM系统如何支持消息的多终端漫游

旧城冷巷雨未停 提交于 2020-02-03 13:36:29
一、什么是多终端漫游 老幺小说网 https://laoyao.org 多终端漫游是指:用户在任意一个设备登录后,都能获取到历史的聊天记录。如:QQ 默认漫游 7 天的聊天记录,开通 VIP 会员可漫游 30 天,开通 SVIP 会员可漫游 2 年。 二、多终端漫游的实现 支持消息多终端漫游一般需要两个条件: 设备在线状态 离线消息存储 1. 通过设备的在线状态来实现 记录设备的在线状态,当用户在多个终端同时登录并发送消息时,IM 服务端将收到的消息推给接收方的多台在线设备,同时推给发送方的其他登录设备。 可以看到,当多终端同时在线,只需要维护设备的在线状态就可以了。 2. 通过离线消息存储来实现 上面的图是假设接收方或发送方的多台终端设备都是在线状态,若发送方或接收方用户的多台终端设备中,某些设备是离线状态,此时发送消息,IM 服务端只会将消息推送给在线设备,同时将消息存储到服务器,以便离线设备上线后同步历史消息。 离线消息的同步机制 用户的某台离线设备上线后,需要知道获取哪些离线消息,一般采用版本号实现多终端和服务端的数据同步,保证离线消息可以做到按需拉取。 同步流程如图所示: ① 当有消息需要推送给用户时,会为每条消息生成一个版本号,并连同消息存入离线存储中,同时更新服务端维护的接收方用户的最新版本号,并将只携带版本号的消息发送给发送方设备

廖雪峰大神git学习笔记

家住魔仙堡 提交于 2020-02-03 00:32:58
1.创建版本库,在文件目录下打开git Bash键入git init 2.新建txt文件,提交至暂存 git add . ,提交到版本库git commit -m "注释" 3.修改txt文件内容,可通过git status查看修改了哪些文件,可通过 git diff 文件名 查看该文件做了哪些具体修改,git diff 是用来查看工作区和暂存区的区别,git diff --cached 用来查看暂存区和版本区的区别,git diff HEAD查看工作区和版本区的区别 4.在多次修改提交后,可以通过git log进行查看提交记录 5.如果需要回退,可使用git reset --hard HEAD^ 进行回退到上个版本,上上个版本^^,也可以将^替换成~1,git reset --hard HEAD~1以次类推。也可以直接使用版本号 git reset --hard 版本号.ps:不想要回退,依然想要使用没回退的版本,如果此时cmd窗口还没关闭,并且在回退之前git log查看过日志,可以使用git reset --hard 没回之前的版本号 进行恢复 6.git 提供了git reflog来查看你每次的git操作 7.撤销修改,如果需要撤销工作区的修改可以使用 git checkout -- 文件名 进行还原到上次提交过得add commit提交的文件

git常用命令总结

断了今生、忘了曾经 提交于 2020-02-03 00:21:16
文章目录 git常用命令总结 添加文件 删除文件 查看commit信息 版本回退 与远程库联系 分支操作 暂存状态 标签操作 git常用命令总结 添加文件 git add -A 提交所有变化 git add -u 提交被修改和被删除的文件(不包括新文件) git add . 提交新文件和被修改的文件(不包括被删除的文件) 删除文件 git rm 等同于 git rm --cached + 文件名 git rm --cached + 文件名> 这个命令不会删除物理文件,只是将已经add进缓存的文件删除。 git rm --f + 文件名> 不仅将文件从缓存区删除,而且还会将物理文件删除,注意配合commit使用。 git checkout – 文件 文件修改后没有放入缓存区,则撤销工作区修改回到和当前版本库一致的状态 文件加入了缓存区,又做了修改,则回到加入缓存区时的状态 git reset HEAD + 文件名 取消缓存区的修改,不加文件名,即取消所有缓存区的修改,然后通过git checkout – 文件,就可回到与版本库一致的状态,或者git restore .。 查看commit信息 git log 查看历史记录 git log --pretty=oneline 简单版历史记录 git log --graph --pretty=oneline --abbrev-commit

android app 版本号 通过versionCode 统一实现获取

无人久伴 提交于 2020-02-02 20:37:41
项目中为配合服务端兼容app版本兼容和app bug版本修复,定制了统一的规则,为了方便版本管理。 大家都知道 项目中有两个关于版本的概念 versionName 和 versionCode versionName是给用户查看的版本号 例如 2.5.1 versionCode是我们程序自己定义的版本号 只增不减 例如 020501 2 为主版本 大变动更新的时候+1 5 为次版本 小变动更新的时候+1 1 为修复版本 每修复一次+1 版本号同步跟着更新 为了方便,我们统一在gradle中进行实现(gradle中版本号会覆盖menifiest文件中的版本号) 首先定义版本号 int versionCode = 020501 //版本更改02 05 01格式 两位分割 为主版本 次版本 修复版本 定义一个方法 gradle中语法和java部分类似,有兴趣的可以自行学习 //通过versionCode获取versionName def getVersionName(int version) { String versionCode = version.toString() String mainV = versionCode.substring(0,2) String nextV = versionCode.substring(2,4) String fixV = versionCode

版本号的更新原则

∥☆過路亽.° 提交于 2020-02-02 00:50:22
语义版本号分为X.Y.Z三位,分别代表主版本号、次版本号和补丁版本号。 当代码变更时,版本号按以下原则更新。 如果只是修复bug,需要更新Z位。 如果是新增了功能,但是向下兼容,需要更新Y位。 如果有大变动,向下不兼容,需要更新X位。 来源: CSDN 作者: 小红同学5 链接: https://blog.csdn.net/xh_960125/article/details/104138525

《即时消息技术剖析与实战》学习笔记9——IM系统如何支持消息的多终端漫游

走远了吗. 提交于 2020-02-01 23:21:37
一、什么是多终端漫游 多终端漫游是指:用户在任意一个设备登录后,都能获取到历史的聊天记录。如:QQ 默认漫游 7 天的聊天记录,开通 VIP 会员可漫游 30 天,开通 SVIP 会员可漫游 2 年。 二、多终端漫游的实现 支持消息多终端漫游一般需要两个条件: 设备在线状态 离线消息存储 1. 通过设备的在线状态来实现 记录设备的在线状态,当用户在多个终端同时登录并发送消息时,IM 服务端将收到的消息推给接收方的多台在线设备,同时推给发送方的其他登录设备。 可以看到,当多终端同时在线,只需要维护设备的在线状态就可以了。 2. 通过离线消息存储来实现 上面的图是假设接收方或发送方的多台终端设备都是在线状态,若发送方或接收方用户的多台终端设备中,某些设备是离线状态,此时发送消息,IM 服务端只会将消息推送给在线设备,同时将消息存储到服务器,以便离线设备上线后同步历史消息。 离线消息的同步机制 用户的某台离线设备上线后,需要知道获取哪些离线消息,一般采用版本号实现多终端和服务端的数据同步,保证离线消息可以做到按需拉取。 同步流程如图所示: ① 当有消息需要推送给用户时,会为每条消息生成一个版本号,并连同消息存入离线存储中,同时更新服务端维护的接收方用户的最新版本号,并将只携带版本号的消息发送给发送方设备,使发送方设备的最新版本号和服务端同步。 ② 接收方的在线设备接收到消息后

C#-VS程序集

筅森魡賤 提交于 2020-02-01 08:26:58
程序集即代码组,可以是单个文件或多个文件,按一个整体部署,但可指定自身调用其他程序集的版本。 推出原因 为解决dll地狱而推出,也可解决其他问题。dll地狱,a应用使用dll版本1,b应用使用dll版本2,传统的com(一般用dll执行)模式,会自动调用最新版本的dll,如果这个dll不向后兼容(大多dll都不向后兼容),导致装了b应用后,a应用不能使用。 .net模式,在程序集中,指定使用哪个版本,在调用时,默认使用指定的版本,解决了dll地狱问题。 程序集信息 主版本,次版本、修订号、内部版本号 公司公钥 程序集人类友好名称 程序清单。包含在一个可执行文件中,或表示为一个独立的文件。 提供的自定义类型 引用其他程序集的信息。名称、版本、区域性和公钥。 类型元数据。程序集提供给外部使用的自定义类型 msil代码。各种语言最终被编译成的代码,这代码能被clr执行 资源。通常指图片、本地化翻译文本等被塞入程序集的所有其他文件。 构建程序集 写入上述程序集信息,还可以自定义特性,设置一般特性是[assembly:AttributeName("AttibuteValue")]注意不是语言的一部分,但在程序文件中,不用分号。要引用system.Reflection空间。程序集信息也可以在VS的解决方案管理器,项目文件,右键属性设置。 创建单文件程序集 用csc 程序集文件名 或VS的生成

深入理解JVM:类文件结构

不羁岁月 提交于 2020-01-31 15:17:45
一、 在java诞生的时候就有一个口号:“一次执行,到处运行!”。字节码实现了这部分功能。 注意 :JVM不和包括java在内的任何语言绑定,它只与Class文件这种特定的二进制文件格式所关联。 其他语言可以通过编译器生成字节码文件,然后再jvm上面运行。 二、Class文件 任何一个Class文件都对应这唯一一个类或者接口的定义信息,但反过说不正确。 Class文件是一组以8位字节为基础单位的二进制流,各个数据项目严格按照紧凑地排列再Class文件之中,中间没有增加任何间隔符。 Class文件格式采用一种类似于C语言结构体的伪结构体存储数据,这种伪结构体只有两种数据类型: 无符号数和表 无符号数属于基本数据类型,以u1、u2、u4、u8来表示1到8字节的无符号数。 表是由多个无符号数或者其他表作为数据项构成的复合数据类型。 整个Class文件本质上就是一张表,习惯上以“_info”结尾。 ClassFile { u4 magic; //Class 文件的标志 u2 minor_version;//Class 的小版本号 u2 major_version;//Class 的大版本号 u2 constant_pool_count;//常量池的数量 cp_info constant_pool[constant_pool_count-1];//常量池 u2 access_flags;/