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 查看文件修改历史
相关推荐
电商API_180079052472 小时前
京东商品详情API技术文章
大数据·运维·人工智能·网络爬虫
Lumistory2 小时前
城市建筑照明的落地与长效运营观察
大数据·数据库·中间件·光照贴图
lvts_cs3 小时前
淄博高新区绿天使数智创新港:高标准产研厂房全维度详解
大数据·人工智能
大大大大晴天3 小时前
实时数仓怎么建:基于StarRocks的宽表、指标层与主题建模
大数据
AC赳赳老秦5 小时前
公开图片 OCR 数据提取:OpenClaw 合规采集公开信息图,识别文字与表格并转化为结构化数据
java·大数据·前端·数据库·python·php·openclaw
bransyin6 小时前
一个 SQL 字段到底是怎么算出来的?我做了一个能给出“证据”的血缘工具
大数据·sql·ai·血缘
AC赳赳老秦7 小时前
风控岗应用:OpenClaw 采集公开司法与经营异常数据,自动生成企业风险评估报告
大数据·c语言·数据库·人工智能·python·php·openclaw
starzy19909 小时前
SparkSQL 数据源与底层架构深度剖析
大数据·分布式·架构·spark
Elastic 中国社区官方博客10 小时前
你的 AI agent 不需要你的 API 密钥:使用 OAuth 2.1 对 Elasticsearch MCP 服务器进行身份验证
大数据·运维·人工智能·elasticsearch·搜索引擎·全文检索