一文总结Git的常用命令

基本概念

Git是一个分布式版本控制系统,用于管理和跟踪文件的变化。它可以追踪文件的每个版本,记录文件的修改历史,并允许用户在不同版本之间进行切换和合并。Git可以让多个开发人员同时对同一个代码库进行工作,而不会发生冲突。

它还提供了强大的分支和合并功能,使得团队协作变得更加高效。Git的设计目标是速度、简单性和数据完整性,因此它在处理大型代码库时表现出色。它是开源的,并且有一个活跃的社区支持和扩展。Git被广泛应用于软件开发项目中,是现代开发团队的标准工具之一。本文总结了Git操作的常用命令。


常用命令

基础使用命令

命令 作用 注意
git -v 查看 git 版本
git init 初始化 git 仓库
git add 文件标识 暂存某个文件 文件标识以终端起始的相对路径
git add . 暂存所有文件
git commit -m"说明注释" 提交产生版本记录
git status 查看文件状态 - 详细信息
git status -s 查看文件状态 - 简略信息 第一列是暂存区状态 第二列是工作区状态
git ls-files 查看暂存区的文件列表
git restore 文件标识 从暂存区恢复到工作区 如果文件标识为 . 则恢复所有文件
git rm --cached 文件标识 从暂存区移除文件 不让 git 跟踪文件变化
git log 查看提交记录 - 详细信息
git log --oneline 查看提交记录 - 简略信息 版本号 分支指针 提交时的说明注释

分支相关命令

命令 作用 注意
git reflog --oneline 查看完整历史 - 简略消息 包括提交,切换,回退等所有记录
git reset 版本号 切换版本代码到暂存区和工作区 --soft 模式保留暂存区和工作区原本内容 --hard 模式不保留暂存区和工作区原本内容 --mixed 模式不保留暂存区,工作区保留(默认) 先覆 盖到暂存区,再用暂存区对比覆盖工作区
git branch 分支名 创建分支
git branch 查看本地分支
git branch -d 分支名 删除分支 请确保记录已经合并到别的分支下,再删除分支
git checkout 分支名 切换分支
git checkout -b 分支名 创建并立刻切换分支
git merge 分支名 把分支提交历史记录合并到当前所在分支

远程仓库命令

命令 作用 注意
git remote add 远程仓库别名 远程仓库地址 添加远程仓库地址 别名唯一,地址是 .git 结尾的网址
git remote -v 查看远程仓库地址
git remote remove 远程仓库别名 删除远程仓库地址
git pull 远程仓库别名 分支名 拉取 完整写法: git pull 远程仓库别名 远程分支名:本地分支名 等价于:git fetch 和 git merge
git push 远程仓库别名 分支名 推送 完整写法: git push 远程仓库别名 本地分支名:远程分支名 -u:建立通道后以后可以简写 git push
git pull --rebase 远程仓库别名 分支名 拉取合并 合并没有关系的记录
git clone 远程仓库地址 克隆 从0得到一个远程的Git仓库到本地使用
git subtree push --prefix 打包的文件名 origin gh-pages 将打包的文件夹作为一个分支并推送
相关推荐
slongzhang_5 分钟前
PHP图片处理|画布入门
开发语言·php
vortex513 分钟前
Bash 替换机制(三):变量替换
linux·开发语言·bash
奇树谦14 分钟前
Qt QDockWidget 深度解析:从基础使用到可保存布局的工程级主界面
开发语言·qt
秦苒&21 分钟前
【C语言】详解数据类型和变量(一):数据类型介绍、 signed和unsigned、数据类型的取值范围、变量、强制类型转换
c语言·开发语言·c++·c#
我爱学习_zwj21 分钟前
动态HTTP服务器实战:解析请求与Mock数据
开发语言·前端·javascript
梅孔立34 分钟前
【实用教程】python 批量解析 EML 邮件文件 存成txt ,可以利用 AI 辅助快速生成年终总结
开发语言·python
rannn_11136 分钟前
【Git教程】概述、常用命令、Git-IDEA集成
java·git·后端·intellij-idea
c#上位机1 小时前
C#异步编程之async、await
开发语言·c#
郑州光合科技余经理1 小时前
实战分享:如何构建东南亚高并发跑腿配送系统
java·开发语言·javascript·spring cloud·uni-app·c#·php
爱装代码的小瓶子1 小时前
【c++进阶】C++11新特性:一切皆可{}初始化
开发语言·c++·visual studio