Git常见命令及用法

📋 Git 常见命令详解

1. git config
  • 作用:配置 Git 用户信息、仓库设置等。

  • 常用参数:

    bash 复制代码
    # 全局配置(所有仓库生效)
    git config --global user.name "你的名字"
    git config --global user.email "your@email.com"
    
    # 查看所有配置
    git config --list
    
    # 查看特定配置项
    git config user.name
  • 场景:首次使用 Git 时配置用户信息,或修改全局/局部配置。


2. git branch
  • 作用:管理分支(创建、查看、删除、切换)。

  • 常用参数:

    bash 复制代码
    # 查看所有分支(本地+远程)
    git branch -a
    
    # 创建新分支
    git branch <branch-name>
    
    # 创建并切换到新分支
    git checkout -b <branch-name>
    
    # 删除分支(需确保分支已合并)
    git branch -d <branch-name>
    
    # 强制删除分支
    git branch -D <branch-name>
    
    # 重命名分支
    git branch -M <old-name> <new-name>
  • 场景:多分支开发时管理功能分支,避免主分支污染。


3. git commit
  • 作用:将暂存区内容提交到本地仓库。

  • 常用参数:

    bash 复制代码
    # 提交暂存区内容,需输入提交信息
    git commit
    
    # 直接添加提交信息
    git commit -m "feat: 添加新功能"
    
    # 修改上一次提交(未推送时)
    git commit --amend
    
    # 提交所有追踪文件(跳过暂存区)
    git commit -a -m "fix: 修复bug"
  • 场景 :代码开发完成后提交变更,--amend 用于修正错误提交。


4. git push
  • 作用:将本地分支推送到远程仓库。

  • 常用参数:

    bash 复制代码
    # 推送当前分支到远程(需先关联)
    git push
    
    # 推送指定分支到远程
    git push origin <branch-name>
    
    # 强制推送(可能破坏远程历史)
    git push --force
    
    # 推送新分支并设置跟踪
    git push -u origin <branch-name>
  • 场景 :将本地分支同步到远程,-u 用于首次推送并关联远程分支。


5. git fetch
  • 作用:从远程仓库获取最新更新(不合并)。

  • 常用参数:

    bash 复制代码
    # 获取所有远程分支更新
    git fetch
    
    # 获取指定远程分支
    git fetch origin <remote-branch>
    
    # 获取并创建本地分支
    git fetch origin <remote-branch>:<local-branch>
  • 场景:查看远程更新而不影响本地工作区,避免自动合并冲突。


6. git pull
  • 作用:从远程仓库拉取并合并最新代码。

  • 常用参数:

    bash 复制代码
    # 拉取并合并当前分支
    git pull
    
    # 拉取并使用 rebase 合并(避免合并提交)
    git pull --rebase
    
    # 拉取指定分支
    git pull origin <branch-name>
  • 场景 :同步远程代码到本地,--rebase 适用于保持线性历史。


7. git rebase
  • 作用:将当前分支的提交历史变基到另一分支(避免合并提交)。

  • 常用参数:

    bash 复制代码
    # 将当前分支变基到 master
    git rebase master
    
    # 交互式变基(修改提交历史)
    git rebase -i HEAD~3
    
    # 中断变基
    git rebase --abort
  • 场景 :清理提交历史,保持分支线性,避免 git merge 产生冗余提交。


8. git reset
  • 作用:重置当前分支的 HEAD 指针(危险操作)。

  • 常用参数:

    bash 复制代码
    # 软重置(保留工作区,重置暂存区)
    git reset --soft HEAD~1
    
    # 混合重置(默认,保留工作区,重置暂存区+HEAD)
    git reset --mixed HEAD~1
    
    # 硬重置(清空工作区+暂存区,谨慎使用)
    git reset --hard HEAD~1
    
    # 重置指定文件
    git reset HEAD <file>
  • 场景 :撤销错误提交或回退到历史版本,--hard 会丢失本地修改。


🔍 实际场景示例

  1. 分支开发流程:
bash 复制代码
git checkout -b feature/login
# 开发代码...
git add .
git commit -m "feat: 添加登录功能"
git push -u origin feature/login
  1. 解决冲突:
bash 复制代码
git pull --rebase
# 手动解决冲突后
git add .
git rebase --continue
  1. 修正提交:
bash 复制代码
git commit --amend
# 修改提交信息后保存

⚠️ 注意事项

  • git reset --hard 会丢失本地未提交的修改,慎用。
  • git push --force 可能破坏远程历史,需团队沟通后使用。
  • git rebase 适用于个人分支,公共分支建议用 merge。
相关推荐
AI日报派送佬9 小时前
2026年10月12日AI行业日报|GPT-6.1 Sol超长上下文免费开放,多智能体成本陷阱暴露,算力供需失衡持续发酵
大数据·人工智能·openai·苹果·ai日报·智能体技术·deepseekharness
泡干脆面就番茄9 小时前
Hive入门:架构解析与安装部署实录
大数据·数据仓库·hive·hadoop·架构
Nefu_lyh9 小时前
【工作杂谈_20261012】数据平台与工程治理: Spark OOM 排查:Java Heap、Executor 与代码内存模型
java·大数据·spark
承渊政道9 小时前
CentOS 7单机部署Elasticsearch 7.17.29:从启动报错、CRUD验证到固定公网地址的完整过程
linux·elasticsearch·centos·内网穿透·cpolar·单机部署
APItesterCris9 小时前
告别反复手工查价:用 Open‑Claw 搭建商品监控与数据分析小工具
大数据·数据库·数据仓库·自动化
鼓掌MVP9 小时前
决定全案的智能Agent
大数据·人工智能·机器学习
Tongzhi20269 小时前
2026 年考勤行业趋势:考勤正在从“打卡工具“变成“人力成本中枢“
大数据·数据结构·数据仓库·科技·数据库开发
计算机编程指导师10 小时前
计算机毕设选题:基于Spark+Django的水质多指标关联分析与可视化系统源码 毕业设计 选题推荐 数据分析 机器学习
大数据·hadoop·python·spark·毕业设计·课程设计·水质
计算机编程指导师10 小时前
【大数据毕设】Hadoop+Spark台北市住宅价格数据可视化分析系统源码 毕业设计 选题推荐 毕设选题 数据分析 机器学习
大数据·hadoop·python·spark·毕业设计·课程设计·住宅价格
nvd1118 小时前
Flink 批处理驱动的湖仓 AI 财务研报流水线:从双流广播汇聚到 Agent 智能决策与原生 Iceberg 落盘全景实战
大数据·人工智能·flink