一.加密
1.对称加密
采用单钥密码系统的加密方法,加密方和解密方使用相同的秘钥(也称为单秘钥加密)
在对称加密算法中常用的算法有:DES、3DES、TDEA、Blowfish、RC2、RC4、RC5、IDEA、SKIPJACK、AES等。
优点:算法公开,计算量小,加密速度快,加密效率高
缺点:(1)在数据传送前,发送方和接收方必须商定好秘钥,然后使双方都能保存好秘钥。
(2)如果一方的秘钥被泄露,那么加密信息也就不安全了.
(3) 每对用户每次使用对称加密算法时,都需要使用其他人不知道的唯一秘钥,这会使得收、发双方所拥有的钥匙数量巨大,密钥管理成为双方的负担。

2.MD5
MD5是计算机广泛使用的杂凑算法之一(又称摘要算法、哈希算法),它将数据(如汉字)运算为另一固定长度值,是杂凑算法的基础原理,MD5的前身有MD2、MD3和MD4。
不可逆,目前有解密工具
主要应用:注册,登录,认证时使用
改进:(1)加盐,给需要加密的字符串拼接足够长,足够复杂的其它字符串再进行加密,得到密文

(2)服务器将加密后的密文随意丢弃几个字符
3.base64编码
Base64是网络上最常见的用于传输8Bit字节码的编码方式之一,Base64就是一种基于64个可打印字符来表示二进制数据的方法。

4.非对称加密
如果使用非对称加密,那么必须交换公钥
每一台电脑上都可以通过命令得到公钥和密钥,并且每台电脑上的密钥都不相同

5.SSH免密码登录(非对称加密)
(1)pc端和服务器端交换公钥,
(2)pc端通过服务器端给的公钥进行加密,并且将加密之后的密文发送给服务端,
(3)服务端接收到密文之后用自己的私钥进行解密,将解密之后的数据通过pc端给的公钥进行加密,并且将加密之后的密文返回给pc端,
(4)pc端再用自己的私钥进行解密,将解密之后的数据去与发送出的数据进行比对,实现对方身份验证.
(5)同理,服务端也通过此方法验证pc端的身份,实现免密码登录
二.GitHub使用
1.生成公钥和私钥
在C:\Users\Administrator目录下生成公钥和私钥


2.将生成的公钥设置在github上

3.将已经生成好的公钥放入.title可以随意写


4.新建仓库


5.将github 上面的仓库clone到本地(注意:在下载时会先连接,也就是将github的公钥传递到本地)



6.向远程服务器提交数据


先将创建的文件添加到暂存区域 , 然后文件从暂存区域提交到git本地仓库 , 然后再推送到远程仓库

三.第三方代码托管平台

四.模拟开发MJD项目

1.创建index文件,推送到本地仓库

2.修改了数据

将数据推送到远程仓库

3.查看提交的内容



注意:.idea文件忽略问题
每次修改文件, .idea这个文件都会相应变动, 这个文件需要忽略

解决方法:
(1) 在对应的文件夹下用命令创建 .gitignore文件(只能用命令创建)

(2)添加忽略文件


(3)上面的代码没有生效,是因为已经将 .idea 文件添加了,所以没有生效.
需要清除本缓存,然后再次提交

提交之后就只显示修改了的文件


注意 : 空文件夹无法加入到版本控制中
四 . 创建分支 , 合并分支
1.创建远程分支 ,要先在本地创建一个分支 , 切换到新创建的分支

2.创建文件,添加到本地仓库 , 再推送到远程仓库

注意 : 在本地创建的分支推送到远程仓库的命令 , 上面的命令推送失败


3.将分支中的文件合并到master中 , 可以使用命令,也可以使用在线操作




确认合并

4.合并成功 , 查看合并文件(本地和远程仓库)

五 . 删除远程分支(注意 : 在developer分支下 , 无法删除自己 , 必须切换到其他分支才能删除developer)
1 . 切换分支

2 . 删除本地分支

3 . 此时只是删除了本地分支,远程分支还在

4 . 删除远程分支


六 . 发布重要版本打标记(tag)
1.发布版本

2 . 在本地打标记 , 查看版本标记详情信息


3 . 上面的操作还只是爱本地打tag , 还必须推送到远程仓库


4 . 删除本地tags


5 . 删除远程仓库中的tag


七 . 多人开发
1 . 创建组织




2 . 在组织中创建仓库


3 . 修改已经创建的工程 , clone到本地


4 . 其中某个用户添加内容

5 . 邀请成员(主开发者邀请成员)
(1) 创建team


(2)邀请成员




(3)更改成员权限(管理员和普通成员)