Git使用心得&理解

1.Git的分支本质是一个名称为分支名,指向最新提交的一个指针, 每次提交都会更新header指向最新提交的hash;

2.Git的提交是一个链表结构,除了首次提交,后续的每次提交都至少有一个父提交(parent),如果有两个父提交,说明进行了一次merge commit.

3.rebase本质上也是完成一次合并动作,和merge的区别就是,将最新的提交放在base分支的最新提交的前面,保证提交的简洁,不会有很多支线.因此能merge的地方都可以用rebase,需要注意的是,不要针对已经推送远程的提交进行

4.rebase的实际使用场景:

1)最常用:git pull --rebase,从远程拉取代码时,会执行merge,可以以rebase的方式

bash 复制代码
# 拉取远程更新,并把本地提交放在最前面
git pull --rebase

# 简写
git pull -r
  1. 把一个分支 rebase 到另一个分支,
bash 复制代码
# 当前在 feature 分支,把它 rebase 到 main 上
git checkout feature
git rebase main

# 或者一步到位
git rebase main feature

3).交互式 rebase:git rebase -i,这是最强大的功能,可以整理你的提交历史

bash 复制代码
# 对最近 3 个提交进行操作
git rebase -i HEAD~3

# 或者从某个 commit 开始
git rebase -i <commit-hash>

注意:只 rebase 你一个人的分支,永远不要 rebase 别人也在用的分支。

相关推荐
AI行业学习2 小时前
Claude Code + cc-switch + Git + Node.js 一站式完整安装配置教程【8.3】
git·python·安全·前端框架·node.js·html·notepad++
AI行业学习2 小时前
Claude Code + cc-switch + Git + Node.js 一站式完整安装配置教程(2026最新·国内可用版)
人工智能·git·python·安全·node.js·html·notepad++
维基框架14 小时前
OpenAI在给Git做优化 上游行为要变了
人工智能·git
1名持续学习的码农14 小时前
GPT Plus、GPT Pro用户第一次用Codex,项目权限和Git分支怎么设置?
人工智能·git·gpt·elasticsearch·ai编程·codex
晨曦中的暮雨1 天前
Learn Claude Code:CodeAgent 与后端程序大搭配——定时任务、Git Worktree 和MCP 服务
git·ai·llm·agent
减瓦1 天前
用 Git 为本地文件打造一台时光机
开发语言·git·编辑器
Huangjin007_1 天前
【Linux 系统篇(十一)】基础开发工具(六) —— 版本控制器 Git
linux·运维·git
影视飓风TIM2 天前
Linux下C语言缓冲区原理 + Git版本控制
linux·c语言·git