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

【Git】常见命令整理

Git分区与操作关系:

Working Directory(工作区,对于本地的编辑和修改在此进行)

->Staging Area(暂存区/Index,在工作区进行git add操作后的位置)

->Git Repository(本地仓库,在暂存区进行git commit操作后的位置)

->远程仓库(在本地仓库进行git push后的位置,例如GitHub/Gitee)

一、基础操作

#1.初始化仓库
git init
#2.克隆远程仓库到本地
git clone <url>
#3.查看当前工作区和暂存区的状态
git status
#4.将指定文件加入暂存区
git add <file>
#5.将所有更改的文件加入暂存区
git add .
#6.提交暂存区的更改,并附带提交信息
git commit -m "msg"
#7.将本地提交推送到远程仓库
git push
#8.从远程仓库拉取并合并最新代码
git pull
#9.查看提交历史记录
git log

二、分支与标签类

#1.查看当前所有本地分支
git branch
#2.创建一个新的分支
git branch <name>
#3.切换到指定的分支
git checkout <branch>
#4.创建并切换到新分支
git checkout -b <branch>
#5.将指定分支合并到当前分支
git merge <branch>
#6.查看所有标签
git tag
#7.给当前commit打一个标签
git tag <tagName>
#8.删除本地标签
git tag -d <tagName>
#9.推送标签到远程
git push origin <tagName>
#10.推送所有本地标签到远程
git push origin --tags
#11.强制将标签指向当前的HEAD
git tag -f <tagName>
#12.强制更新远程标签
git push origin <tagName> --force

三、回退与恢复类

#1.回退上一次提交,保留更改在暂存区
git reset --soft HEAD^
#2.回退上一次提交,保留更改在工作区(默认)
git reset --mixed HEAD^
#3.回退上一次提交,彻底丢弃更改
git reset --hard HEAD^
#4.丢弃当前文件的更改,恢复为上次提交状态
git checkout <file>
#5.创建一次新的commit来"撤销"某次提交
git revert <commitMessage>

四、远程仓库操作类

#1.查看当前配置的远程仓库地址
git remote -v
#2.添加远程仓库
git remote add origin <url>
#3.删除远程仓库连接
git remote remove origin
#4.推送本地分支到远程,并设为默认追踪分支
git push -u origin <branch>
#5.拉取远程数据,但不自动合并
git fetch

五、Git LFS相关

#1.安装Git LFS支持
git lfs install
#2.指定要使用LFS管理的文件类型
git lfs track "*.psd"
#3.查看已跟踪的大文件
git lfs ls-files
#4.查看LFS跟踪状态
git lfs status
#5.添加.gitattributes文件(里面包括了LFS配置)
git add .gitattributes

注意:Git LFS不会自动跟踪大文件

六、其他命令&脚本

#1.给Shell脚本添加执行权限
chmod +x <script.sh>
#2.Git钩子脚本,无需文件后缀名,自动在提交前执行
pre-commit
#3.表示这是一个 Bash 脚本(用于写钩子)
#!/bin/bash
http://www.dtcms.com/a/313781.html

相关文章:

  • 工作流绑定卡片优化用户体验-练习我要找工作智能体
  • 人类学家与建筑师:解析 UX 研究与项目管理的需求分析差异​
  • 豆包新模型+PromptPilot深度评测:提示词工程的智能化突破
  • 数据结构:合并两个单链表(merging two linked lists)
  • 下面是修正后的完整版 doit_effects.c,已经做了三大关键修复(文件开头也有注释说明)
  • 使用opencv基于realsense D435i展示基本的图像
  • 如何基于MQ实现分布式事务
  • 深入浅出 RabbitMQ:简单队列实战指南
  • 消防器材检测数据集介绍-9,600 张图片 智慧安防系统 建筑施工安全监管 AI 消防巡检机器人 自动审核系统 公共场所安全监测
  • 深入解析线程同步中WaitForSingleObject的超时问题
  • Flutter 事件总线 Event Bus
  • 【2025WACV-最佳论文】RayGauss:基于体积高斯的光线投射,用于逼真的小说视图合成
  • 【机器学习】(算法优化二)提升算法之:AdaBoost与随机梯度
  • Java 中 BigDecimal、Float、Double 的取整与保留小数处理方法详解
  • 从 0 到 1 开发图书管理系统:飞算 JavaAI 让技术落地更简单
  • 13.Home-面板组件封装
  • 如何设计和实施高效的向量化数据检索解决方案
  • 阿里云-通义灵码:解锁云原生智能开发新能力,让云开发更“灵”~
  • Clion STM32CubeMX LED闪灯
  • 为什么叫电磁兼容?
  • 【Java】一篇详解HashMap的扩容机制!!
  • SCI论文选词炼句(下)
  • vue3指定设置了dom元素的ref但是为null问题
  • Druid手写核心实现案例 实现一个简单Select 解析,包含Lexer、Parser、AstNode
  • 第三章 浏览器 【5. 事件】
  • Java项目:基于SSM框架实现的电子病历管理系统【ssm+B/S架构+源码+数据库+毕业论文+远程部署】
  • 前端开发(HTML,CSS,VUE,JS)从入门到精通!第五天(jQuery函数库)
  • 深入理解Java的SPI机制,使用auto-service库优化SPI
  • 打造个人数字图书馆:LeaNote+cpolar如何成为你的私有化知识中枢?
  • 【MySQL02】: MySQL类型