Git操作命令总结

背景

这两天学习了git相关操作,记录下常见的操作命令。

基本理论

git本地有三个工作区:工作目录(Working Directory)、暂存区(stage\index)、资源区(Repository)或Git Directory

操作流程

目录结构

版本库:/.git隐藏文件夹

工作区:/.git所在的目录

暂存区:/.git/index 保存临时修改文件的地方

用户配置文件 :gitconfig

文件地址:.gitconfig

常见命令

通用指令

查看配置:查看配置git config -l

查看当前用户配置git config --global --list

修改用户配置

查看文件状态:git status [filename]

查看操作日志: git log

提示的文字在commit时书写

切换指定版本: git reset

git reset--hard 995e0688f2554e1e557d86f82de3e5c92db817c8 ,可以切换到指定版本的文件

分类

本地仓库操作

设置本地git仓库:git init

添加到暂存区: git add

可以看到add后文件的颜色由红变绿

取消暂存: git reset

add的逆操作,取消存入暂存区

提交:git commit

-m 以及后面的文字为此次更新的注释说明

本地流程总结

新建文件(红色)->add 文件(绿色)-> commit 文件(白色)

远程仓库操作

设置远程仓库:git clone

设置远程git仓库: git clone git@gitee.com:gitee-enterprise_2_0/hellogit.git

查看远程仓库:git remote -v

添加远程仓库:git remote add

可观察添加前后远程仓库数量(0->2)

推送到远程仓库:git pull origin master

推送到远程流程:新建文件->添加到缓存区(add)->提交(commit,可写备注)->推送远程仓库(pull)

合并冲突:pull后加上参数 --allow-unrelated-histories

分支相关操作

查看分支: git branch

参数说明:

不写,本地分支

-r远程分支

-a 所有分支(远程+本地)

创建分支: git branch [name]

切换分支:git checkout [name]

推送分支至远程仓库:git push [shortName] [name]

注意与上文的区别:git pull origin master

推送谁,最后一个参数就写谁,上文默认是主线master,这是分支b1

合并分支: git merge [name]

合并前切换到主线,在主线master合并分支b1

分支合并冲突处理 : commit后加 -i

注意与上文区别:--allow-unrelated-histories

上文是在一条分支内处理,横向的

这是处理两条分支冲突,纵向的

标签相关操作

显示标签:git tag

创建标签: git tag [name]

将标签推送至远程仓库:git push [shortName][name]

检出标签:git checkout -b [branch][name]

标签相关操作与分支基本相同

分支可看作日常协调工作,时不时会改

标签是较为稳定的一个版本,类似 v1.0,v2.0 作为一个发布版本

补充:基本的Linux的命令

pwd:显示当前所在的目录路径

ls(ll):都是列出当前目录的所有文件,之不多ll列出的内容更加详细

touch:创建一个文件,如touch index.js 就会在当前文件下创建一个文件

rm:删除一个文件

mkdir:新建一个目录,就是新建一个文件夹

rm-r:删除一个文件夹,rm -r src删除src目录

mv:移动文件 mv index.html src,index为要移动的文件,src为目标文件夹

reset:重新初始化屏幕

clear:清屏

history:查看历史命令

help:帮助

#表示注释

相关推荐
胡萝卜13840 分钟前
Spring扩展接口(三)- 为什么要掌握Bean的生命周期
后端
麦兜*1 小时前
SpringBoot 2.x→3.0升级实战:Jakarta EE兼容性改造清单
java·spring boot·后端·spring·系统架构·maven·springcloud
天天摸鱼的java工程师2 小时前
蚂蚁金服面试官:你能从JVM源码解释STW吗?
java·后端·面试
liangdabiao2 小时前
包学会!WooCommerce开源电商的基础架构 - 简要介绍它的核心对象 - 有用有料
后端·架构
未来影子2 小时前
MCP的SSE重连机制,源码解析
人工智能·后端
bobz9652 小时前
kubevirt 替换为 hostnetwork 的优势
后端
大象席地抽烟2 小时前
Nginx Ingress 证书
后端
心之语歌2 小时前
Java 设计 MCP SSE 配置
java·后端
华仔啊2 小时前
推荐一款比Cursor更懂中国程序员的AI编程工具
前端·后端