GIT命令常用方法
- Fang XS.
 - 1452512966@qq.com
 - 如果有错误,希望被指出,学习技术的路难免会磕磕绊绊
 - 量的积累引起质的变化
 
Git 常用操作速查表
分支管理
| 命令 | 说明 | 常用场景 | 
|---|---|---|
git branch | 
查看本地分支列表 | 查看当前有哪些分支 | 
git branch -a | 
查看所有分支(包括远程) | 查看全部分支情况 | 
git branch <分支名> | 
创建新分支 | 基于当前分支创建新分支 | 
git checkout <分支名> | 
切换到指定分支 | 切换工作分支 | 
git checkout -b <分支名> | 
创建并切换到新分支 | 最常用的新建分支方式 | 
git switch <分支名> | 
切换到指定分支(新方式) | 替代 git checkout | 
git switch -c <分支名> | 
创建并切换分支(新方式) | 替代 git checkout -b | 
git branch -d <分支名> | 
删除本地分支 | 清理已合并的分支 | 
git branch -D <分支名> | 
强制删除本地分支 | 删除未合并的分支 | 
提交操作
| 命令 | 说明 | 常用场景 | 
|---|---|---|
git status | 
查看工作区状态 | 随时查看当前修改状态 | 
git add <文件名> | 
将特定文件添加到暂存区 | 准备提交特定文件 | 
git add . | 
添加所有修改到暂存区 | 准备提交所有修改 | 
git commit -m "描述" | 
提交暂存区的更改 | 提交代码到本地仓库 | 
git commit -am "描述" | 
添加并提交所有已跟踪文件的修改 | 快捷提交(不包含新文件) | 
git restore <文件名> | 
撤销工作区的修改 | 丢弃未暂存的修改 | 
git restore --staged <文件名> | 
将文件从暂存区移出 | 取消已 git add 的文件 | 
远程操作
| 命令 | 说明 | 常用场景 | 
|---|---|---|
git push -u origin <分支名> | 
首次推送新分支 | 将本地新分支推送到远程 | 
git push | 
推送当前分支到远程 | 后续推送更新 | 
git pull | 
拉取远程更新并合并 | 获取远程最新代码 | 
git fetch | 
获取远程更新但不合并 | 查看远程有什么更新 | 
git clone <仓库地址> | 
克隆远程仓库到本地 | 第一次下载项目 | 
查看与比较
| 命令 | 说明 | 常用场景 | 
|---|---|---|
git log | 
查看提交历史 | 查看项目历史记录 | 
git log --oneline | 
查看简洁的提交历史 | 快速浏览提交记录 | 
git diff | 
查看未暂存的修改 | 比较工作区与暂存区的差异 | 
git diff --staged | 
查看已暂存的修改 | 比较暂存区与最新提交的差异 | 
git show <commit-id> | 
查看某次提交的详细内容 | 审查具体提交的改动 | 
合并与重置
| 命令 | 说明 | 常用场景 | 
|---|---|---|
git merge <分支名> | 
合并指定分支到当前分支 | 将特性分支合并到主分支 | 
git rebase <分支名> | 
变基当前分支到指定分支 | 整理提交历史(谨慎使用) | 
git reset --hard <commit-id> | 
重置到指定提交(丢失修改) | 危险操作,回滚到历史版本 | 
git reset --soft <commit-id> | 
重置到指定提交(保留修改) | 撤销提交但保留修改在暂存区 | 
标签管理
| 命令 | 说明 | 常用场景 | 
|---|---|---|
git tag | 
查看所有标签 | 查看版本标签 | 
git tag v1.0.0 | 
创建轻量标签 | 打版本号 | 
git tag -a v1.0.0 -m "版本说明" | 
创建附注标签 | 创建带说明的版本标签 | 
git push origin --tags | 
推送所有标签到远程 | 分享标签到远程仓库 | 
最常用工作流程示例
            
            
              bash
              
              
            
          
          # 1. 从主分支创建功能分支
git checkout -b feature-user-login
# 2. 开发代码...然后提交
git add .
git commit -m "实现用户登录功能"
# 3. 推送到远程(第一次)
git push -u origin feature-user-login
# 4. 后续继续开发...
git add .
git commit -m "修复登录验证问题"
git push  # 第二次及以后推送简化