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

Git常用操作大全(附git操作命令)

Git常用操作大全

一、基础配置

1.1 设置用户名和邮箱

git config --global user.name "你的名字"
git config --global user.email "你的邮箱"

1.2 查看配置

git config --list

二、仓库管理

2.1 初始化本地仓库

git init

2.2 克隆远程仓库

git clone <仓库地址>

2.3 查看仓库状态

git status

2.4 添加文件到暂存区

git add <文件名>  # 添加指定文件
git add .        # 添加所有文件

2.5 提交到本地仓库

git commit -m "提交说明"

三、分支操作

3.1 创建分支

git branch <分支名>

3.2 切换分支

git checkout <分支名>

3.3 创建并切换分支

git checkout -b <分支名>

3.4 查看分支

git branch  # 查看本地分支
git branch -a  # 查看所有分支(包括远程)

3.5 合并分支

git checkout <目标分支>
git merge <源分支>

3.6 删除分支

git branch -d <分支名>  # 安全删除
git branch -D <分支名>  # 强制删除

3.7 删除远程分支

git push origin --delete <分支名>

四、远程协作

4.1 关联远程仓库

git remote add origin <仓库地址>

4.2 查看远程仓库

git remote -v

4.3 推送代码到远程仓库

git push -u origin <分支名>  # 首次推送并关联
git push origin <分支名>     # 后续推送

4.4 拉取远程代码

git pull origin <分支名>  # 拉取并合并
git fetch origin <分支名>  # 拉取但不合并

五、历史记录与标签

5.1 查看提交历史

git log  # 详细日志
git log --oneline  # 简洁日志

5.2 创建标签

git tag <标签名>  # 给当前提交打标签
git tag <标签名> <提交ID>  # 给指定提交打标签

5.3 查看标签

git tag

5.4 删除标签

git tag -d <标签名>  # 删除本地标签
git push origin :refs/tags/<标签名>  # 删除远程标签

5.5 推送标签到远程

git push origin <标签名>  # 推送单个标签
git push origin --tags  # 推送所有标签

六、冲突解决

  • 合并冲突时,打开冲突文件,找到标记(<<<<<<<, =======, >>>>>>>),手动选择保留的内容,删除冲突标记后添加并提交。

七、撤销与回退

7.1 撤销暂存区文件

git reset HEAD <文件名>  # 撤销指定文件
git reset  # 撤销所有文件

7.2 恢复工作区文件

git checkout -- <文件名>  # 恢复未暂存的修改

7.3 回退提交版本

git reset --soft HEAD^  # 回退一次提交,保留修改
git reset --mixed HEAD^  # 回退提交和暂存,保留工作区
git reset --hard HEAD^  # 完全回退上一个版本
git reset --hard <提交ID>  # 回退到指定版本

7.4 撤销提交(未推送)

git reset --soft HEAD^  # 保留修改,仅撤回提交
git reset --hard HEAD^  # 彻底回退

7.5 撤销提交(已推送)

git revert <提交ID>  # 创建新提交撤销指定提交

八、忽略文件

  • 在项目根目录创建.gitignore文件,添加需要忽略的文件或目录。

九、高级操作

9.1 暂存当前修改

git stash  # 暂存未提交的修改
git stash push -m "描述信息"  # 暂存并添加描述
git stash apply  # 恢复最近一次暂存
git stash pop  # 恢复并删除暂存

9.2 挑选提交

git cherry-pick <提交ID>  # 将某个提交应用到当前分支

9.3 变基操作

git rebase <分支名>  # 将当前分支变基到指定分支

十、配置与帮助

10.1 查看Git版本

git --version

10.2 获取帮助

git help <命令名>
http://www.dtcms.com/a/342542.html

相关文章:

  • Matplotlib数据可视化实战:Matplotlib数据可视化入门与实践
  • golang实现的Rsa加密解密算法(go和java交互时双向加解密方案)
  • OpenCV 形态学操作详解:腐蚀、膨胀与开闭运算
  • Chrome/360 浏览器 WebUI 资源底层机制解析:共享资源与专属资源的奥秘
  • 一、部署LNMP
  • mac的m3芯片安装JDK8、JDK17
  • 【CDA干货】金融App产品AB测试与指标体系搭建
  • 数据结构之排序大全(3)
  • 31、工业网络异常行为检测与OT协议深度分析 (核电站DCS模拟) - /安全与维护组件/network-anomaly-detection-nuclear
  • “码” 上安全:轻量级加密的硬件实现与侧信道攻击防御
  • Java实现一个简单的LRU缓存对象
  • 【SpringBoot】16 核心功能 - Web开发原理 - 请求参数 - 源码分析
  • WindowsAPI|每天了解几个winAPI接口之网络配置相关文档Iphlpapi.h详细分析七
  • 如何快速上手【Spring AOP】?从动态代理到源码剖析(下篇)
  • CTFshow系列——命令执行web41-44
  • YOLOv8 原理与跨领域应用全景分析
  • CVPR | 2025 | MAP:通过掩码自回归预训练释放混合 Mamba - Transformer 视觉骨干网络的潜力
  • 【C++】仿函数和回调函数
  • Python数值取整完全指南:从基础到金融工程实践
  • uniapp实现分页,效果如图
  • 自然语言处理——04 注意力机制
  • npm全局安装后,cmd命令行可以访问,vscode访问报错
  • HTTP 403 错误:后端权限校验机制深度解析
  • 长尾关键词优化SEO核心策略
  • JeeSite 快速开发平台:全能企业级快速开发解决方案
  • 自己动手,在Mac开发机上利用ollama部署一款轻量级的大模型Phi-3:mini
  • ElasticSearch——常用命令
  • VSCode Import Cost:5 分钟学会依赖瘦身
  • java16学习笔记
  • uniapp 全局弹窗