Git——分布式版本控制系统

目录

一、Git的定义

二、Git的安装及配置

1.Git的安装

2.Git的主要工作区域

3.创建版本库

4.查看Git状态

5.版本库状态 

三、Tag管理

四、分支管理


一、Git的定义

Git 是一个开源的分布式版本控制系统,用于敏捷高效地处理任何或小或大的项目。
Git 是 Linus Torvalds 为了帮助管理 Linux 内核开发而开发的一个开放源码的版本控制软件。
Git 与常用的版本控制工具 CVS, SVN 等不同,它采用了分布式版本库的方式,不必服务器端软件支持。
程序员在自己的电脑上编写代码,并通过 git 管理。

二、Git的安装及配置

1.Git的安装

#安装
yum -y install git
git --version

#git安装后需配置用户相关信息
#配置个人的用户名称和电子邮箱
git config --global user.name "cxk"
git config --global user.email "cxk@cxk.com"


#设置Git默认使用的文本编辑器, 一般可能会是 vi 或者 vim
git config --global core.editor vim


#查看已有的配置信息
git config --list

#如果使用 --global 选项,那么配置的用户信息会保存在当前用户家目录下的 .gitconfig 文件里, 以后所有的项目都会默认使用此用户信息。
cat ~/.gitconfig

如果要在某个特定的项目中使用其他名字或者电子邮箱,只要去掉 --global 选项重新配置即可,新的设定将会保存在当前项目的 .git/config 文件里。

2.Git的主要工作区域

  • 工作区:代码目录,就是你在电脑里能看到的目录。
  • 暂存区:工作区和版本库之间的缓存区域,一般存放在 .git 目录下的 index 文件(.git/index)中,英文叫 stage 或 index。
  • 版本库:工作区有一个隐藏目录 .git,这个不算工作区,而是 git 的版本库。

3.创建版本库

#创建版本库
#方法一:在编写代码之前创建工程
git init mypro
初始化空的 Git 版本库于 /root/mypro/.git/

ls -A /root/mypro/
.git

#方法二:对已有文件的目录进行初始化
mkdir /root/myweb
cd !$
echo '<h1>this is my web</h1>' > index.html

git init
初始化空的 Git 版本库于 /root/myweb/.git/

ls -A
.git  index.html

4.查看Git状态

 

#查看 git 状态
git status

git status -s

#将目录下所有文件都添加到暂存区,只有当暂存区有文件才能commit
git add .

git status -s

git status

#删除暂存区的文件,相当于撤销刚才的 add 操作
git rm --cached index.html

git status -s		#此时文件变成未知状态

git add index.html

5.版本库状态 

#commit提交到版本库
git commit -m "init"

git status			#此时工作区为空


#查看版本库文件
git ls-files


#将文件从暂存区和本地一起删除
git rm index.html


ls
#此时目录中 index.html 没有了

git status
#现在的状态是代码库没有了但是暂存区还有

#commit提交到版本库,彻底删除
git commit -m "rm index.html"

git status


#查看提交记录
git log

#返回到init提交时的状态
git checkout 5e15d6fe481a20018ba661aa57aaf6bb8527cd85
#类似于回滚操作

#注:不建议在返回某个历史提交的状态后对数据做修改,以防数据紊乱

#返回到最新的master状态
git checkout master

ls

#在暂存区恢复已删除的文件
cp /etc/passwd /etc/shadow /etc/hosts ./

ls

git add .
git status -s

rm -rf *

git status 

#git checkout -- *
#撤销工作区的文件改动来恢复文件
git checkout -- .

ls

三、Tag管理

可以给某一次提交打标记,如用于版本号

echo '<h1>this is my web</h1>' > index.html
git add .
git commit -m "init"


git tag 1.0

echo '<h2>hello world</h2>' >> index.html

git status -s

git add .


git tag 2.0
#将当前commit标记为2.0

git tag

四、分支管理

git 中默认有一个名为 master 的主分支,还可以创建自定义的分支。

#查看分支
git branch 

git status
#创建分支前应确保工作区是干净的


git branch b1
#创建名为 b1 的分支

git branch 
#查看分支

#切换分支
git checkout b1


git branch 


#修改分支内容
cp /etc/passwd ./
git add .
git commit -m "add passwd"

ls

#切换回master分支
git checkout master

ls

#将分支汇入主干
git merge b1 -m "merge b1 to master"

ls

#删除分支
git branch -d b1

git branch 

#可以在工作区下创建一个 .gitignore 文件,包含所有不需要 commit 到版本库中的文件名
echo abc123 > abc123.txt
mkdir mytest
cp /etc/hosts mytest/

git status 

vim .gitignore

.gitignore
#忽略 .gitignore 文件自己
*.swp
#忽略正在被 vi 编辑器打开时产生的以 .swp 为后缀的临时文件
abc123.txt
mytest/*


git status 

  • 5
    点赞
  • 9
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值