git常用命令总结

一、 创建与克隆仓库

命令 说明
git init 在当前目录初始化一个新的 Git 仓库
git clone <repo_url> 克隆一个远程仓库到本地(例如:git clone https://github.com/user/repo.git

初始化一个git仓库,会生成一个.git目录,ls查看并没有显示。

通过ls -lA才可以查看,默认隐藏.开头的文件。

进入.git目录查看里面的文件情况。

二、 基础本地操作(个人工作流)

这些命令是你独自编码时最常用的。

命令 说明
git status 查看工作区和暂存区的状态(必用!)
git add <file> 指定文件添加到暂存区
git add . 所有修改(新建、修改的文件)添加到暂存区
git add -A 所有变化(包括删除)添加到暂存区
git commit -m "commit message" 将暂存区的内容提交到本地仓库,并附上提交信息
git commit -am "commit message" 一次性add已跟踪文件的修改并commit(对新文件无效)
git restore <file> 丢弃工作区的修改,恢复到上次 commit 的状态
git restore --staged <file> 将文件从暂存区撤出,但保留工作区的修改
git rm <file> 删除工作区文件,并且将这次删除放入暂存区
git mv <file_old> <file_new> 移动或重命名文件,并将这个操作放入暂存区

三、 查看提交历史与差异

命令 说明
git log 查看提交历史
git log --oneline 以简洁的单行模式查看历史
git log --graph 以拓扑图形式显示分支合并历史
git diff 查看工作区暂存区的差异
git diff --staged 查看暂存区本地仓库最新版本的差异
git diff <commit_id1> <commit_id2> 查看两次提交之间的差异

四、 分支管理

命令 说明
git branch 列出所有本地分支
git branch -r 列出所有远程分支
git branch -a 列出所有本地和远程分支
git branch <branch_name> 创建一个新分支
git checkout <branch_name> 切换到指定分支
git switch <branch_name> (新命令) 切换到指定分支,更语义化
git checkout -b <branch_name> 创建并切换到新分支(经典组合)
git switch -c <branch_name> (新命令) 创建并切换到新分支
git merge <branch_name> 合并 指定分支到当前分支
git branch -d <branch_name> 删除一个已合并的分支
git branch -D <branch_name> 强制删除一个分支(即使它未合并)

五、 远程仓库协作

命令 说明
git remote -v 查看远程仓库地址(verbose)
git fetch 从远程仓库获取 最新信息,但不合并到本地
git pull 拉取 远程仓库的最新更改并合并 到当前分支(=git fetch + git merge
git pull --rebase 拉取远程更改并使用 rebase 方式合并(保持历史线整洁)
git push 将本地分支推送到远程跟踪分支
git push -u origin <branch_name> 首次推送分支时,建立跟踪关系并推送
git push origin --delete <branch_name> 删除远程分支
git remote show origin 显示远程仓库 origin 的详细信息

六、 撤销与回退

命令 说明
git commit --amend 修补提交,将本次修改追加到上一次提交中(修改提交信息或内容)
git reset --soft <commit_id> 回退到某个版本,保留工作区和暂存区的内容
git reset --mixed <commit_id> (默认) 回退到某个版本,保留工作区内容,但重置暂存区
git reset --hard <commit_id> 彻底回退 到某个版本,丢弃所有工作区和暂存区的修改 (谨慎使用!)
git revert <commit_id> 创建一个新的提交来撤销某次提交的修改,更安全,适合公共分支

七、 储藏临时工作

当你需要临时切换分支但又不想提交未完成的工作时使用。

命令 说明
git stash 将当前工作区和暂存区的修改储藏起来
git stash save "message" 储藏并添加说明信息
git stash list 列出所有储藏
git stash pop 应用最近一次的储藏并删除该储藏
git stash apply 应用最近一次的储藏,但不删除该储藏
git stash drop 删除指定的储藏

总结:最核心的每日命令

如果你刚开始,请优先掌握这个核心子集:

  1. git status - 看看当前状态git

  2. git add . - 添加所有修改

  3. git commit -m "message" - 提交

  4. git pull - 先拉取更新

  5. git push - 再推送代码

  6. git checkout -b <new_branch> / git switch -c <new_branch> - 创建新分支

  7. git merge <branch> - 合并分支

上面演示了部分git命令的操作。希望这份清单对你有帮助!多加练习,才能熟练掌握git命令。虽然Idea已经集成了git命令,很多命令都可以以快捷键形式展示,但是还是有必要了解git命令,其中有些命令是idea不能解决的,通过命令行操作会对gIt有一个全新的认识。

相关推荐
Apache Flink17 分钟前
Apache Flink Agents 0.2.0 发布公告
大数据·flink·apache
永霖光电_UVLED1 小时前
打造更优异的 UVB 激光器
大数据·制造·量子计算
m0_466525291 小时前
绿盟科技风云卫AI安全能力平台成果重磅发布
大数据·数据库·人工智能·安全
晟诺数字人1 小时前
2026年海外直播变革:数字人如何改变游戏规则
大数据·人工智能·产品运营
vx_biyesheji00011 小时前
豆瓣电影推荐系统 | Python Django 协同过滤 Echarts可视化 深度学习 大数据 毕业设计源码
大数据·爬虫·python·深度学习·django·毕业设计·echarts
2501_943695331 小时前
高职大数据与会计专业,考CDA证后能转纯数据分析岗吗?
大数据·数据挖掘·数据分析
实时数据1 小时前
通过大数据的深度分析与精准营销策略,企业能够有效实现精准引流
大数据
子榆.2 小时前
CANN 性能分析与调优实战:使用 msprof 定位瓶颈,榨干硬件每一分算力
大数据·网络·人工智能
新芒2 小时前
暖通行业两位数下滑,未来靠什么赢?
大数据·人工智能
忆~遂愿3 小时前
CANN ATVOSS 算子库深度解析:基于 Ascend C 模板的 Vector 算子子程序化建模与融合优化机制
大数据·人工智能