[Day7] Git学习笔记-分支篇 (MacOS)

经过一开始遇到的一些小问题,後续的操作基本上都没有发生奇怪的事情
先推荐两个好用的学习网站:

  1. 连猴子都能懂得Git入门指南
  2. LearnGitBranching

接着继续本日的学习笔记

1. 前言-创造平行时空(分支)
过去我工作的环境没有版本控制,当大家要编辑一个档案时可能会先有 工作进度-原始版.docx
接下来出现 工作进度-A男、工作进度-修1、工作进度-B女...等
然後负责整理的人做了一个 工作进度-1100915-v1,再请一些人修正
接着 1.1、1.2...,2.0、2.0修、2.0最终修正版、2.0最终修正版-2...各种混乱的名称
到实际报告的时候就会有人说:为什麽我都改好了,没被修进去!
如果各路英雄能在自己的平行时空发展,最後再把成果回归到主线时空,就不会让最後成果混乱了

有这惨痛的经验,势必要把这项功能学好!

1. 认识HEAD 自由穿梭

HEAD像是自己的头,想看哪就到哪,在没有下指令调整的时候,就是一路向前看
所以预设会看到 目前分支+最新提交的名称 这个位置
每提交一次,就会再往前看

  • 新数据库预设 HEAD指向 master 这个名称的分支
指令 功用说明
git branch 查看所有分支(本地)
git branch -a 查看所有分支(本地+远端)
git branch 分支名称 新增分支
git checkout 分支名称 切换分支,切换完用 git log指令会看到 HEAD -> 分支名称,表示切换到分支了
git checkout -b 分支名称 上面两个指令合体,建立分支後切换过去
git branch -d 分支名称 删除分支
git merge 分支名称 合并指定分支到目前的分支,假设分支做完,就可以checkout到master,把分支合并进来
git rebase 分支名称 同样是合并,但会把整个分支的历程都并过去,而且对象相反,例如: a merge b 和 b rebase a,前者是把b分支合并到a内,後者是把a分支当做b的基础版本

2. 建立tag 快速辨识

当git log查询下来一堆hash,还要记下前四码才能切换实在有点反人类,帮重要的版本做标签会方便很多

指令 功用说明
git tag 查询所有标签
git tag -n 查询所有标签+说明
git tag -l 关键字 关键字查询标签,如果有版本号可以直接打数字方便查询
git show 标签名称 查询指定标签详细资讯
git tag 标签名称 新增标签
git tag -am 说明 标签名称 新增标签+说明,注解越多、别人越容易掌握脉络
git tag -d 标签名称 删除标签

3. 副本开不完 暂离一下

当做 A专案到一半,突然 B专案的灵感乍现或是被老板指派去救援 C专案,就用 stash把现在的工作先记着,等回来之後直接叫出来就好

指令 功用说明
git stash 建立当前目录暂存
git stash list 查看所有暂存
git stash pop 还原暂存
git stash drop 删除最新暂存
git stash clear 删除全部暂存

进入各种穿梭、合并和删除後开始变得复杂,自己搞也是没有什麽实战感,可以利用上面分享的 LearnGitBranching挑战各种练习,明天继续更新 Git篇!


<<:  123大家好~

>>:  123大家好~

Day12 - Google Kubernetes Engine 基础 - Pod 建置

前言 前一天我们建立好了 Kubernetes 的环境,今天就来实际使用看看,将应用程序透过 Pod...

常见的BIA术语(Common BIA Terminologies)

NIST SP 800-34的第一个版本使用术语最大允许中断(Maximum Allowable ...

云服务器安全吗?云服务器有哪些优势?

相比较传统的服务器来说,云服务器的安全性是更高的,因为传统的服务器的安全性,其实是需要日常大量的维护...

峰禾影视

峰禾影视 峰禾影视电影电视剧频道拥有海量热门经典和2021最新的电影电视剧等,优质影视大片高清免费在...

安装 elementary OS 6.0 与呒虾米

前言 elementary OS 6.0 (以下称 Odin) 释出後几天,我决定也来安装看看,想不...