企业级开发——Git使用

一 Git介绍

1 什么是版本控制

版本控制是指对软件开发过程中各种程序代码、配置文件及说明文档等文件变更的管理,是软件配置管理的核心思想之一。

2 为什么使用版本控制

采用手动复制的方式管理版本,会造成版本管理混乱,而通过版本控制管理,能记住针对软件的每一次改动,能够比较查看不同版本之间的异同,并且可以恢复到之前的任一版本;

有利于团队开发,能让团队中的成员了解到代码的最新情况,避免重复劳动,也便于解决代码冲突问题。

一些常用的版本控制软件包括:Git、SVN、CVS、TFS等

3 Git介绍

Git是一个开源的分布式版本控制系统,是 Linus Torvalds 为了帮助管理 Linux 内核开发而开发的一个开放源码的版本控制软件。

3.1 下载和安装

https://git-scm.com/

安装后,使用如下命令验证是否可以正常使用:

C:\Users\renrui>git --version
git version 2.35.1.windows.2

3.2 Git基本架构

工作区:就是你在电脑里能看到的目录。

暂存区:英文叫stage, 或index。一般存放在 ".git目录下" 下的index文件(.git/index)中,所以我们把暂存区有时也叫作索引(index)。

版本库:工作区有一个隐藏目录.git,这个不算工作区,而是Git的版本库。

二 本地仓库

1 基本使用

1.1 配置用户和邮箱

用于记录提交是谁完成的,注意,此处配置的用户名和邮箱不会进行验证

git config --global user.name "renr"
git config --global user.email "123444@aliyun.com"

1.2 初始化仓库

1)创建本地仓库的文件夹
mkdir mysys
2)初始化仓库

先切换到仓库文件夹,再初始化

D:\>cd mysys

D:\mysys>git init
Initialized empty Git repository in D:/mysys/.git/

初始化空仓库后,会生成一个.git目录

3) 将工作空间的修改添加到暂存区

在仓库中新建hello.txt文件

然后执行git add 命令

D:\mysys>git add hello.txt
4)暂存区内容提交到仓库
D:\mysys>git commit -m "create hello.txt"
[master (root-commit) f35de6b] create hello.txt
 1 file changed, 1 insertion(+)
 create mode 100644 hello.txt

-m 后面表示本次提交的说明

创建Git版本库时,Git自动为我们创建了一个master分支,所以,git commit就是往master分支上提交更改。

注意:修改文件内容后,需要再次执行add和commit命令

修改没有提交到暂存区时,如果想撤销修改,可以使用git checkout hello.txt命令操作

2 其他命令

2.1 查看仓库状态

git status

对文件进行修改,通过git status查看状态

2.2 对比查看修改了什么内容

git diff

2.3 查看修改的历史记录

git log

2.4 版本回退

git reset [--soft | --mixed | --hard] ,默认--mixed

1)--mixed

回退到指定版本后,该版本之后的修改放在工作区,没有放在暂存区,即回退了commit和add操作

注意:打开文件查看,其内容没有变化

2)-- soft

回退到指定版本后,该版本之后的修改放在暂存区,即回退了commit操作

注意:打开文件查看,其内容没有变化

3)--hard

回退到指定版本后,该版本之后的修改都会删除

注意:查看文件,发现文件中内容显示的是上个版本内容

2.5 撤销提交

git revert

通过该命令可以撤销某次提交,撤销提交时,原来的提交记录还会保留,同时会生成一个新的提交

弹出交互式页面,输入 :q,退出

如果revert时,不想自动生成新的提交,可以使用-n选项,比如 git revert -n head

查看日志,发现新生成了一个提交,查看文件,内容回退到上个版本

revert中间的某次提交时,可能会存在冲突

评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值