(): ..._通过哈西值指定提交记录">
当前位置:   article > 正文

Git指令学习_通过哈西值指定提交记录

通过哈西值指定提交记录

2019-09-12-Git指令学习

1. 主要命令

1. 基础篇

  1. Git Commit
   #提交记录:提交项目修改内容
   git commit "message"
  • 1

Git提交message格式:

   <type>(<scope>): <subject>
   <BLANK LINE>
   <body>
   <BLANK LINE>
   <footer>
  • 1
  • 2
  • 3
  • 4

大致分为三个部分:

  • 标题行: 必填, 描述主要修改类型和内容
  • 主题内容: 描述为什么修改, 做了什么样的修改, 以及开发的思路等等
  • 页脚注释: 放 Breaking Changes 或 Closed Issues

构成:

  • type: commit 的类型
  • feat: 新特性
  • fix: 修改问题
  • refactor: 代码重构
  • docs: 文档修改
  • style: 代码格式修改, 注意不是 css 修改
  • test: 测试用例修改
  • chore: 其他修改, 比如构建流程, 依赖管理.
  • scope: commit 影响的范围, 比如: route, component, utils, build...
  • subject: commit 的概述, 建议符合 50/72 formatting
  • body: commit 具体修改内容, 可以分为多行, 建议符合 50/72 formatting
  • footer: 一些备注, 通常是 BREAKING CHANGE 或修复的 bug 的链接
   #例如
   git commit "feat add new"
   git commit "fix test error"
  • 1
  • 2

  1. Git Branch

Git分支:简单的指向某个提交记录

创建分支并不会造成储存或内存上的开销

用于将分支和提交记录结合起来

   #新建分支
   git branch newBranch
   #切换分支
   git checkout newBranch
   #新建分支并切换
   git checkout -b newBranch
  • 1
  • 2
  • 3
  • 4
  • 5

  1. 分支与合并
   #在 Git 中合并两个分支时会产生一个特殊的提交记录,它有两个父节点。翻译成自然语言相当于:“我要把这两个父节点本身及它们所有的祖先都包含进来。”
   #把 newBranch 合并到 master 里
   git checkout master
   git merge newBranch
   #再把 master 分支合并到 newBranch
   git checkout newBranch
   git merge master
  • 1
  • 2
  • 3
  • 4
  • 5
  • 6

  1. Git Rebase
   #Rebase:取出一系列的提交记录,“复制”它们,然后在另外一个地方逐个的放下去
   #创建更线性的提交记录,提交历史异常清晰
   #把 newBranch 分支里的工作直接移到 master 分支
   git checkout newBranch
   git rebase master
   #此时原来 newBranch 的提交记录依然存在,而刚才的记录是 Rebase 到 master 分支的副本
   #更新master
   git checkout master
   git rebase newBranch
  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • 7
  • 8

2. 高级篇

  1. 分离HEAD
   #HEAD 是一个对当前检出记录的符号引用——也就是指向你正在其基础上进行工作的提交记录。
   #HEAD 总是指向当前分支上最近一次提交记录。大多数修改提交树的 Git 命令都是从改变 HEAD 的指向开始的。
   #HEAD 通常情况下是指向分支名的(如 newBranch)。在你提交时,改变了 newBranch 的状态,这一变化通过 HEAD 变得可见。
   #查看HEAD指向
   cat .git/HEAD
   #如果HEAD指向的是一个引用
   git symbolic-ref HEAD
   #从 newBranch 分支中分离出 HEAD 并让其指向一个提交记录。
   #通过哈希值指定提交记录。每个提交记录的哈希值显示在代表提交记录的圆圈中。
   #此处假如 newBranch 分支下的提交记录的哈希值为 X
   git checkout X
  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • 7
  • 8
  • 9
  • 10

欢迎访问我的Github:https://github.com/Serendipity-zsh

声明:本文内容由网友自发贡献,不代表【wpsshop博客】立场,版权归原作者所有,本站不承担相应法律责任。如您发现有侵权的内容,请联系我们。转载请注明出处:https://www.wpsshop.cn/w/码创造者/article/detail/831385
推荐阅读
相关标签