git-版本控制 一、git环境 二、本地仓库 三、远程仓库 四、区域、版本、分支

git:是一种分布式的版本控制工具

集中式:SVN,所有的版本代码都只是存放到服务器上

分布式:GIT,每一个开发者都有所有的版本和日志,如果服务器坏了,其中一个开发者同步即可。

安装

windows环境:https://git-for-windows.github.io/,下载后一路双击即可

Linux环境:

##ubuantu:sudo apt-get install git

##centos:yum install git

配置

git config --global user.name lucy #你是谁

git config --global user.email lucy@xx.com #你的邮件

二、本地仓库

cd /data/lawfile  #指定仓库地址,不要在中文目录下

git init  #初始化

添加

vi index.txt  #创建一个文件

vi read.txt 

git status  #查看状态,是否有需要提交的代码

git add .   #将当前目录添加到git缓冲区

git commit -m "这是第一次提交"  #提交到git仓库

修改

vi index.txt #修改文件

git status

git add index.txt

git commit -m "modify"

删除

git rm read.txt   #删除文件

git status

git commit -m "delete"

三、远程仓库

团队开发,需要把版本仓库放到互联网上

开发者,把自己的最新版本上传到线上仓库,同时也把线上最新代码下载到本地

git remote add <别名> <远程仓库地址>  #远程仓库别名

git remote rename <旧名称> <新名称>  #修改别名

git remote remove <别名>  #删除别名

git remote  #查看远程仓库

git remote -v #查看仓库地址

公钥、私钥

将公钥放在服务器上,这样就可以免密上传、下载远程仓库中的代码了

注意:不能用http开头的地址,作为免密

1. 注册git线上仓库账号

国外:http://www.github.com

国内:http://git.oschina.net

2. 线上创建一个仓库

3. 将本地项目上传到线上

cd /data/lawfile

git push https://git*****.git master  #将本地项目上传到线上仓库中

4. 为远程仓库地址添加一个别名:origin

git remote add origin https://git******.git 

git push origin master #这样就可以使用别名来上传项目版本了

5. 克隆远程仓库中的代码

git clone https://git******.git

git add .

git commit -m "添加新的内容"

git push https://git******.git master

6. 更新代码

git pull origin master

四、区域、版本、分支

工作区、版本区

1. 工作区:开发者的工作目录

2. 暂存区:修改已被记录,但尚未录入版本库区域

3. 版本库:存储变化日志及版本信息

查看日志

git log   查看项目日志

git log <file>  查看某个文件的日志

git log .   查看当前目录的日志

git log --gretty-oneline  日志以一行显示

版本切换

git reflog

git reset --hard HEAD^    切换到第1个版本

git reset --hard HEAD^^  切换到第2个版本

git reset --hard HEAD~100   切换到100个版本

git reset --hard 2534d   指定版本

分支管理

git branch   查看分支

git branch dev  创建dev分支

git checkout dev  切换到dev分支

合并分支

git checkout master   先切到主分支

git merge dev   在主分支上合并dev分支

删除分支

git branch -d dev