版本控制Git,你了解多少

目录

1、版本控制

1.1、本地版本控制

1.2、集中版本控制 - -SVN

1.3、分布式版本控制 - -Git

2、核心知识

3、基础文件命令

4、基础配置

4.1、查看配置 :git config -l

4.2、系统配置:git config --system --list

4.3、本地配置:git config --global --list

4、项目搭建

4.1、本地仓库搭建

5、基本操作命令

5.1、基本步骤实现

5.2、提交日志的相关命令

5.3、回退版本

5.4、添加文件至忽略列表

5.5、忽略文件的常见格式

5.6、删除一次提交

5.7、误删后如何恢复


Git是一个开源的分布式版本控制系统,可以有效、高速地处理从很小到非常大的项目版本管理。

在团队开发中git是必不可少的,它是目前为止最流行的版本控制工具

1、版本控制

版本控制:是在开发过程中用于管理我们对文件、目录、工程等内容的修改历史,方便查看历史更改纪录,备份以便以前的版本。

  • 实现跨区域多人协同开发

  • 追踪和记载一个或多个文件的历史记录

  • 保护源代码和文档

  • 统计工作量

  • 并行开发,提高效率

  • 追踪记录整个软件的开发过程

1.1、本地版本控制

记录文件的每次更新,可以对每个版本做一次备份,适合个人

1.2、集中版本控制 - -SVN

所有版本数据都保存在服务器上,协同者从服务器上同步更新或上传自己的修改

需要联网才可以看到

集中式版本控制系统,都有一个统一的版本号,放在一个统一的服务器上,工作时把最新的版本的代码拉取到电脑上,代码完成后在把写完的代码推送到服务器上,由于所有的操作都需要服务器的支持,对网络要求比较大,而且如果服务器里的数据出了问题,那么所有的数据都会丢失,本机客户端仅保存当前版本的信息。

1.3、分布式版本控制 - -Git

分布式版本控制系统,每个人的电脑都相当于服务器,当你拉取仓库的代码后,你的电脑就是一个完整的版本库,工作时不需要联网,所有版本都在自己的本机里,当你想把自己的代码提交到主仓库时,只需要在联网时合并推送到主仓库就可以了。

2、核心知识

git在本地分为三个区域,分别为工作区、缓存区和资源区(本地),其实还有一个远程的一个仓库区,但不在本地就不做过多解释

 

工作区:平时放项目代码的地方,包括git已经管理的文件区域和新增以及修改的文件区域

缓存区:用于临时存放改动的代码,它本质上是一个文件,把工作区的部分或者全部已经确认需要保存的文件提交至暂存区,先保存一下,如果确认好了可以直接提交到本地仓库中,如果暂时不能做决定可以暂时先放到暂存区,等待下一步操作。

资源区:又称作版本库或仓库区,将某一个历史节点的保存文件列表当做是一个版本,这里面有你提交到所有版本的数据,其中的HEAD指针默认指向最新放入仓库的版本

仓库区:远程的仓库,托管代码的服务器,可以是Gitee、GitHub

git的工作流程:

  1. 在工具区中增加或修改文件

  2. 将新的版本代码添加到缓存区 git add .

  3. 将缓存取得文件提交到远程仓库 git commit

 

3、基础文件命令

Git Bash :命令和Linux相似

  • cd :改变目录

  • cd . . :回退上一级目录

  • pwd :显示当前所在目录路径

  • ls\ll :列出当前目录中的所有文件

  • touch : 新建一个文件

  • rm :删除一个文件

  • mkdir :新建一个文件夹

  • rm -r :删除一个文件夹

  • mv :移动文件

  • reset :清屏、初始化

  • clear :清屏

  • history :查看历史命令

  • exit :与i出

4、基础配置

设置用户名和密码:

 git config --global user.name "moon"      // 设置全局用户名
 git config --global user.email "2597213671@qq.com"    // 设置邮箱

这里的 --global 为全局配置,如果要在特定的的项目中使用不同的名称,那就不使用该参数,只为当前所在仓库配置。

Git相关的配置文件:

  1. 全局配置文件:C:\Users\你的用户名\.gitconfig

  2. 系统配置文件:你的安装目录\Git\etc\gitconfig

4.1、查看配置 :git config -l

4.2、系统配置:git config --system --list

查看系统配置

4.3、本地配置:git config --global --list

查看当前用户配置

4、项目搭建

4.1、本地仓库搭建

两种方式:

创建一个新仓库

你需要新建一个存放版本库的目录,然后进入到该目录所在路径,然后执行:

如果在目录中看到包含有.git的隐藏目录,那就证明创建成功

# 在当前目录新建一个Git代码库
 git init

克隆远程仓库

 # 克隆一个项目和它的所有版本信息
 git clone [url] # https://gitee.com/xuande-hk/xuande-hk.git

5、基本操作命令

用git命令控制git工作目录下文件状态的转换

1、git add (工作区 - -> 暂存区)

2、git commit (暂存区 - -> 本地仓库)

 

Clone:克隆,就是将远程仓库复制到本地仓库 Push:推送,就是将本地仓库代码上传到远程仓库 Pull:拉取,就是将远程仓库代码下载到本地仓库,并将代码 克隆到本地工作区

5.1、基本步骤实现

1、创建——touch ttt.txt

2、查看状态——git status

3、将文件所有的修改添加到暂存区——git add 文件名|通配符.

3、提交文件到仓库——git commit -m "注释内容"

4、查看文件提交日志——git log

5、文件修改后的提交——git commit -m "update ttt"

1)创建文件,查看状态

目前文件位于本地仓库下

2)文件添加到暂存区

3)暂存区提交到本地仓库

4)查看文件提交日志

5)文件修改后重新提交

5.2、提交日志的相关命令

命令形式:git log [option]

option:

  • --all:显示所有分支

  • --pretty=oneline:将信息提交为一行

  • --abbrev-commit:使得输出的更简短

  • --graph:以图的形式显示

1)git log命令

提交次数过多的话,信息太过钻乱

2)git log --pretty=oneline命令

设置行数为一行

3)git log --pretty=oneline --abbrev-commit命令

优化

git log --pretty=oneline --abbrev-commit --all

5.3、回退版本

版本切换命令:git reset --hard [commitID]

将命令输入后,版本会回退到文件创建状态,修改的内容就没了

查看已经删除的提交记录

git reflog

5.4、添加文件至忽略列表

1)创建一个.gitignore文件

 

2)输入内容*.a

表示后缀名为.a的文件不需要git管理

 

5.5、忽略文件的常见格式

 # 所有以.a 结尾的文件讲被忽略(递归)
 *.a
 # 不管其他规则怎样,强制不忽略  lib.a
 !lib.a
 # 只忽略 文件 TODO (注意这里是文件)
 /TODO
 # 忽略 build文件夹下所有内容(递归) 这里是文件夹
 build/
 # 忽略 doc 目录下以 *.txt 结尾的文件 (不递归)
 doc/*.txt
 # 忽略 doc 目录下以 *.pdf 结尾的文件 (递归)
 doc/**/*.pdf

5.6、删除一次提交

1)git log找到要删除的提交的上一次提交的id

2)命令:git rebase -i 9a3f2a7e0e5d39ff0e2527b42f6fb10c00b4a758

3)输入i进入编辑模式

将pick改成drop

 

5.7、误删后如何恢复

查看日志找到提交id

回退:git reset --hard 08428f6

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 1
    评论
git版本控制是一种用于管理软件开发的工具,它可以追踪和记录代码文件的修改历史,并提供了一些特性和功能来协作开发、组织代码和处理代码冲突。 首先,git版本控制允许开发人员创建一个代码仓库,用于存储和管理源代码。开发人员可以在此仓库中创建不同的分支,用于不同的开发任务和功能开发。这样,每个开发人员可以在自己的分支上独立工作,并将自己的修改合并到主分支上。 其次,git版本控制可以记录每个代码文件的修改历史。当开发人员对某个文件进行修改时,git会自动跟踪这些修改,并将其存储为一个提交记录。这样,开发人员可以随时查看每个文件的修改历史,并了解每个修改的详细信息。 此外,git版本控制还提供了一些特性和功能来协作开发。比如,开发人员可以通过在代码仓库中创建一个合并请求来向团队成员展示自己的代码修改,并请求合并到主分支上。团队成员可以针对这个合并请求进行评论和讨论,并最终决定是否接受这个修改。 最后,git版本控制可以帮助解决代码冲突。当多个开发人员同时对同一个文件进行修改时,可能会发生冲突。git可以检测到这些冲突,并提供一些工具和命令,帮助开发人员解决冲突并合并各自的修改。 总之,git版本控制是一种强大的工具,可以帮助开发人员更好地管理和协作开发代码。它提供了多个功能和特性,可以追踪代码的修改历史、协作开发、组织代码和解决冲突。

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值