- 博客(21)
- 问答 (2)
- 收藏
- 关注
原创 我的Git手册(踩坑汇总)
Q1 文件名修改大小写Git不识别Git默认大小写不敏感。在控制台输入以下命令,可以发现默认是false:git config --get core.ignorecase //false这意味着你将文件名字更改了大小写,git status的时候并不会看到这一项修改,你push到远程仓库上的代码中文件名字也并没有修改,部署的时候就可能出现模块解析报错!!那么怎么让Git识别呢?推荐做法:不要直接修改文件名,而是通过git mv来修改文件名。如下:git mv sample.js Sa
2022-01-25 14:19:41
234
原创 密码学101:应用技术
4.1 PGP——密码技术的完美组合本章以密码软件PGP(Pretty Good Privary)为题材,思考一下将前面章节所学习的密码技术进行组合的方法。PGP简介:1990年左右由菲利普季默曼个人编写的密码软件。PGP可以在Windows、Mac OS X、Linux等很多平台上运行,版本包括商业版和免费版。PGP具有现代密码软件所需要的几乎全部功能:对称密码、公钥密码、数字签名、单向散列函数、证书、压缩、文本数据、大文件的拆分与拼合、钥匙串管理。OpenGPG是对密文和数字签名进行定义的标
2021-12-07 15:22:22
2904
1
原创 密码学101:密钥、随机数
3.1 密钥——秘密的精华本章总结:什么是密钥 各种不同的密钥 密钥的管理在此基础上:Diffie-Hellman密钥交换 基于口令的密码 如何生成安全的口令3.2 随机数——不可预测性的源泉
2021-11-30 16:28:50
4223
原创 JavaScript模块(二)
P.S. 由于参考文章是2016年的文章,有些知识需要更新。所以这篇文章还会继续更新。什么是模块打包(module bundling)从一个high-level的角度说,模块打包指的是以正确的顺序把一组模块处理成一个单独的文件。进一步来看,如果没有模块打包,我们必须在HTML文件中插入<script>标签来加载每个模块,页面加载时间将会变得很长吧。为了解决这个问题,我们对模块进行打包,或者说拼接,而不是单独引入每个模块。另一方面,我们还可以对文件进行压缩,从源码中去掉一些不必要的.
2021-11-25 13:25:34
464
原创 JavaScript模块(一)
什么是模块我们总是希望将一份工程代码划分为多个模块。试想一下,如果你的工程是一块铁板,你想要在其中做一点简单的改动,就不得不重新编译运行整个工程。对于规模不断变大的工程软件来说,这对开发、debug到后期维护都是非常不友好的。好的模块具有非常好的自给自足(self-contained)的特性,新增、删除、修改它们都不会中断到整个工程的运作。为什么要使用模块正如上一小节所说,模块将工程软件很好地划分成多个部分,每个模块负责各自的功能,这很好地优化了开发流程,使得构建大型项目成为可能。简单来说,模块
2021-11-24 18:07:55
461
原创 密码学101:认证
2.1单向散列函数通过单向散列函数计算信息的指纹,通过验证指纹判断信息是否被篡改,即完整性,或称一致性。什么是单向散列函数单向散列函数(one-way hash function)有一个输入和一个输出,其中输入称为消息(message),输出称为散列值(hash value)。单向散列函数把输入作为纯粹的比特序列来处理。散列值的长度与消息的长度无关,单向散列函数总会计算出固定长度的散列值。单向散列函数的性质根据任意长度的消息计算出固定长度的散列值 能够快速计算散列值 消息不同散列值也
2021-11-24 11:31:47
3612
原创 密码学101:密码
本文是《图解密码技术》阅读的总结性文章。历史上的密码现代的密码通常用于计算机数据的加密,操作的是比特序列。但早在计算机诞生之前,加密技术就已经被使用了。历史上使用过的密码有这些:凯撒密码: 算法:通过将字母按照字母表顺序进行平移的方式对文本进行加密;反平移解密 密钥:平移的位数 缺点:可以通过暴力破解破译 简单替换密码: 算法:通过一对一的字母替换表,将字母进行替换;反替换解密 密钥:26! 特点:明文中字母的出现频率与密文中的字母的出现频率一致 缺点:由于密钥空间
2021-11-11 17:56:42
2195
原创 我的Git手册(三)
这篇文章将总结Git中的分支操作。概述几乎所有的版本控制系统都以某种形式支持分支。Git的分支模型尤为出众,轻量且快速。首先我们来回顾一下Git存储数据的方式,Git保存的不是文件的变化或差异,而是一系列不同时刻的快照。在进行commit操作时,Git会保存一个提交对象。...
2021-11-07 16:39:05
548
原创 我的Git手册(二)
获取Git仓库有两种方式获取Git项目仓库:将尚未进行版本控制的本地目录转换为Git仓库cd /home/user/my_project git init 从其他服务器clone一个已存在的Git仓库
2021-11-04 18:01:56
85
原创 我的Git手册(一)
概述Git是一个免费且开源的发布版本控制系统,使用它可以快速有效地控制大小项目的一切。它的性能远远超过其他的源码管理工具(SCM tools)如Subversion,CVS,Perforce,ClearCase。拥有开销小的本地分支、便利的staging区、多工作流等等特性。主要特性1. 分支与合并Git可以让你在本地创建多个相互独立的分支,分支的创建、合并和删除操作都非常快。当你要推送代码到远程仓库时,你可以选择只推送部分分支而不是全部。这意味着:无阻力上下文切换。你想要尝试一个想法所
2021-11-04 13:11:42
74
原创 [总结] HTML(一)
参考文章:MDNHTML总结HTML(HyperText Markup Language)是一种用来告诉浏览器如何组织页面的标记语言。它由一系列元素组成。基本概念1)块级元素与内联元素 块级元素通常用于包裹结构化内容,独占一行,不会被内联元素包裹,但可以被其他块级元素包裹。内联元素则通常出现在块级元素中包裹一小部分内容,内联元素不会导致文本换行。2)空元素...
2019-03-21 20:35:31
185
原创 [总结] CSS(一)
CSS总结从High-level看待CSS结构CSS(Cascading Stylesheet)中,样式从CSS文档顶部级联到底部。{}内部属性(property)也存在级联特性。 优先级(Specificity) 选择器(Selectors) 复合选择器(Combining Selectors) 样式分层,当两个元素共有一些属性的时候,将这些属性单独提出来。 常用的属性值(Co...
2019-03-17 12:22:39
100
原创 [总结] 前端学习资料
很多前端初学者的学习都是从二手博客开始的,虽然能很快入门,但是这些二手资料并不完整也并不一定准确。我认为掌握获取一手资料的方法,并能进行自主学习是很重要的。因此,我对学习资料进行了一个汇总。官方网站W3C官网 W3C(World Wide Web Consortium)是万维网国际标准组织。通过制定标准督促世界各地的开发者遵照标准进行开发,保障网络信息流通顺畅。 W3CSchool...
2019-03-16 23:46:07
275
原创 理解JS异步操作
参考文章:阮一峰ES5教程:异步操作—— 理解异步操作的基本模式和控制流程,了解定时任务的实现,Promise的用法 前端需要了解的浏览器原理(占坑) Inside look at modern web browser (part 1)—— 该系列文章一共4节,详细介绍了浏览器的工作原理。建议先看part1,然后看过参考文章4后,还想要更加深入全面地了解浏览器再看part2-4。 浏...
2019-03-12 10:37:54
5428
2
原创 [笔记] 应用层协议(HTTP)
要编写两个用于网络通信的应用软件,程序员必须会考虑几个问题:传输的信息的语法和语义 客户端或者服务器端是否可以开始通信 当通信出错时怎么办 什么时候结束通信为了规范这些细节,程序员编写了应用层协议。应用层协议根据用途划分主要分为两大类:Private communication. Standardized services.这个很好理解,对于互联网服务来说,如果你是私人用途的...
2019-01-13 17:26:06
240
原创 [Leetcode] 747.至少是其他数字两倍的最大数
题目:在一个给定的数组nums中,总是存在一个最大元素 。查找数组中的最大元素是否至少是数组中每个其他数字的两倍。如果是,则返回最大元素的索引,否则返回-1。示例 1:输入: nums = [3, 6, 1, 0]输出: 1解释: 6是最大的整数, 对于数组中的其他整数,6大于数组中其他元素的两倍。6的索引是1, 所以我们返回1.示例 2:输入: nums ...
2019-01-03 10:34:33
172
原创 [Leetcode] 724. 寻找数组的中心索引
题目:给定一个整数类型的数组 nums,请编写一个能够返回数组“中心索引”的方法。我们是这样定义数组中心索引的:数组中心索引的左侧所有元素相加的和等于右侧所有元素相加的和。如果数组不存在中心索引,那么我们应该返回 -1。如果数组有多个中心索引,那么我们应该返回最靠近左边的那一个。示例 1:输入: nums = [1, 7, 3, 6, 5, 6]输出: 3解释: 索...
2019-01-02 15:39:30
225
原创 代码记录|C++Primer第五版练习题 第五章
第五章目录练习 5.12练习 5.14练习 5.17练习 5.21练习 5.12修改统计元音字母的程序,使其能统计以下含有两个字符的字符序列的数量:ff、fl和fi。方法一:#include<iostream>#include<string>#include<vector>using namespace std;i...
2018-09-14 20:51:19
335
1
原创 关于旧版本(2013/2015)Microsoft Visual Studio的卸载
下载微软官方卸载工具,已在GitHub上开源,点击这里下载。以管理员的身份运行Setup.ForcedUninstall.exe,弹出控制台窗口。窗口询问:Would you like to continue?[Y/N]输入:Y 回车程序开始运行,等待卸载完成即可。PS:如果一次没有卸载干净,可以手动卸载+多次运行该程序,直到完全清理干净。 ...
2018-09-03 23:34:32
5668
1
空空如也
代码问题| Vector内数据处理2
2018-09-11
代码问题| Vector内数据处理
2018-09-07
TA创建的收藏夹 TA关注的收藏夹
TA关注的人