其他分享
首页 > 其他分享> > 8.4Git(1)

8.4Git(1)

作者:互联网

Git(1)

Git 分布式版本控制系统 本地版本管理 github :公有云代码托管平台 gitlab:私有云代码托管平台

安装

windows安装git:https://git-scm.com/ 直接安装并将bin目录搭载到环境变量

linux安装git:yum install git

集中式

从中央代码服务器获取具体的代码,把代码下载到自己的本地,然后把代码,必须在有网络的情况下提交到中央服务器。典型的产品是SVN,所谓集中式的版本控制系统,只有一个中央数据仓库,如果中央数据仓库瘫痪或者是不可访问的情况下,所有的使用者无法使用SVN,无法进行提交或者备份文件。 分布式 分布式版本控制系统,在每个使用者电脑上就有一个完整的数据仓库,没有网络依然可以使用Git。当然为了团队协作,会把本地数据同步到GitLab服务器或者是GitHub等代码仓库。

配置

system:针对任意登录到Linux系统的用户⽣效

global:全局,只针对当前登录的⽤户⽣效,git配置写⼊~/.config/config local

local:本地,只针对某⼀个⽂件夹⽣效。

⼀般配置的时候,使用的是全局配置,建议使⽤全局配置的⽅式。具体配置name和email如下:

 

Git核心原理

 

操作的⼀般都是⼯作⽬录,如果执⾏了git add的命令后,那么就会从⼯作区进⼊到暂存区,如果再执⾏了git commit的命令后,等于是从暂存区进⼊到本地仓库,如果再执⾏git push,就是从本地仓库进⼊到原地仓库。本 地仓库主要记录的是所有⽂件的修改,删除,这些Git都会记录下来,⽬的是可以进⾏历史回退,追踪信息。

git init :初始化仓库(创建仓库)

 

在learnGit目录下创建index.tet,并输入Hello Git

 

在命令台中输入git add index.txt进入暂存区域

 

Git生命周期

它的生命周期可以完整的描述为: 

git init #生成git工作区 

git status #掌握git工作区的信息 

git add #确认需要添加以及跟踪的文件

git commit -m "注释信息"#提交到本地仓库

 

完整如图

 

Git的log

git log全部的提交记录

 

git log --oneline #查看简陋的信息

 

git log -1 #显示最新的一条提交记录信息

 

git log --all --graph #查看提交的版本演变

git reflog #记录git所有的操作,包含了提交以及回退

Git回退

git reset --hard

回到最初的版本

返回最新的版本

晚上上线,发现严重的问题,最后结论是本次发布取消,那么就需要版本回退,再对旧版本进行复查测试

Git标签

git tag可以理解为:这对每个版本加上一个标签。标签涉及到的命令具体可以总结为:

• git tag -a tagName -m 标签注释:创建一个标签,并且加上注释

• git tag #查看标签信息

• git log --decorate #查看标签的详细信息

• git log --oneline --decorate #命令如上是一样的

• git tag -a标签名称 commitID -m 标签注释

• git show tagName #查看标签的具体详细的信息

修改内容、版本标签后进行两者比较

Git分支管理

环境: 测试环境 开发环境 预发布环境:stage.baidu.com

线上环境:www.baidu.com

代码分支:

test :测试环境

dev:开发环境

master:主干分支,专门发布到线上(预发布/生产环境)

流程:

1、程序员在dev开发完的功能合并到test分支

2、测试这边在test测试完成后,合并到master

3、最后master 分支代码的上线

问题:开发把test合并到master后,测试还需要测试吗

答:需要 

1、合并过程中可能会出现代码的丢失

2、合并过程中会出现代码的冲突

创建分支

git branch

切换分支

git checkout

 

 

标签:git,log,--,标签,代码,Git,8.4
来源: https://www.cnblogs.com/likaiEndfate/p/16552192.html