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
相关推荐
IT研究室5 小时前
最新大数据毕业设计选题推荐-基于大数据的电商与本地服务消费评论数据可视化分析-大数据-Spark-Hadoop-Bigdata
大数据·信息可视化·课程设计
大大大大晴天️6 小时前
从 HDFS 到对象存储:计算存储分离如何重塑云原生大数据底座
大数据·云原生
大大大大晴天16 小时前
从 HDFS 到对象存储:计算存储分离如何重塑云原生大数据底座
大数据
阿里云大数据AI技术17 小时前
Agentic Search 2.0:从单轮对话迈向企业级 AI 搜索自动驾驶Agent
人工智能·elasticsearch·agent
Elasticsearch20 小时前
你的 AI agent 需要一个不在场证明:Elastic 中 Agent Builder 的可观测性和审计追踪
elasticsearch
Elasticsearch1 天前
仪表板活动日志:了解哪些 Kibana 仪表板会被使用
elasticsearch
用户3610588626121 天前
SparkStreaming 之 updateStateByKey 算子详解及代码实现
大数据·spark
工藤孤独1 天前
Git Worktree 从零到多智能体实战
git
咖啡屋和酒吧1 天前
“隐性肩颈紧张”正在透支精力|没有酸痛,不代表肩颈处于健康状态
大数据·精选
港股研究社1 天前
专注履约底座,顺丰同城在即时零售效率时代提升增长动能
大数据·人工智能