Git指北

常用命令

top1:拉取远程项目

shell 复制代码
git clone -b master url
git clone -b master https://gitee.com/turanran/algorithm-service

top2:拉取远程最新代码

shell 复制代码
git pull 

默认拉取当前分支所跟踪的远程分支的更新。

如果当前dev分支跟踪的是origin/dev,那么它拉取的是 dev 的更新,而非 master 的。

shell 复制代码
git pull origin master

明确指定拉取远程 master 分支,并合并到当前分支。。

top3:推送当前分支至远程分支

shell 复制代码
git push
git push origin master

top4:撤回已提交commit

  1. 仅本地提交,未推送:git reset直接回退提交历史,灵活控制本地文件状态。
    此命令会将分支的HEAD指针移动到指定的提交,从而"丢弃"之后的提交。根据对工作区文件的不同处理方式,分为三种模式:
  • git reset --soft HEAD~1
    效果:仅撤回commit,保留所有已更改的文件,并将其置于暂存区(即已git add的状态)。你可以直接修改后再次提交。
    适用场景:提交后发现漏了文件或需要微调,希望快速重新提交。
  • git reset --mixed HEAD~1 (默认选项)
    效果:撤回commit,并取消所有文件的暂存状态(即撤销git add),但更改内容保留在工作目录中。你需要重新git add文件后再提交。
    适用场景:最常用的撤回方式,重新选择要提交的文件。
  • git reset --hard HEAD~1
    • 效果:彻底撤回commit,并丢弃所有本地未提交的更改,将工作目录完全恢复到上一次提交的状态。
    • ⚠️ 警告:此操作不可逆,会永久丢失自上次提交以来的所有修改,请谨慎使用。
    说明:HEAD~1 表示上一个提交,撤回最近一次commit。如果想撤回最近两次,可使用HEAD~2,以此类推

reset完成后,需要使用git push -f remoteName强制覆盖远程历史,git push remoteName无法正常推送

  1. 已推送到远程仓库:git revert通过新增一个"反操作"提交来撤销,不会重写公共历史,更安全。
    此命令会创建一个新的提交,其内容是指定提交的"反向操作",从而安全地撤销更改,并保留完整的提交历史。
  • 撤回单次提交:

    shell 复制代码
    # 先使用 git log 找到要撤回的commit的完整ID或前几位
    git log
    # 执行撤回,例如commit id是 abc123
    git revert abc123

    执行后,Git会打开编辑器让你填写新提交的信息,保存退出即可生成一个撤销提交。

  • 撤回最近一次提交(快捷方式):

    shell 复制代码
    git revert HEAD
  • 如果已推送到远程仓库:执行 git revert 后,只需要正常地 git push 这个新生成的撤销提交到远程即可

  1. 仅修改提交信息:git commit --amend修改最近一次commit的备注信息,不改变文件内容。
    如果只是写错了commit备注,可以使用 git commit --amend 命令,这会打开编辑器让你修改最近一次提交的信息。

注意事项
git reset会重写提交历史。如果commit已经推送到公共远程仓库 ,切勿使用git reset,否则当你再次推送时,需要使用git push -f强制覆盖远程历史,这可能会回滚其他开发者的commit。

top5:根据commitId查询Git log

shell 复制代码
git show e8431e6caf2b0b59a97cab8daace904e91cdd8dc
相关推荐
柒和远方1 分钟前
V053: 从 Git 回退到 AI 工程治理:Vibe Coding 的 Harness 工作流与质量阀门
git·vibecoding
触底反弹13 小时前
Vibe Coding 不写 Git,等于悬崖边飙车
人工智能·git·面试
泡沫冰@14 小时前
基于Git、Jenkins、Podman、ECS的CI/CD实践
git·jenkins·podman
zfoo-framework15 小时前
git拦截大于5M文件
git
马里马里奥-18 小时前
VS Code Git 工作树:解锁多分支并行开发新体验
git
2401_853448231 天前
Git安装流程和基础使用步骤
git·github
j7~1 天前
【Git】《Git 系列指南(一):初识Git和安装Git配置》
运维·git·git版本控制器·git安装步骤
Sagittarius_A*1 天前
Web 安全之 Git 泄露:原理剖析 + CTFHub Log/Stash/Index 全题型解法
git·安全·web安全
lazy H1 天前
从入门到日常开发,一篇文章掌握 Git 核心操作
git·后端·学习·github
zzqssliu2 天前
煤炉自动代拍系统的队列设计与超时控制机制
git·github