git学习
Git学习这里还有一个很好的总结网站:https://mp.weixin.qq.com/s/Q_O0ey4C9tryPZaZeJocbA
概述
git在实际开发中的运用场景非常多,比如:备份,代码还原,协同开发,追溯问题代码的编写人和时间。
==版本控制器的方式==
a.集中式版本控制工具,比如:svn,cvs
b.分布式版本控制工具,比如:git
二者的差别很大,集中式中,版本库是存放在中央服务器中的,需要的代码都是提交到中央服务器或从中央服务器下载;分布式中则没有中央服务器,会有一个共享服务器,每台电脑都有自己的本地仓库存放着自己的一个完整的版本库。
git的配置==设置用户信息==
当不跟设置信息的名称时就是查询用户的信息
给常用命令设置一个别名#创建一个.bashrc文件,在里面设置别名touch ~/.bashrcvim .bashrcsource ~/.bashrc
获取本地仓库
新建一个目录作为本地仓库,这里直接在桌面建一个git_test目录
用 git init 初始化本地 ...
反序列化
记录一下反序列化相关的函数
这篇文章蛮好的:PHP-反序列化(超细的) | spaceman’blog (gitee.io)
常见的魔术方法
__construct() :当对象被创建时触发
__destruct() :当对象被销毁时触发
__toString() :当对象被当作一个字符串使用时触发
__sleep() :序列化对象前调用(其返回需要是一个数组)
__wakeup() :反序列化恢复对象前调用,当字符串表示的对象属性个数大于真实个数时会跳过该函数执行
__call() :当调用对象不存在的方法时自动调用
__get() :从不可访问的属性读取数据时调用,或者不存在的属性
__invoke() :把一个实例对象当作函数使用时被调用
__clone() : 进行对象clone时被调用,用来调整对象的克隆行为
__callStatic() :调用不可访问或不存在的静态方法时自动调用
__isset() :在不可访问的属性上调用 isset() 或 empty() 时触发
__set() :当给不可访问或不存在属性赋值时被调用
__unset() :在 ...
配置GitHub图床
采用PicGo来配置GitHub图床转到picgo的GitHub图床设置来看配置信息:
我们新建一个仓库来存放图片,比如我开了一个image的仓库,那格式就为<github用户名>/image
分支名以前默认是master,现在是main,如果不创建其他分支填main就好
token是最重要的一步,用来识别你的身份,创建token的时候一定要勾选repo选项不然会上传失败,报各种权限不足。。。
最后在图床上面上传一张图片看是否能成功
如果要和typora一起用直接在偏好设置中设置使用picgo上传即可。
hexo blog 搭建
这篇文章记录一下blog的搭建
准备工作
github账号
安装git
安装nodejs
这些安装找个教程即可
npm修改全局包位置这里是为了不占用c盘的空间,npm安装的包默认在c盘
这里了解了几个命令:
npm root -g // 查看全局包的安装目录npm list -g --depth 0 // 查看全局安装过的包
npm list命令可能会报错,这时候更新一下npm就可以了
npm update -g –verbose
npm安装分为两类:全局包和项目包
全局安装: 包被安装到了系统目录(一般在系统盘的node_modules中)。
命令:npm install -g 包名 或者 npm install 包名 -g
项目安装(或者叫本地安装),包安装在当前项目的根目录下(与package.json同级)的node_modules中。
命令:npm install 包名
步骤:
在要安装依赖的目录下新建两个文件夹
在cmd中执行下面两条指令:
npm config set prefix"nodeglobal路径"n ...