1.集中式版本控制 svn 中央服务器 所有的版本数据都存在服务器上,用户本地只有自己所同步的版本,如果不联网的话,用户就看不到 SVN是集中式版本控制系统,版本库是集中放在中央服务器的 而工作的时候,用的都是自己的电脑,所以首先要从中央服务器得 到最新的版本,然后工作,完成工作后,需要把自己做完的活推送到中央服务器。集中式版本控制系统是必须联网才能工作,对网络带宽要求较高。 2.分布式版本控制 Git 每个人都拥有全部的代码!安全隐患! Git是分布式版本控制系统,没有中央服务器 每个人的电脑就是一个完整的版本库,工作的时候不需要联网了,因为版本都在自己 电脑上。协同的方法是这样的∶比如说自己在电脑上改了文件A,其他人也在电脑上改了文件A,这时,你们两之间只需把各自的修改推送给对方,就可以互相看到对方的修改了。 Git是目前世界上最先进的分布式版本控制系统。 |
淘宝镜像下载
淘宝镜像下载
CNPM Binaries Mirror
命令
Git Bash : Unix与Linux风格的命令行,使用最多,推荐最多
Git CMD : Windows风格的命令行
Git GUI:图形界面的Git,不建议初学者使用,尽量先熟悉常用命令
Git GUI:图形界面的Git,不建议初学者使用,尽量先熟悉常用命令
基本的Linux命令学习
1 ) 、cd:改变目录。
2 ) 、 cd ..回退到上一个目录,直接cd进入默认目录
3 ) .pwd:显示当前所在的目录路径。
4 ) 、ls(II):都是列出当前目录中的所有文件,只不过lK(两个II)列出的内容更为详细。
5 ) 、touch :新建一个文件如touch index.js就会在当前目录下新建一个index.js文件。
6 ) .rm:删除一个文件, rm index.js 就会把index.js文件删除。
7 ) 、 mkdir:新建一个目录,就是新建一个文件夹。
8 ) 、rm -r︰删除一个文件夹, rm -r src删除src目录
rm -rf / 请勿在Linux中尝试!删除电脑中全部文件
9 ) 、mv移动文件, mv index.html src index.html是我们要移动的文件, src是目标文件夹,当然,这样这样写,必须保证文件和目标文件夹必夹在同一目录下。
10 ) 、reset重新初始化终端/清屏。
11 )、 clear清屏。
12 ) 、history查看命令历史。
13 )、 help 帮助。
14 ) 、exit退出。15 )、#表示注释
查看本地配置 | git config -l |
查看系统配置 | git config --system --list |
查看用户自己的配置 | git config --global --list |
配置用户名 | git config --global user.name "wangwenchao" |
配置密码 | git config --global user.email "1003744226@qq.com" |
Git本地有三个工作区域
工作目录(Working Directory )、暂存区(Stage/Index)|、资源库(Repository或Git Directory)。
如果在加上远程的git仓库(Remote Directory)就可以分为四个工作区域。
. Workspace :工作区,就是你平时存放项目代码的地方 . Index / Stage:暂存区,用于临时存放你的改动,事实上它只是一个文件,保存即将提交到文件列表信息 ·Repository:仓库区(或本地仓库),就是安全存放数据的位置,这里面有你提交到所有版本的数据。其中HEAD指向最新放入仓库的版本 . Remote :远程仓库,托管代码的服务器,可以简单的认为是你项目组中的一台电脑用于远程数据交换本地的三个区域确切的说应该是git仓库中HEAD指向的版本: |
git工作流程
本地仓库创建
本地搭建 | |
1.初始化项目 | git init |
克隆远程仓库 | |
克隆仓库 | git clone https:www.baidu.com |
2.查看命令 | git status |
2.添加所有文件到暂存区 | git add . |
4.提交暂存区中的内容到本地仓库 -m 提交信息 | git commit -m |
5.提交到远端 |
使用码云
1.在git的.ssh文件夹 | 删除所有文件 |
2.在.ssh文件夹下生成密钥 | ssh-keygen -t rsa |
3.把密钥注册到码云 | id_rsa.pub里面的粘贴在公钥输入框 |
4.在码云创建仓库 | |
5.把远程项目克隆到本地 | git clone https://gitee.com/wwc666/express-shopping-mall.git |