当前位置: 首页 > news >正文

Git 常用命令与操作步骤

以下是 Git 常用命令与操作步骤 的整理,涵盖日常开发中最核心的场景,适合快速查阅和上手:

1. 初始化与克隆仓库

操作命令
本地初始化仓库git init
克隆远程仓库git clone <仓库URL> (如 git clone https://gitlab.com/user/repo.git)
克隆指定分支git clone -b <分支名> <仓库URL>

2. 分支管理

操作命令
查看所有分支git branch -a (远程分支显示为红色)
创建新分支git branch <分支名>
切换分支git checkout <分支名> 或 git switch <分支名>(Git 2.23+)
创建并切换分支git checkout -b <分支名>
删除本地分支git branch -d <分支名> (强制删除用 -D)
删除远程分支git push origin --delete <分支名>
同步远程分支列表git fetch -p (清理本地已删除的远程分支记录)

3. 提交与推送

操作命令
查看文件变更状态git status
添加文件到暂存区git add <文件名> 或 git add .(添加所有变更)
提交到本地仓库git commit -m “提交描述”
推送到远程仓库git push origin <分支名>
强制推送(慎用)git push --force origin <分支名> (覆盖远程提交记录)
撤销最后一次提交git reset --soft HEAD~1 (保留更改)

4. 合并与冲突解决

操作命令
合并分支到当前分支git merge <分支名>
变基(Rebase)git rebase <分支名> (保持提交历史线性)
终止合并/变基git merge --abort 或 git rebase --abort
手动解决冲突后1. 编辑冲突文件 → 2. git add <文件名> → 3. git commit

5. 撤销与回退

操作命令
撤销工作区修改git checkout – <文件名>
撤销暂存区的修改git reset HEAD <文件名>
回退到指定提交git reset --hard <commit_id> (谨慎使用,会丢失更改)
生成撤销补丁git revert <commit_id> (安全回退,生成新提交)

6. 远程仓库操作

操作命令
查看远程仓库git remote -v
添加远程仓库git remote add <别名> <仓库URL> (如 git remote add upstream https://…)
拉取远程更新git pull origin <分支名> (相当于 git fetch + git merge)
拉取并变基git pull --rebase origin <分支名>

7. 实用技巧

查看提交历史
git log --oneline --graph  # 简洁版提交树
git log -p <文件名>        # 查看文件修改历史
暂存当前修改(切换分支前临时保存)
git stash        # 暂存修改
git stash pop    # 恢复暂存的修改
比较差异
git diff                  # 工作区与暂存区的差异
git diff HEAD             # 工作区与最新提交的差异
git diff <分支1> <分支2>   # 比较两个分支

8. 操作流程图解

图表

在这里插入图片描述

代码
graph LRA[工作区] --`git add`--> B[暂存区]B --`git commit`--> C[本地仓库]C --`git push`--> D[远程仓库]D --`git pull`--> A

注意事项

强制推送 (git push --force) 会覆盖远程历史,团队协作中慎用。
.gitignore 文件用于忽略无需跟踪的文件(如日志、编译产物)。
提交规范:建议使用语义化消息(如 feat: 新增登录功能)。
http://www.lryc.cn/news/595234.html

相关文章:

  • 深入理解 消息队列 与 ZeroMQ
  • C语言:20250721笔记
  • 板凳-------Mysql cookbook学习 (十二--------3_1)
  • 位标志法处理多选字段在数据库中的存储方式 查询效率与扩展性之间的权衡
  • 图论基本算法
  • LLaMA-Factory 微调可配置的LoRA参数
  • MySQL:表的增删查改
  • DFS习题篇【上】
  • buntu 22.04 上离线安装Docker 25.0.5(二)
  • 宝塔访问lnmp项目,跳转不到项目根目录问题解决
  • 【每日算法】专题四_前缀和
  • BERT 的“池化策略”
  • 基于WebSocket的安卓眼镜视频流GPU硬解码与OpenCV目标追踪系统实现
  • day058-docker常见面试题与初识zabbix
  • docker 常见命令使用记录
  • 【docker】分享一个好用的docker镜像国内站点
  • 【图论】CF——B. Chamber of Secrets (0-1BFS)
  • 文本数据分析
  • 本地部署Dify、Docker重装
  • neuronxcc包介绍及示例代码
  • 【Java学习|黑马笔记|Day19】方法引用、异常(try...catch、自定义异常)及其练习
  • seata at使用
  • 深度学习 -- 梯度计算及上下文控制
  • 7月21日总结
  • registry-ui docker搭建私有仓库的一些问题笔记
  • 服务器后台崩溃的原因
  • 使用Langchain调用模型上下文协议 (MCP)服务
  • 【未限制消息消费导致数据库CPU告警问题排查及解决方案】
  • WEB前端登陆页面(复习)
  • 随笔20250721 PostgreSQL实体类生成器