学习Git看这一篇

引入

思考一下,在开发过程中,我们都会遇到那些麻烦,第一点就是在写代码的过程中突然断电了,那么代码没有备份怎么办,因此代码备份很重要,其次在写代码的同时我们需要不断的更新迭代,但是有时候又需要回退到某个版本,那么版本控制很重要,当项目很庞大时,需求开发肯定不能只靠一个人,那么协同工作很重要,如果某个人写错了代码,线上出现了问题,需要查看问题代码是谁写的,那么责任追溯很重要,那么如今市面上实现这些功能的两种产品分别是SVN以及Git

SVN与Git对比

SVN

SVN是集中式版本控制系统,代码版本库是集中放在中央服务器里的,开发人员只需要从中央服务器进行代码的上传下载即可(只有服务器存储了版本记录,本地只有一份代码

弊端
  • 中央服务器发生故障, 硬盘损坏, 对项目的代码是毁灭性的。
Git

Git是开源的分布式版本控制工具,分为本地仓库远程仓库 ,其中远程仓库就类似于SVN的中央服务器

优点

本地仓库即每一个客户端都保存了完整的历史记录,与远程仓库同步,服务器故障后,都可以通过客户端的记录进行恢复。

安装下载

官网地址:https://git-scm.com/downloads
下载完后一路下一步,完成安装。打开控制台输入 git --version查看版本。版本能看到就ok了
git版本

Git基本工作流程

区域

工作目录 —— 本地存放代码的位置,这里的代码经常变动
暂存区 —— 即工作目录的代码会先放到暂存区,代码提交到仓库之前的临时存储空间。
本地历史仓库 —— 将暂存区的代码提交后即可进入本地历史仓库,存放不同版本的代码
三个区域介绍

常用命令

在这里插入图片描述

实际操作
  1. 创建一个文件夹my_project (mkdir my_project),初始化git仓库(git init)。
    在这里插入图片描述

  2. 新建一个test.txt文件(touch test.txt),不执行添加操作。

  3. 使用git status查看状态。
    在这里插入图片描述

  4. 使用add命令添加到暂存区,查看状态。
    在这里插入图片描述

  5. 使用commit命令,提交到本地历史仓库 使用-m添加描述, 再次使用git status就没有需要提交的文件了。
    在这里插入图片描述
    在这里插入图片描述

  6. 使用git log,查看日志。其中黄色的代表提交的唯一标识。
    在这里插入图片描述

  7. 修改test.txt文件,添加并且提交,然后查看日志。可以发现log出现了新的一条
    在这里插入图片描述

版本管理

历史版本切换
  1. 首先查看my_project 的log日志(git reflog)
  2. 新增一次工作目录的修改,使其有三条日志记录。
  3. 将代码切换到第二次修改的版本 (git reset --hard 版本唯一索引值)

分支管理

假如一个项目正在开发新功能,并且这个新功能开发周期很长,第一周写了20%的代码,突然发现原来的代码有Bug,但是新功能20%的代码又不能丢弃,因此需要开启一个新的分支区进行Bug修复。同理开发新功能时也可以拉出新的分支
在这里插入图片描述

  • 创建分支 : git branch 分支名
  • 切换分支 : git checkout 分支名
  • 查看分支列表: git branch
  • 合并分支 : 比如把xiaoming合并到master,首先切换到master,然后git merge xiaoiming
  • 删除分支 : git branch -d 分支名

远程仓库

工作流程

在这里插入图片描述

操作步骤
  • 创建远程仓库
  • 生成SSH公钥步骤
    • 设置Gig账户(账户和邮箱)
      • git config --global user.name “账户名”
      • git config --global user.email “邮箱”
      • ssh-keygen -t rsa -C “邮箱”
  • 推送到远程仓库
    • 为远程仓库的URL自定义名称
      • git remote add 远程名称 远程仓库URL
    • 推送
      • git push -u 仓库名称 分支名
  • 拉取远程仓库
    • 先克隆 git clone 仓库地址
    • 创建新文件 添加并提交到本地仓库
    • 推送到远程仓库
    • 更新
      • git pull 远程仓库名 分支名
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值