git
其中两个重要概念 对象和引用
文件blob,文件夹tree,和提交commit都是对象
对象使用哈希引用 可能imply了对象是不可变的
引用是映射到哈希的可读名字
引用是可变的
常见的引用有master 主分支的最新commit
head当前观察的commit
git diff将当前目录的内容和head作比较
git branch -f
强制将一个分支移动到指定位置
git merge
在当前分支创建一个新节点,它同时指向指定分支和当前分支的节点
推进当前分支
git rebase
将当前分支移动到指定分支的后继
git checkout
head一般是和当前分支的最新提交指在一起的
通过checkout某次提交可以改变head
git reset和git revert后跟提交
vendorig
限制死项目的依赖使用的版本
CI(continuous integration)
github action
在收到pull request时自动进行测试
提交时进行语法检查
github仓库上可以看到的小徽章
github pages自动构建博客
testsuite
所有测试的集合
unit test
测试功能模块
integration test
测试功能模块组合能否正确工作
regression test
测试过去的错误
mocking
忽略一部分不需要关注的部分
替换成虚拟实现