GIt-版本
一、版本控制系统
学习目标:
yum install git -y
git --version
.Git配置分为三个方面:系统配置、全局(用户)配置、仓库配置
系统配置:--system 会在/etc下生成.gitconfig文件
用户配置:--global 会在用户家目录下生成.gitconfig文件
仓库配置:--local 会在git仓库目录下生成.gitconfig文件
[root@controller ~]# rpm -qa |grep -w "git" --查看安装
配置git:一般配置两个,用户名和email
git config --global user.name "csren2"
git config --global user.email "1062162421@qq.com"
用户配置:--global 会在用户家目录下生成.gitconfig文件
git config --list 查看git的配置
3. 初始化工作目录,作为私有仓库
1). 新建空间文件夹 mkdir git_test
[root@controller ~]# mkdir git_test
2). 进入目录,执行git init对空目录初始化
[root@controller ~]# cd git_test/
[root@controller git_test]# git init
查看仓库文件结构:tree .git
四. Git的四个区域
1. 工作目录:工作目录就是本地自己创建并初始化的git目录;如我们刚创建得git_test目录
2. 暂存区域:第一次提交数据git会在工作目录生成index文件,文件里所记录的是位于暂存区的文件;刚才初始化后.git下面操作完成会生成一个index文件,因为没有操作,目前没有
3. 本地仓库:工作目录中的object文件夹是本地仓库
4. 远程仓库:通过网络连接的数据库称为远程仓库
GIT的四种状态:
Untracked: 未跟踪, 此文件在文件夹中, 但并没有加入到git库, 不参与版本控制. 通过git add 状态变为Staged
Unmodify: 文件已经入库, 未修改, 即版本库中的文件快照内容与文件夹中完全一致. 这种类型的文件有两种去处, 如果它被修改, 而变为Modified. 如果使用git rm移出版本库, 则成为Untracked文件
Modified: 文件已修改, 仅仅是修改, 并没有进行其他的操作. 这个文件也有两个去处, 通过git add可进入暂存staged状态, 使用git checkout 则丢弃修改过, 返回到unmodify状态, 这个git checkout即从库中取出文件, 覆盖当前修改
Staged: 暂存状态. 执行git commit则将修改同步到库中, 这时库中的文件和本地文件又变为一致, 文件为Unmodify状态. 执行git reset HEAD filename取消暂存, 文件状态为Modified
查看仓库状态:cd git_test && git status
在git_test目录下,创建a\b\c三个文件;查看仓库状态,发现三个文件是untrack,这是存在工作目录中,可以通过git add使其变为track
这样操作完之后,可以在.git/下看到index
.git/index里存储的是暂存区内容,暂存的内容都会进入仓库,不会丢失(短时间内)
将本地目录下所有未提交得文件都提交到暂存区:git add .
git rm # 删除已提交到暂存区的数据
参数列表:
--cached 删除暂存区数据
-f 强制删除暂存区和工作目录数据