Git常用命令的详细指南

一、仓库基础操作

命令 作用 示例
git init 初始化新仓库 git init project
git clone 克隆远程仓库 git clone https://github.com/user/repo.git
git status 查看工作区状态 git status -s(简洁模式)

二、文件操作管理

命令 作用 注意事项
git add 添加文件到暂存区 git add .(添加全部) git add *.cpp(通配符)
git rm 删除文件 git rm --cached file(保留本地文件)
git mv 移动/重命名文件 git mv old.txt new.txt

三、提交历史管理

命令 作用 使用场景
git commit 提交变更 git commit -m "fix: 修复登录逻辑"
git log 查看提交历史 git log --oneline --graph(图形化查看)
git diff 对比差异 git diff HEAD~2..HEAD(对比最近两次提交)

四、分支管理

命令 作用 组合技巧
git branch 分支操作 git branch -d feature(删除分支)
git checkout 切换分支 git checkout -b dev(创建并切换)
git merge 合并分支 git merge --no-ff feature(保留合并历史)
git rebase 变基操作 git rebase -i HEAD~3(交互式合并提交)

五、远程协作

命令 作用 典型流程
git remote 管理远程地址 git remote -v(查看远程地址)
git push 推送代码 git push origin main --force(强制推送,慎用)
git pull 拉取更新 git pull origin dev --rebase(变基式拉取)
git fetch 获取远程更新 git fetch && git merge origin/main

六、撤销与恢复

场景 命令 说明
撤销未add修改 git restore <file> 还原到最近提交状态
撤销已add文件 git reset HEAD <file> 从暂存区移除
修改提交信息 git commit --amend 修改最后一次提交
回退到历史版本 git reset --hard HEAD^ 彻底回退(慎用)
恢复误删文件 git checkout HEAD -- <file> 从版本库恢复文件

七、高级操作技巧

  1. 储藏修改

    复制代码
    git stash save "WIP: 临时保存"  # 储藏当前修改
    git stash list                 # 查看储藏列表
    git stash pop                  # 恢复最近储藏
  2. 标签管理

    复制代码
    git tag v1.0.0                # 创建轻量标签
    git tag -a v1.1.0 -m "正式版"  # 创建含备注的标签
    git push origin --tags         # 推送所有标签
  3. 子模块管理

    复制代码
    git submodule add https://github.com/lib/lib.git
    git submodule update --init --recursive

八、典型工作流示例

复制代码
# 日常开发流程
git checkout -b feature/login   # 创建功能分支
git add .                       # 添加修改文件
git commit -m "完成登录功能开发" # 提交修改
git push origin feature/login   # 推送分支

# 代码合并流程
git checkout main               # 切换主分支
git pull origin main            # 获取最新代码
git merge feature/login         # 合并功能分支
git push origin main            # 推送合并结果

九、配置优化建议

复制代码
# 常用配置项
git config --global alias.co checkout          # 设置命令别名
git config --global core.editor "code --wait"  # 设置VS Code为默认编辑器
git config --global credential.helper cache    # 缓存密码15分钟

# 生成SSH密钥
ssh-keygen -t ed25519 -C "your_email@example.com"

十、问题诊断工具

命令 用途
git reflog 查看所有操作历史(救命命令)
git bisect 二分法定位问题提交
git blame 查看文件修改历史
相关推荐
亚林瓜子3 小时前
AWS OpenSearch(ES)启用慢速日志
elasticsearch·性能调优·aws·log·opensearch·日志组
赵谨言3 小时前
基于Python Web的大数据系统监控平台的设计与实现
大数据·开发语言·经验分享·python
南棱笑笑生3 小时前
20251028在Ubuntu20.04.6上编译AIO-3576Q38开发板的Buildroot系统
大数据·linux·服务器·rockchip
武子康3 小时前
大数据-139 ClickHouse MergeTree 最佳实践:Replacing 去重、Summing 求和、分区设计与物化视图替代方案
大数据·后端·nosql
我要升天!4 小时前
Git的原理与使用 -- 分支管理
大数据·git·elasticsearch
聪明努力的积极向上4 小时前
【GIT】VS中图形化页面进行还原和重置的git操作
git
培培说证6 小时前
2025年高职大数据技术专业需要什么基础?
大数据
北邮-吴怀玉6 小时前
1.4.2 大数据方法论与实践指南-质量治理(准确性&及时性)
大数据·数据治理
Hermia_yuan6 小时前
【Git】版本更新
git