Git 进阶使用指南

Git 进阶使用指南

欢迎体验这份Git进阶使用指南!本文档将带你深入探索Git的高级功能和技巧,帮助你更高效地管理代码和协作开发。


1. 分支管理进阶

1.1 分支重命名

快速重命名本地分支:

bash 复制代码
git branch -m <旧分支名> <新分支名>

1.2 查看远程分支

列出所有远程分支:

bash 复制代码
git branch -r

1.3 跟踪远程分支

将本地分支与远程分支关联:

bash 复制代码
git branch --set-upstream-to=origin/<远程分支名> <本地分支名>

1.4 处理合并冲突

合并分支时若发生冲突:

  1. Git会标记冲突文件。
  2. 手动编辑文件解决冲突。
  3. 执行以下命令完成合并:
bash 复制代码
git add <冲突文件>
git commit -m "解决合并冲突"

2. 变基(Rebase)

变基可以让提交历史更线性整洁,是合并的替代方案。

2.1 基本变基

将当前分支的提交应用到目标分支:

bash 复制代码
git rebase <目标分支>

2.2 交互式变基

编辑、合并或删除历史提交:

bash 复制代码
git rebase -i <提交ID>

3. 储藏(Stash)

临时保存工作目录的更改,方便切换任务。

3.1 保存储藏

bash 复制代码
git stash save "储藏描述"

3.2 应用储藏

恢复最近的储藏:

bash 复制代码
git stash apply

3.3 查看储藏列表

bash 复制代码
git stash list

3.4 删除储藏

bash 复制代码
git stash drop <储藏ID>

4. 子模块(Submodule)

在项目中嵌入其他Git仓库。

4.1 添加子模块

bash 复制代码
git submodule add <子模块URL>

4.2 更新子模块

初始化并更新所有子模块:

bash 复制代码
git submodule update --init --recursive

5. 钩子(Hooks)

在Git事件触发时运行自定义脚本。

5.1 客户端钩子

pre-commit(提交前检查)、post-merge(合并后执行)。

5.2 服务器端钩子

pre-receive(接收推送前验证)。

钩子文件位于.git/hooks/目录下,可自定义编辑。


6. 高级配置

6.1 设置别名

简化常用命令:

bash 复制代码
git config --global alias.co checkout

6.2 忽略文件

.gitignore中添加不需要跟踪的文件或目录。

6.3 凭证管理

保存登录凭证,避免重复输入:

bash 复制代码
git config --global credential.helper store

7. 故障排除

7.1 找回丢失提交

通过引用日志找回:

bash 复制代码
git reflog

然后使用git reset <提交ID>git cherry-pick <提交ID>恢复。

7.2 强制推送

覆盖远程分支(谨慎使用):

bash 复制代码
git push -f origin <分支名>

8. 推荐学习资源


这份指南涵盖了Git的多种高级用法,希望能助力你的开发之旅!有任何疑问,欢迎交流。

相关推荐
vibecoding日记2 天前
为什么我就想要「线性历史 + Signed Commits」,GitHub 却把我当猴耍 🤬🎙️
git·编程工具
程序员小崔日记3 天前
如何将代码轻松上传到 Gitee?Git 使用全攻略!
git·gitee·上传
Bigger3 天前
为什么你的 Git 提交需要签名?—— Git Commit Signing 完全指南
git·开源·github
DianSan_ERP4 天前
电商API接口全链路监控:构建坚不可摧的线上运维防线
大数据·运维·网络·人工智能·git·servlet
红豆子不相思4 天前
Tomcat 环境搭建与集群实战
服务器·git·tomcat
杰哥技术分享4 天前
Git 仓库迁移技术文档:从 CODING.net 迁移至腾讯云 CNB
git
梅孔立5 天前
Ansible 100 台服务器一键管控实战 进阶版
服务器·git·ansible
qq_426003965 天前
git切换当前分支到远程分支
git
ON10N5 天前
100% 纯 Vibe Coding,我是怎么用 AI 撸出一个 VS Code 插件的
git·ai编程·visual studio code