git的学习与使用(笔记最全)
什么是git
Git是一种分布式版本控制系统,每个开发者都可以在自己的机器上拥有一个完整的仓库
特点
- 断网也可以工作:没网的情况下,不会影响工作。
- 对于未提交到远程库的代码可以随时撤销。
- 可以查看历史提交记录,以及文件内容的修改记录
git的工作流程
- clone(克隆):从远程仓库中克隆代码到本地仓库
- checkout(检出):从本地仓库中检出一个仓库分支然后进行修订
- add(添加):在提交前先将代码提交到暂存区
- commit(提交):提交到本地仓库。本地仓库中保存修改的各个历史版本
- fetch(抓取):从远程库,抓取到本地仓库,不进行任何的合并动作,一般操作比较少
- pull (拉取):从远程库拉到本地库,自动进行合并(merge),然后放到到工作区,相当于fetch+merge
- push(推送):修改完成后,需要和团队成员共享代码时,将代码推送到远程仓库
git的安装
git的下载链接,下载安装包,按照流程安装好就可以了
git的配置
账号绑定
账号绑定 Your Name填写你的账号
git config --global user.name "Your Name"邮箱的绑定
邮箱绑定 email@example.com填写你的邮箱
git config --global user.email "email@example.com"生成SSH公钥
生成SSH公钥 email@example.com填写远程仓库邮箱
ssh-keygen -t rsa -C "email@example.com"
查看SSH公钥并绑定远程仓库(gitee)
查看SSH公钥
cat ~/.ssh/id_rsa.pub
绑定到远程仓库Gitee中的SSH公钥
git的基本操作
获取本地仓库git init
- 进入项目目录中,点击右键打开Git bash窗口
- 执行命令git init
- 如果创建成功后可在文件夹下看到隐藏的.git目录。
了解工作区、暂存区、本地仓库的关系
- 工作区:即个人克隆项目到本地后,项目所在的文件夹目录。
- 暂存区:用于储存工作区中的变更(增删改等改动)的文件的地方。操作时使用git add会将本地所有的变更提交到暂存区中,是提交到仓库之前的缓存区。
- 本地仓库:用于储存工作区和暂存区中提交上来的文件,使用git commit -m '提交内容的描述'。
查看状态git status
- git status用来显示工作目录和暂存区的状态
- 未创建test.txt文件前使用git status查看会提示无需提交没有任何操作
- 创建文件后会提示有个未跟踪的文件test.txt
- 然后通过git add test.txt提交到暂存区,会显示新文件test.txt需要提交更改
- 使用git commit -m '提交内容的描述'提交到本地仓库
- 在用git status查看已经没有需要提交的了
查看提交日志git log
命令形式:git log [options]
options参数
- --all 显示所有分支
- --pretty=oneline 将提交信息显示为一行
- --abbrev-commit 使得输出的commitid更简短
- --graph 以图的形式显示
版本回退
修改内容重新提交,发现有两条记录,当我们想返回之前的节点
# HEAD^ 是commit提交的ID git reset --hard HEAD^
查看所有操作记录
如果还想返回已经删除的版本,可以通过git reflog查看操作记录,然后在git reset回退版本
添加文件到忽略列表
可以新建个
.gitignore文件,里面的内容可以决定忽略列表比如忽略一个文件log.txt,在
.gitignore文件中一行填进log.txt如果想要忽略一个文件夹log,在
.gitignore文件中一行填进/logs
git的分支
几乎所有的版本控制系统都以某种形式支持分支,使用分支意味着你可以把你的工作从开发主线上分离开来进行重大的BUg修改、开发新的功能,以免影响开发主线,也可以实现多人协同开发、功能隔离、版本发布等目的
查看本地分支
git branch
创建本地分支
git branch 分支名
切换分支
# 切换分支 git checkout 分支名# 切换分支,如果不存在,直接创建并切换 git checkout -b 分支名
如果分支commit提交了该文件,在其他分支和主分支是看不到的
分支合并
git merge 分支名删除分支
不能删除当前分支,只能删除其他分支(包括主分支)
# 删除分支时,需要做各种检查 git branch -d 分支名# 不做任何检查,强制删除 git branch -D 分支名删除分支恢复
git checkout -b 分支名/ID如果不记得了,可以通过git reflog查看操作记录,然后在恢复
git的冲突解决
冲突出现场景一般是不同分支对同一个文件提交修改不同内容,然后合并的时候出现的问题
- 查看冲突文件
- 检查冲突内容
- 手动修改内容
- 在重修提交
gitee和github的使用
查看是否关联gitee或github远程仓库
git remote关联gitee或github远程仓库
git remote add <name> <url> <name> : 远程仓库的名字,一般是origin <url> : 远程仓库地址推送到远程仓库
[-f] 是强制删除
git push [-f] [--set-upstream] [远端名称[本地分支名][:远端分支名]]如果本地分支名和远程分支名相同,则可以只写本地仓库
git push origin master--set-upstream 推送到远端的同时并目建立起和远端分支的关联关系
git push -set-upstream origin master如果当前分支已经和远端分支关联,则可以省路分支名和远端名。
git push本地分支与远程分支的关联关系
git branch -vv
从远程仓库克隆git clone
git clone <远程仓库> [本地目录]<远程仓库> : 远程仓库的地址抓取git fetch和拉取git pull
抓取指令就是将仓库里的更新都抓取到本地,不会进行合并。如果不指定远端名称和分支名,则抓取所有分支
git fetch [远程仓库的名字] [远程分支的名称]拉取指令就是将远端仓库的修改拉到本地并自动进行合并,等同于fetch+merge。如果不指定远端名称和分支名,则抓取所有并更新当前分支。
git pull [远程仓库的名称] [远程分支的名称]
相关文章:
git的学习与使用(笔记最全)
什么是git Git是一种分布式版本控制系统,每个开发者都可以在自己的机器上拥有一个完整的仓库 特点 断网也可以工作:没网的情况下,不会影响工作。对于未提交到远程库的代码可以随时撤销。可以查看历史提交记录,以及文件内容的修改记…...
windows环境下Grafana+loki+promtail入门级部署日志系统,收集Springboot(Slf4j+logback)项目日志
🌹作者主页:青花锁 🌹简介:Java领域优质创作者🏆、Java微服务架构公号作者😄 🌹简历模板、学习资料、面试题库、技术互助 🌹文末获取联系方式 📝 往期热门专栏回顾 专栏…...
学习python时一些笔记
1、winr 命令提示符的快捷键 输入cmd进入终端 2、在终端运行桌面上的python文件 cd desktop(桌面) cd是进入该文件夹的意思。 cd .. 回到上一级 运行python时一定要找到文件的所在地 输入python进入,exit()退出%s字符串占位符%d数字占位符%f浮点数占位符input输…...
php基础学习之错误处理(其二)
在实际应用中,开发者当然不希望把自己开发的程序的错误暴露给用户,一方面会动摇客户对己方的信心,另一方面容易被攻击者抓住漏洞实施攻击,同时开发者本身需要及时收集错误,因此需要合理的设置错误显示与记录错误日志 一…...
云计算 2月28号 (linux的磁盘分区)
一 存储管理 主要知识点: 基本分区、逻辑卷LVM、EXT3/4/XFS文件系统、RAID 初识硬盘 机械 HDD 固态 SSD SSD的优势 SSD采用电子存储介质进行数据存储和读取的一种技术,拥有极高的存储性能,被认为是存储技术发展的未来新星。 与传统硬盘相比,…...
demo型xss初级靶场
一、环境 XSS Game - Ma Spaghet! | PwnFunction 二、开始闯关 第一关 看看代码 试一下直接写 明显进来了为什么不执行看看官方文档吧 你不执行那我就更改单标签去使用呗 ?somebody<img%20src1%20onerror"alert(1)"> 防御: innerText 第二关…...
【推荐算法系列十八】:DSSM 召回算法
参考 推荐系统中 DSSM 双塔模型汇总(二更) DSSM 和 YouTubeDNN 都是比较经典的 U2I 模型。 U2I 召回 U2I 召回也就是 User-to-Item 召回,它基于用户的历史行为以及用户的一些个人信息,对系统中的候选物品进行筛选,挑…...
CNAN知识图谱辅助推荐系统
CNAN知识图谱辅助推荐系统 文章介绍了一个基于KG的推荐系统模型,代码也已开源,可以看出主要follow了KGNN-LS 。算法流程大致如下: 1. 算法介绍 算法除去attention机制外,主要的思想在于:user由交互过的item来表示、i…...
大数据经典面试例题
程序员的金三银四求职宝典 随着春天的脚步渐近,对于许多程序员来说,一年中最繁忙、最重要的面试季节也随之而来。金三银四,即三月和四月,被广大程序员视为求职的黄金时期。在这两个月里,各大公司纷纷开放招聘…...
软考56-上午题-【数据库】-数据库设计步骤2
一、回顾:数据库设计的步骤 1、用户需求分析:手机用户需求,确定系统边界; 2、概念设计(概念结构设计):是抽象概念模型,较理想的是采用E-R方法。 3、逻辑设计:E-R图——…...
抖店入驻费用是多少?新手入驻都有哪些要求?2024费用明细!
我是电商珠珠 我做电商做了将近五年,做抖店做了三年多,期间还带着学员一起做店。 今天,就来给大家详细的讲一下在抖音开店,需要多少费用,最低需要投入多少。 1、营业执照200元左右 就拿个体店举例,在入…...
2024东南大学553复试真题及笔记
2023年真题知识点 引用指针 题目为 传递一个指针的引用做修改,输出指针指向的结果,但是指针被修改,结果就不一样了。 static 静态变量 类里面的静态成员变量,很简单的题目 for循环 看循环的内容输出字符串 try try catch捕…...
编程笔记 html5cssjs 096 JavaScript 前端开发(完结)
编程笔记 html5&css&js 096 JavaScript 前端开发 (完结) 一、前端开发二、范围三、价值四、在软件开发中地位总结 前端开发在软件开发生态系统中扮演着至关重要的角色。随着Web技术和移动互联网的发展,前端不再是简单的页面展示&…...
案例介绍:信息抽取技术在汽车销售与分销策略中的应用与实践
一、引言 在当今竞争激烈的汽车制造业中,成功的销售策略、市场营销和分销网络的构建是确保品牌立足市场的关键。作为一名经验丰富的项目经理,我曾领导一个专注于汽车销售和分销的项目,该项目深入挖掘市场数据,运用先进的信息抽取…...
几种常用的企业加密文件传输方式,最后一种更佳!
随着远程工作和云计算服务的广泛采用,企业必须实施有效的策略来保障敏感信息在传输过程中的安全性。本文将探讨企业在文件加密传输方面的几种常用策略,并重点介绍最后一种方式是如何利用其创新技术为企业提供数据传输的安全保障。 文件加密传输策略 企业…...
【全志D1-H 哪吒开发板】Debian系统安装调教和点灯指南
全志D1-H开发板【哪吒】使用Deabian系统入门 特别说明: 因为涉及到操作较多,博文可能会导致格式丢失 其中内容,会根据后续使用做优化调整 目录: 参考资料固件烧录启动调教点灯问题 〇、参考资料 官方资料 开发板-D1开发板【…...
Redis 8种基本数据类型及常用命令和数据类型的应用场景
小伙伴们好,欢迎关注,一起学习,无限进步 文章内容为学习的一些笔记及工作中遇到的一些问题 文章目录 Redis 五大数据类型keyStringListSetHashSorted Set 三种特殊类型Geospatial 地理位置HyperloglogBitmap Redis 五大数据类型 redis 官方网…...
JAVA内存模型与JVM内存结构
注意区分Java内存模型(Java Memory Model,简称JMM)与Jvm内存结构,前者与多线程相关,后者与JVM内部存储相关。本文会对两者进行简单介绍。 一、JAVA内存模型(JMM) 1. 概念 说来话长,由于在不同硬件厂商和…...
双导师的中国社科院与英国斯特灵大学创新与领导力博士
自1978年恢复高考之后,很长一段时间里我国的高校系统处于人才很匮乏的状态,那个时候很多高校招聘了大量硕士学历教师(其中很多人在留校后又读了在职博士),而且都是事业编制。那么接下来小编与中国社科院与英国斯特灵大…...
OpenXR 超详细的spec--API初始化介绍
3.API 初始化 3.1 Exported Functions 实现API loader的动态链接库(so/dll)必须export all core OpenXR API functions。然而application可以通过使用xrGetInstanceProcAddr()来获取指向extension函数的指针。 3.2 Function Pointers OpenXR所有函数的指针都可以通过函数xr…...
SpringBoot-17-MyBatis动态SQL标签之常用标签
文章目录 1 代码1.1 实体User.java1.2 接口UserMapper.java1.3 映射UserMapper.xml1.3.1 标签if1.3.2 标签if和where1.3.3 标签choose和when和otherwise1.4 UserController.java2 常用动态SQL标签2.1 标签set2.1.1 UserMapper.java2.1.2 UserMapper.xml2.1.3 UserController.ja…...
vscode(仍待补充)
写于2025 6.9 主包将加入vscode这个更权威的圈子 vscode的基本使用 侧边栏 vscode还能连接ssh? debug时使用的launch文件 1.task.json {"tasks": [{"type": "cppbuild","label": "C/C: gcc.exe 生成活动文件"…...
家政维修平台实战20:权限设计
目录 1 获取工人信息2 搭建工人入口3 权限判断总结 目前我们已经搭建好了基础的用户体系,主要是分成几个表,用户表我们是记录用户的基础信息,包括手机、昵称、头像。而工人和员工各有各的表。那么就有一个问题,不同的角色…...
面向无人机海岸带生态系统监测的语义分割基准数据集
描述:海岸带生态系统的监测是维护生态平衡和可持续发展的重要任务。语义分割技术在遥感影像中的应用为海岸带生态系统的精准监测提供了有效手段。然而,目前该领域仍面临一个挑战,即缺乏公开的专门面向海岸带生态系统的语义分割基准数据集。受…...
vulnyx Blogger writeup
信息收集 arp-scan nmap 获取userFlag 上web看看 一个默认的页面,gobuster扫一下目录 可以看到扫出的目录中得到了一个有价值的目录/wordpress,说明目标所使用的cms是wordpress,访问http://192.168.43.213/wordpress/然后查看源码能看到 这…...
[大语言模型]在个人电脑上部署ollama 并进行管理,最后配置AI程序开发助手.
ollama官网: 下载 https://ollama.com/ 安装 查看可以使用的模型 https://ollama.com/search 例如 https://ollama.com/library/deepseek-r1/tags # deepseek-r1:7bollama pull deepseek-r1:7b改token数量为409622 16384 ollama命令说明 ollama serve #:…...
逻辑回归暴力训练预测金融欺诈
简述 「使用逻辑回归暴力预测金融欺诈,并不断增加特征维度持续测试」的做法,体现了一种逐步建模与迭代验证的实验思路,在金融欺诈检测中非常有价值,本文作为一篇回顾性记录了早年间公司给某行做反欺诈预测用到的技术和思路。百度…...
通过 Ansible 在 Windows 2022 上安装 IIS Web 服务器
拓扑结构 这是一个用于通过 Ansible 部署 IIS Web 服务器的实验室拓扑。 前提条件: 在被管理的节点上安装WinRm 准备一张自签名的证书 开放防火墙入站tcp 5985 5986端口 准备自签名证书 PS C:\Users\azureuser> $cert New-SelfSignedCertificate -DnsName &…...
深入浅出Diffusion模型:从原理到实践的全方位教程
I. 引言:生成式AI的黎明 – Diffusion模型是什么? 近年来,生成式人工智能(Generative AI)领域取得了爆炸性的进展,模型能够根据简单的文本提示创作出逼真的图像、连贯的文本,乃至更多令人惊叹的…...
32位寻址与64位寻址
32位寻址与64位寻址 32位寻址是什么? 32位寻址是指计算机的CPU、内存或总线系统使用32位二进制数来标识和访问内存中的存储单元(地址),其核心含义与能力如下: 1. 核心定义 地址位宽:CPU或内存控制器用32位…...







查看状态git status
查看提交日志git log


添加文件到忽略列表






