Git常用命令分类汇总

Git常用命令分类汇总

一、基础操作
  1. 初始化仓库

    bash 复制代码
    git init
  2. 添加文件到暂存区

    bash 复制代码
    git add file_name   # 添加单个文件
    git add .           # 添加所有修改
  3. 提交更改

    bash 复制代码
    git commit -m "提交描述"
  4. 查看仓库状态

    bash 复制代码
    git status
二、分支管理
  1. 创建/切换分支

    bash 复制代码
    git branch branch_name      # 创建分支
    git checkout branch_name    # 切换分支
    git checkout -b new_branch  # 创建并切换分支
  2. 合并分支

    bash 复制代码
    git merge branch_name       # 将指定分支合并到当前分支
  3. 删除分支

    bash 复制代码
    git branch -d branch_name   # 删除已合并的分支
    git branch -D branch_name   # 强制删除未合并的分支
三、远程仓库
  1. 关联远程仓库

    bash 复制代码
    git remote add origin git@github.com:user/repo.git
  2. 推送代码

    bash 复制代码
    git push origin branch_name    # 首次推送需加 -u 参数
  3. 拉取代码

    bash 复制代码
    git pull origin branch_name    # 拉取并合并远程分支
    git fetch origin               # 仅获取远程更新(不合并)
  4. 克隆仓库

    bash 复制代码
    git clone git@github.com:user/repo.git
四、撤销与回退
  1. 撤销工作区修改

    bash 复制代码
    git checkout -- file_name      # 撤回指定文件的修改
  2. 重置提交历史

    bash 复制代码
    git reset HEAD~1               # 回退到前一次提交(保留修改)
    git reset --hard HEAD~1        # 强制回退(丢弃修改)
  3. 修改最近提交

    bash 复制代码
    git commit --amend             # 修正提交描述或内容
五、日志与对比
  1. 查看提交历史

    bash 复制代码
    git log                        # 完整日志
    git log --oneline --graph      # 简化版可视化日志
  2. 查看文件差异

    bash 复制代码
    git diff                       # 工作区与暂存区的差异
    git diff HEAD                  # 工作区与最新提交的差异
六、其他实用命令
  1. 暂存临时修改

    bash 复制代码
    git stash                      # 保存未提交的修改
    git stash pop                  # 恢复暂存的修改
  2. 标签管理

    bash 复制代码
    git tag v1.0                   # 创建标签
    git push origin --tags         # 推送所有标签到远程

注意事项

  1. 使用 git reset --hard 前需确认已保存所有修改
  2. 协作开发时,建议频繁 git pull --rebase 减少冲突
  3. 敏感操作(如强制推送)前备份代码
相关推荐
没有bug.的程序员2 小时前
JAVA面试宝典 -《安全攻防:从 SQL 注入到 JWT 鉴权》
java·安全·面试
熬了夜的程序员5 小时前
【华为机试】HJ61 放苹果
算法·华为·面试·golang
倔强青铜三5 小时前
苦练Python第15天:Lambda函数——Python的匿名一行杀器
人工智能·python·面试
倔强青铜三6 小时前
苦练Python第14天:Python函数中的*args与**kwargs解析
人工智能·python·面试
岁忧6 小时前
(LeetCode 面试经典 150 题 ) 209. 长度最小的子数组(双指针)
java·c++·算法·leetcode·面试·go
洁辉6 小时前
C# & .NET 面试深度复习指南
面试·c#·.net
倔强青铜三7 小时前
苦练Python第13天:变量作用域、全局变量与局部变量
人工智能·python·面试
熬了夜的程序员7 小时前
【华为机试】HJ30 字符串合并处理
算法·华为·面试·go
赫本的猫7 小时前
告别生命周期!用Hooks实现更优雅的React开发
前端·react.js·面试
赫本的猫7 小时前
React中的路由艺术:用react-router-dom实现无缝页面切换
前端·react.js·面试