Git简单使用教程

目录

一、Git简介

1. Git 的主要特点

2. 基本概念

3. Git 工作流

二、Git 使用流程

1.Git 详细安装教程

2.Git 指令

3.Git的三个区域

4.Git 文件状态

 5. Git 暂存区的使用

​编辑 6. Git 回退版本

 7. 忽略文件

 8. 分支

9. 分支-合并与删除

10. 分支-合并与提交

11.分支-合并冲突

三、远程仓库使用

1. 远程仓库的基本步骤

2. 在代码管理平台创建仓库


一、Git简介

        Git 是一种分布式版本控制系统,广泛用于软件开发以及需要版本控制的其他领域。它由 Linux 冫Kernel 的创始人 Linus Torvalds 于2005年创建,旨在支持各种 Linux 内核开发流程。Git 提供了数据保证、非线性开发、完全分布式的开发模式以及高效的分支和合并功能等特性。

1. Git 的主要特点

  • 分布式开发:每一个Git工作目录都是一个完整的代码库,并拥有完整的历史记录和版本追踪能力,不需要依赖中心服务器。
  • 快速高效:由于大部分操作都在本地完成,因此Git执行速度快,效率高。
  • 分支模型:Git有一个非常强大的分支模型,允许你快速轻松地在不同任务间切换,或者同时并行处理多个任务。
  • 数据完整性:Git使用SHA-1哈希算法来命名和识别数据对象,确保数据的完整性。
  • 非线性开发支持:通过rebase和merge等功能,Git很好地支持了非线性开发过程。

2. 基本概念

  • 仓库(Repository):用来存储项目的文件、历史记录和其他相关数据的地方。分为本地仓库和远程仓库。
  • 提交(Commit):一次提交代表了一组更改被保存到了仓库中。每次提交都有一个唯一的SHA-1哈希值作为标识。
  • 分支(Branch):分支是项目开发中的一个独立线程,可以进行不同的开发尝试而不会影响到主分支或其他分支。
  • 合并(Merge):将一个分支上的修改整合到另一个分支的过程。
  • 克隆(Clone):从远程仓库复制一份完整的副本到本地。
  • 拉取(Pull):从远程仓库获取最新的更改并与本地仓库合并。
  • 推送(Push):将本地仓库的更新上传到远程仓库。

3. Git 工作流

通常的Git工作流程如下:

  1. 克隆仓库:首先从远程仓库克隆出一份本地副本。
  2. 创建分支:为新功能或修复bug创建一个新的分支。
  3. 添加/修改文件:在新的分支上进行文件的添加或修改。
  4. 提交更改:将所做的更改提交到本地仓库。
  5. 推送到远程仓库:将本地分支推送到远程仓库,以便与其他开发者共享你的更改。
  6. 创建合并请求:如果团队协作开发,可能需要创建一个合并请求来讨论和审核代码更改。
  7. 合并分支:一旦更改被批准,就可以将其合并回主分支。

        Git提供了丰富的命令行工具来进行这些操作,同时也有很多图形界面的应用程序和IDE插件来简化Git的操作。无论是个人项目还是团队合作,Git都是一种强大且灵活的工具。


二、Git 使用流程

1.Git 详细安装教程

Git 详细安装教程(详解 Git 安装过程的每一个步骤)_git安装-CSDN博客

2.Git 指令

Git 常用命令大全

3.Git的三个区域

Git 使用时:
  • 工作区:实际开发时操作的文件夹
  • 暂存区:保存之前的准备区域(暂存改动过的文件)
  • 版本库:提交并保存暂存区中的内容,产生一个版本快照    

4.Git 文件状态

Git 文件 2 种状态:
  • 未跟踪:新文件,从未被 Git 管理过
  • 已跟踪:Git 已经知道和管理的文件
Git 的状态基本都是使用修改文件文件之后,暂存,提交保存记录,如此反复。
然后使用 git status -s 查看文件状态,并最终提交。

 5. Git 暂存区的使用

  • 暂存区:暂时存储,可以临时恢复代码内容,与版本库解耦
  • 暂存区 -> 覆盖 -> 工作区,命令:git restore 目标文件(注意:暂存区的内容覆盖到工作区的内容中,完全确认覆盖时使用
  • 从暂存区移除文件,命令:git rm --cached 目标文件

                        下面这个是例子,git rm --cached 的方法也是一样的。

 6. Git 回退版本

  • 概念:把版本库某个版本对应的内容快照,恢复到工作区/暂存区
  • 查看提交历史:git log --oneline
  • 回退命令:
  • git reset --soft 版本号(其他文件未跟踪)
  • git reset --hard 版本号
  • git reset --mixed 版本号 (与 git reset 等价)
  • 注意1:只有记录在版本库的提交记录才能恢复
  • 注意2:回退后,继续修改->暂存->提交操作即可(产生新的提交记录过程)

 7. 忽略文件

  • 概念:.gitignore 文件可以让 git 彻底忽略跟踪指定文件
  • 目的:让 git 仓库更小更快,避免重复无意义的文件管理

流程:

  1. 项目根目录新建 .gitignore 文件
  2.  填入相应配置来忽略指定文件
注意:如果文件已经被暂存区跟踪过,可以从暂存区移除即可(git rm --cached 目标文件)
无意义文件例如:
  1. 系统或软件自动生成的文件
  2. 编译产生的结果文件
  3. 运行时生成的日志文件,缓存文件,临时文件等
  4. 涉密文件,密码,秘钥等文件

 8. 分支

  • 概念:本质上是指向提交节点的可变指针,默认名字是 master
  • 创建分支:git branch 分支名
  • 切换分支:git checkout 分支名
  • 注意:HEAD 指针影响工作区/暂存区的代码状态
  • 分支的作用:开发新需求 / 修复 Bug,保证主线代码随时可用,多人协同开发提高效率,例如: 在现有代码上创建新分支完成内容列表业务或者是突然需要紧急修复 Bug - 单独创建分支解决 Bug。

9. 分支-合并与删除

步骤:
  • 切回到要合入的分支上:git checkout master
  • 合并其他分支过来:git merge login-bug
  • 删除合并后的分支指针:git branch -d login-bug

    10. 分支-合并与提交

            合并提交:发生于 原分支 产生了 新的提交 记录后,再 合并 回去时发生,自动使用多个快照记录合并后产生一次新的提交
    步骤:
    • 切回到要合入的分支上:git checkout master
    • 合并其他分支过来:git merge content
    • 删除合并后的分支:git branch -d content

    最后合并回到主分支上时,提交记录流程图:
    注意:提交记录的顺序按照产生的先后顺序排列,而非合并的先后顺序

    11.分支-合并冲突

    冲突:把 publish 分支合并到 master 回来,产生合并冲突
    概念: 不同分支 中,对 同一个文件 同一部分 修改,Git 无法干净的合并,产生合并冲突
    解决:
    1. 打开 VSCode 找到冲突文件并手动解决
    2. 解决后需要提交一次记录
    避免:(多交流)
    1. 按页面划分不同分支开发
    2. 公共代码在统一文件夹维护

    三、远程仓库使用

    1. 远程仓库的基本步骤

    步骤:
    1. 注册第三方托管平台网站账号
    2. 新建仓库得到远程仓库 Git 地址
    3. 本地 Git 仓库添加远程仓库原点地址

    命令:git remote add 远程仓库别名 远程仓库地址

    例如:git remote add origin https://gitee.com/lidongxu/work.git

            4. 本地 Git 仓库推送版本记录到远程仓库

    命令:git push -u 远程仓库别名 本地和远程分支名
    例如:git push -u origin master
    完整写法:git push --set-upstream origin master:master

    2. 在代码管理平台创建仓库

            在代码管理平台创建好仓库之后,就会出现如下的命令,只需要在Git的界面中将命令输入就可以了。

    评论
    添加红包

    请填写红包祝福语或标题

    红包个数最小为10个

    红包金额最低5元

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

    抵扣说明:

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

    余额充值