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

Git常用命令摘要

写这篇博文的目的只是简单的给自己及团队的日常工作中需要用到的git命令作个汇总,这样平时只需要查阅这篇文章就够了,不用到处查找。如果能给有需要的朋友一点点的帮助,那也算是意外之喜吧。

一、基础配置

# 设置用户名和邮箱(首次使用必配)
git config --global user.name "Your Name"
git config --global user.email "your@email.com"

# 查看配置列表
git config --list

二、仓库操作

# 初始化新仓库
git init

# 克隆远程仓库
git clone <repo_url>

# 查看仓库状态
git status

三、代码提交

# 添加文件到暂存区
git add <file>  # 单个文件
git add .       # 所有修改

# 提交到本地仓库
git commit -m "commit message"

# 修改最后一次提交
git commit --amend

# 撤销未提交的修改(保留文件)
git restore --staged <file>  # 从暂存区撤出
git restore <file>           # 丢弃工作区修改

# 撤销最近一次提交(保留修改)
git reset --soft HEAD~1

# 撤销远程提交(强制推送覆盖)
git push -f origin <branch>
 

四、分支管理

# 查看分支
git branch     # 本地分支
git branch -a  # 所有分支

# 创建/切换分支
git checkout -b <new_branch>

# 合并分支
git merge <branch_name>

# 删除分支
git branch -d <branch_name>

# 对比两个分支差异
git diff branch1..branch2

# 对比本地与远程
git diff @{upstream}

# 图形化对比工具
git difftool -t vscode  # 使用VSCode对比
 

五、远程协作

# 关联远程仓库
git remote add origin <url>

# 推送到远程
git push -u origin <branch>

# 拉取更新
git pull origin <branch>

# 查看远程库信息
git remote -v

六、版本控制

# 查看提交历史
git log --oneline --graph

git reflog show # 查看操作历史

# 回退版本
git reset --hard <commit_id>

# 暂存当前修改
git stash
git stash pop

七、实用技巧

# 查看文件修改差异
git diff

# 撤销工作区修改
git checkout -- <file>

# 重命名文件
git mv <old> <new>

八、协作场景解决方案

# 同步上游仓库更新
git remote add upstream <original-repo-url>
git fetch upstream
git merge upstream/main

# 解决冲突后继续变基
git rebase --continue

# 提交PR前清理历史
git rebase -i origin/main
 

 九、建立远程仓库

以Gitee平台为例。

一)、前期准备

  1. 注册平台账号

    • Gitee
    • 完成邮箱验证(必需步骤)
  2. 配置本地Git身份

  3. 生成SSH密钥(免密推送必备)

 

 ‌二)、创建远程仓库(以Gitee为例)

  1. 网页端操作

    • 点击「+」→「新建仓库」
    • 填写仓库名(如 project-demo
    • 选择公开/私有 → 勾选「使用Readme初始化」→ 创建
  2. 获取仓库地址

    • HTTPS:https://gitee.com/yourname/project-demo.git
    • SSH:git@gitee.com:yourname/project-demo.git(推荐)

三)、关联本地仓库

▶ 场景1:已有本地项目
# 进入项目目录
cd existing-project# 初始化本地仓库
git init# 关联远程仓库
git remote add origin git@gitee.com:yourname/project-demo.git# 首次推送(-u 设置上游分支)
git push -u origin master     # 或 main 分支
▶ 场景2:全新项目
# 克隆远程仓库到本地
git clone git@gitee.com:yourname/project-demo.git# 进入目录添加文件
cd project-demo
touch new-file.txt# 提交并推送
git add .
git commit -m "Add new file"
git push origin master

 十、.gitignore文件配置

 

 一)、.gitignore核心语法手册

1. 基础匹配规则
  • #:注释行(例:# 忽略临时文件

  • /前缀:仅匹配根目录(例:/debug.log不匹配src/debug.log

  • *通配符:跨文件名匹配(例:*.tmp匹配所有.tmp后缀文件)

2. 高级路径控制
  • **/:递归匹配任意子目录(例:**/cache/忽略所有cache目录)

  • !取反:强制跟踪例外文件(例:!important.log突破*.log限制)

3. 字符集匹配
  • [abc]:匹配指定字符(例:test[123].txt匹配test1.txt但排除test4.txt)

  • ?:匹配单个字符(例:file?.js匹配fileA.js不匹配file10.js)

4. 删除已跟踪文件

git rm --cached <file>

# 从Git历史彻底删除误提交文件
git filter-branch --force --index-filter \"git rm --cached --ignore-unmatch sensitive.txt" \--prune-empty --tag-name-filter cat -- --all
5.强制添加被忽略文件

git add -f secret.cfg

 合理配置.gitignore可降低90%的仓库冗余,结合git sparse-checkout还能实现部分克隆。建议定期审计忽略规则,将其纳入项目脚手架标准化管理。

相关文章:

  • 做网站后端要什么技术宁波网站推广怎么做
  • 网站开发论文写作的步骤互联网推广方式有哪些
  • 教育网页设计网站陕西百度推广的代理商
  • 淮北市矿业工程建设公司网站武汉seo学徒
  • 茶叶价格网站建设宁波seo公司哪家好
  • 许昌哪里做网站企业软文
  • 青少年编程与数学 01-011 系统软件简介 19 SSMS 数据库管理工具
  • 【AS32系列MCU调试教程】性能优化:Eclipse环境下AS32芯片调试效率提升
  • Java 与 MySQL 性能优化:Linux服务器上MySQL性能指标解读与监控方法
  • Spring MVC 中日期格式转换的两种实用方法
  • ​​实时人脸检测与人脸关键点识别系统实现
  • 简历模板3——数据挖掘工程师5年经验
  • 【机器学习与数据挖掘实战 | 医疗】案例16:基于K-Means聚类的医疗保险的欺诈发现
  • 提的缺陷开发不改,测试该怎么办?
  • shell编程语言-1 shell脚本基础
  • Docker 基础使用
  • 分类预测 | Matlab基于AOA-VMD-LSTM故障诊断分类预测
  • MVVM模式中,BaseViewModel 的 IsBusy 属性的作用
  • 矩阵混剪系统源码搭建全流程技术解析,矩阵OEM
  • LeetCode 第74题:搜索二维矩阵
  • 动态多目标进化算法:基于迁移学习的动态多目标粒子群优化算法(TrMOPSO)求解IEEE CEC 2015,提供完整MATLAB代码
  • MATLAB提供的两种画误差矩阵的函数
  • 【MATLAB例程】追踪法制导的程序,适用于三维平面,目标是运动的,带绘图和捕获时间|附下载链接
  • 经典蓝牙 vs BLE:10 大核心差异深度对比(附高频考点 + 大厂真题)
  • 基于docker技术的单主机环境模拟测试批量客户端
  • 软件测试质量的“防”与“治”