版本控制服务器——Git
一、Git 简介
1.Git 特点
2.版本控制器
3.Git 工作流程
4.Git 的几个核心概念
二、基于 Linux 部署 Git 服务器
1.Git 使用
2.验证
三、使用 GitHub
1.注册账号
2.在客户端上生成密钥对
3.导入公钥密钥到 GitHub
4.创建储存空间
5.将本地项目上传到 GitHub
6.查看 GitHub 文件
7.同步远程仓库的最新状态到本地仓库
一、Git 简介
Git 是一款开源的分布式版本控制系统,可以有效、高效的处理从很小到非常大的项目版本管理。Git 是 Linux Torvalds 为了帮助管理 Linux 内核开发而开发的一个开放源代码的版本控制软件。 官网:https://git-scm.com/
1.Git 特点
优点:
- 适合分布式开发,强调个体;
- 公共服务器压力和数据量都不会太大;
- 速度快、灵活;
- 离线工作;
缺点:
- 代码保密性差,一旦开发者把整个库克隆下来就可以完全公开所有代码和版本信息;
- 权限控制不友好;如果需要对开发者限制各种权限的建议使用 SVN。
2.版本控制器
简单来说就是用来存放代码的。
- 版本控制器分为:SVN(集中式的版本控制器),Git(分布式的版本控制器)
3.Git 工作流程
简单来说就是在工作区上写代码,当要提交时,需要先将代码上传到暂存区,接着才可以将代码提交到本地仓库,当提交到本地仓库后,还可以将代码上传到远程仓库,来供其它人访问。
- Git 的几种状态: 已暂存、已修改、已提交。
4.Git 的几个核心概念
- 工作区:就是你平常存放项目代码的地方。
- 暂存区:用于临时存放你的改动,事实上它只是一个文件,保存即将提交到文件列表信息。
- 本地仓库(版本库):就是安全存放数据的位置,这里面都是你提交的所有代码信息。
- 远程仓库:就是托管代码的服务器,类似于 FTP 服务,能够共享数据。
二、基于 Linux 部署 Git 服务器
准备工作
- 注意:CentOS 7 上默认已经安装好了 Git 服务。
1.Git 使用
创建用户
[root@Git-Server ~]# useradd git # 创建 Git 用户 [root@Git-Server ~]# echo "123456" | passwd git --stdin # 创建密码 [root@Git-Server ~]# su - git # 切换到 Git 用户
创建仓库
[git@Git-Server ~]$ mkdir project # 创建目录. 用于存放长仓库 [git@Git-Server ~]$ cd project/ [git@Git-Server project]$ git init --bare # 初始化仓库
2.验证
在 Client 主机上创建工作目录
[root@Client ~]# mkdir git
拉取库到本地
[root@Client ~]# cd git/ [root@Client git]# git clone git@192.168.1.1:/home/git/project # 克隆 正克隆到 'project'... git@192.168.1.1's password: # 输入 Git 用户的密码 warning: 您似乎克隆了一个空版本库。 [root@Client git]# ls # 查看项目 project
本地给新项目添加文件
[root@Client git]# cd project/ # 进入项目路径 [root@Client project]# touch 1.txt # 创建测试文件
添加到暂缓区
[root@Client project]# git add . # 当前目录内容都会添加
查看文件状态
[root@Client project]# git status
提交到本地仓库
[root@Client project]# git commit -m "Test" # -m 选项是说明信息
配置账号和邮件
[root@Client project]# git config --global user.name "ZhangSan" [root@Client project]# git config --global user.email "ZhangSan@163.com"
重新提交修改到本地仓库
[root@Client project]# git commit -m 'Test'
确认本地仓库和远程仓库的状态是否正常
[root@Client project]# git remote add origin git@192.168.1.1:/home/git/project.git fatal: 远程 origin 已经存在。
把本地仓库代码推送到远程仓库
[root@Client project]# git push origin master
三、使用 GitHub
GitHub 是一个面向开源及私有软件项目的托管平台,因为只支持 Git 作为唯一的版本仓库格式进行托管,所以故名为 GitHub。
1.注册账号
首先在官网上注册一个账号:https://github.com/
2.在客户端上生成密钥对
[root@Client ~]# ssh-keygen -t rsa # 创建密钥对 (连敲三次回车即可) [root@Client ~]# cat .ssh/id_rsa.pub # 查看公钥
3.导入公钥密钥到 GitHub
登录验证
[root@Client ~]# ssh -T git@github.com # 需要联网状态 ... Are you sure you want to continue connecting (yes/no)? yes ... Hi ChenZhuang1217! You've successfully authenticated, but GitHub does not provide shell access.
4.创建储存空间
5.将本地项目上传到 GitHub
[root@Client ~]# mkdir Test [root@Client ~]# cd Test/ [root@Client Test]# echo "This is Test" > README.md [root@Client Test]# git init 初始化空的 Git 版本库于 /root/Test/.git/ [root@Client Test]# git add README.md [root@Client Test]# git commit -m "First Commit" [root@Client Test]# git remote add origin git@github.com:ChenZhuang1217/Test.git fatal: 远程 origin 已经存在。 [root@Client Test]# git push -u origin master
6.查看 GitHub 文件
7.同步远程仓库的最新状态到本地仓库
在 GitHub 创建新的文件
在本地仓库中拉取远程仓库的文件
[root@Client Test]# git pull -u origin master