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
相关推荐
dessler1 天前
Elasticsearch(ES)备份与快照(Snapshot)
大数据·elasticsearch·jenkins
CoderJia程序员甲1 天前
Python连接和操作Elasticsearch详细指南
python·elasticsearch
铭毅天下1 天前
投标环节:如何科学、合理地介绍 Elasticsearch 国产化替代方案——Easysearch?
大数据·elasticsearch·搜索引擎·全文检索
Vic101011 天前
华为云高斯数据库:gsqlexec用法
java·大数据·数据库·postgresql·华为云
Elasticsearch1 天前
使用 Elastic Agent Builder 和 MCP 实现 Agentic 参考架构
elasticsearch
2501_941805931 天前
面向高可用微服务体系的状态管理演进与多语言实现经验融合实践分享文章
java·大数据·分布式
视界先声1 天前
洁诚新能源:践行双碳战略的绿色行动派
大数据·人工智能·物联网
5G全域通1 天前
工信部2026年短信业务合规申请全流程官方指南(1月1日强制生效)
大数据·网络·人工智能·信息与通信·时序数据库
MindCareers1 天前
Beta Sprint Day 5-6: Android Development Improvement + UI Fixes
android·c++·git·sql·ui·visual studio·sprint