版本控制服务器-git

前言

Git是一个免费的、分布式的版本控制工具,或是一个强调了速度快的源代码管理工具。每一个Git的工作目录都是一个完全独立的代码库,并拥有完整的历史记录和版本追踪能力,不依赖于网络和中心服务器

1、Git内文件的三中状态

对于任何一个文件,在Git内都有三种状态:

已提交(commited),已修改(modified),已暂存(staged)

已提交表示文件已经被安全的保存在本地数据库中

已修改表示修改了某个文件,但还没有提交保存

已暂存表示吧已修改的文件存放在下次提交时要保存的清单中

文件流转的三个工作区域:Git的工作目录,暂存区域。以及本地仓库

 

工作目录:

工作目录就是写代码的地方,如果有增、删、改文件都是在工作目录发生变化。工作目录的文件可以通过git add命令将文件提交到暂存区

暂存区

所谓的暂存区域只不过是个简单的文件,一般都放在 Git 目录中的index文件(.git/index)中。有时候我们会把这个文件叫做索引文件,不过标准说法还是叫暂存区域。暂存区就是用来临时存储代码的一片区域,是已经修改了但是还没有提交,将来可以提交到本地库也可以撤回来。通过git commit 命令可以将暂存区的文件提交到本地仓库

本地库

每个项目都有一个 Git 目录(注:如果 git clone 出来的话,就是其中 .git 的目录;如果git clone --bare 的话,新建的目录本身就是 Git 目录。),它是 Git 用来保存元数据和对象数据库的地方。该目录非常重要,每次克隆镜像仓库的时候,实际拷贝的就是这个目录里面的数据。本地库就是存储的实实在在的历史版本,可以通过git push命令来将本地库的文件推送到服务器

2、git工作流程如下

1、在工作目录中修改某些文件

2、修改文件快照后将文件保存到暂存区

3、提交更新,将保存在暂存区的文件快照永久转储到git目录中

已提交(committed):表示数据文件已经顺利提交到Git版本库中。

已修改(modified):表示数据文件已经被修改,但未被保存到Git版本库中。

已暂存(staged):表示数据文件已经被修改,并会在下次提交时提交到Git版本库中

 3、搭建git服务器

1、环境

主机ip角色
ip5192.168.1.5server
ip6192.168.1.6client

2、安装软件

在两台主机上用yum安装git

yum -y install git

查看git版本

git --version

 3、服务器用户创建空仓库

创建git账号

useradd git
echo git:123456 | chpasswd

创建版本库

版本库又名仓库,可简单理解为一个目录,该目录里所有文件都可以被Git管理起来,每个文件的修改、删除,Git都能跟踪,在将来某个时刻可以“还原”。

 基本思路是:先创建一个空目录,如目录project.git作为仓库的存放位置。运行”git init”把这个目录变成Git可以管理的仓库,当前目录下多了.git文件夹(默认隐藏)

 切换到git账号,然后创建一个项目仓库project.git

su - git              #切换用户
  
mkdir project.git     #创建仓库名称
 
ls                查看

cd project.git

git init --bare       #初始化仓库

4、linux客户端初始化测试

创建工作目录,拉取库到本地

mkdir git

cd git

git clone git@192.168.1.5:/home/git/porject.git

 查看 ll

本地给新项目增加文件

给project项目增加一个文件 

cd project

echo "no.1" > 1.html

git status         #查看状态

第一次查看文件还没有存放在暂存区

5、增添到暂存区

使用git add 吧新创建的文件加入到git暂存中 

git add .

再一次查看文件状态

要是需要修改就用 git rm --cached 文件      将文件从暂存区删除但是不会删除文件

6、提交到本地仓库

使用git commit吧缓存区的文件增加到本地仓库

git commit -m "no.1"     #-m 后面增添的是备注信息

请输入个人信息

git config --global user.name "lisi"

git config --global user.email "123456@11.com"

 重新提交修改到本地仓库

git log查看日志

 到此为止自己的本地仓库就提交结束了,之后就是提交到远程仓库了

7、确定本地仓库和远程仓库的状态是否正常

git remote -v 查看本地存储的远程主机信息,如果是clone出来的项目这个结果如下

 说明:

origin表示的是远程仓库的别名,默认为orgin,以后提交代码只需要使用origin这个别名即可

8、git初始化

git clone、git init

 git通常有两种方式来进行初始化:git clone和 git init

1、git clone: 当你已经有一个远程的git版本库,只需要在本地克隆一份

2、git init和git remote:这种方式稍微复杂一些,当你本地创建了一个工作目录,你可以进入这个目录,使用git init命令进行初始化,Git以后就会对该目录下的文件进行版本控制。这时候如果你需要将它放到远程服务器上,此时你就可以利用 git remote add 命令来增加一个远程服务器端,例如' git remote add test ssh://git@192.168.1.11/home/git/project.git '这条命令就会增加URL地址为' ssh://git@192.168.1.11/home/git/project.git ',名称为test的远程服务器,以后提交代码的时候只需要使用test别名即可

列如

mkdir /git_test

git init /git_test

cd /git_test

git remote add test ssh://git@192.168.1.5/home/git/project.git  #增加远程库

git ermote -v      查看

 

 9、git基本命令

1、git pull:从版本库将代码拉到本地

2、git add:将所有改动的文件放到暂存区,由git进行管理

3、git rm:从当前工作空间中和暂存区中删除文件

4、git commit:提交当前工作空间的修改内容到本地仓库

5、git push:将本地commit的代码更新到远程版本库中,

6、git log:查看历史日志

 

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值