Git 常用命令整理
status
Published
type
Post
slug
git-commands
date
Aug 25, 2022
tags
DevOps
Git
Shell
summary
Git 是一款代码版本控制工具,常用于团队协作开发。本文主要是整理的一些常见的 Git 命令,这些命令覆盖了 Git 常用的操作场景,可以帮助开发者更好地使用 Git 进行版本控制和协作开发。
Git 作为代码版本控制工具,也是要经常打交道的存在。虽然在各类 IDE 中已经将其大部分操作实现了很好的图形化用户交互,但命令行作为与 Git 打交道的基础,还是不可或缺。在此将常用的一些场景命令整理一下。
![notion image](https://www.notion.so/image/https%3A%2F%2Fprod-files-secure.s3.us-west-2.amazonaws.com%2F38eb7257-66ea-481f-b02f-6d5b3b01bb66%2F366af187-891b-4e97-9c2a-395a94f7bf79%2FSCR-20231005-qbbd.png?table=block&id=661a8453-7eca-471c-8bbe-729a6dc97a25&cache=v2)
Local repository
Remote repository
.gitignore
Branch
Merge
- 无冲突
- 有冲突
Rebase
比较项 | rebase | merge |
定义 | 把自己的分支变基到目标分支上,提交历史放在目标分支最后 | 把目标分支合并到自己分支上,提交历史合并成一个新的提交 |
原理 | 1. 检出当前分支
2. 临时保存当前分支的提交历史
3. 检出base分支
4. 将当前分支的提交逐个添加到base分支上
5. 检出当前分支
6. 将临时保存的提交历史删除,改为指向rebase后的提交 | 1. 检出当前分支
2. 合并base分支到当前分支,生成一个merge提交 |
提交历史 | 简洁线性,所有提交按时间排列 | 保留完整分支历史,存在merge提交 |
优点 | 清晰可读的历史,方便代码审查 | 保留完整提交历史,易追溯变更 |
缺点 | 改写提交历史,可能导致冲突 | 多merge提交,历史复杂难读 |
使用场景 | 私有分支开发和维护 | 公共分支开发和合作 |