Git相关命令

news2024/9/21 11:59:28

SSH密钥文件

Github里面S设置SH公钥有两者选择方式

  1. 账号下的每个仓库都设置一个公钥,因为GitHub官方要求每个仓库的公钥都不能相同,所以每个账号都要搞一个密钥(很麻烦)
  2. 给账号分配一个公钥,然后这个公钥就可以在这个账号下的每个仓库中使用(推荐)

生成密钥

ssh-keygen -t rsa -C "your_email@youremail.com"

验证密钥是否添加成功

ssh -T git@github.com

本地仓库处理

创建仓库

git init

将文件添加到仓库

git add .

将文件提交到仓库

git commit -m "message"

修改最新提交的commit

git commit --amend

回滚到特定版本

git reset --hard HEAD^	#回滚到上一版本
git reset --hard HEAD~3	#回滚到3次版本之前,以此类推可回到n次版本之前
git reset --hard commit_id

查看仓库当前状态

git status

更改分支名称

git branch -m oldNme newName

远程仓库处理

删除远程分支

git push --delete origin oldName

克隆仓库

git clone <repo>

连接远程仓库

git remote add origin git@github.com:yourName/repositoryname.git
or
git remote add origin https://github.com/yourName/repositoryname.git

从远程仓库pull到本地仓库

git pull origin main//因为黑命贵,所以master改main了。。。。这里好坑

从本地push到远程仓库

git push origin main

.gitignore文件

当文件已经提交后才记起来没有写.gitignore文件的处理方法:

git rm -r --cache . #不要忘了后面的那个"."
git add .
git commit -m "重新添加.gitignore文件"

git rebase命令

情景再现:commit太多次,想要将其合并(广义上的删除)

如图,共有4此提交

git log命令可以看到,共有4次提交,想要合并其中的“增加4.1和4.2文件”和“加入3.1和3.2文件”,将其表达为“增加3.1,3.2,4.1,4.2文件”。(可以使用git log --pretty=oneline命令让commit一行一行输出)

操作

git rebase -i commit_id(commit_id只需要简写前面六位字母即可,不需要全部填上去)

以上命令的commit_id表示的是将其前面的commi_id列入编辑状态,例如此处我输入git rebase -i 88480a ,则可以对411b015a9bb68f0dd1这三个commit进行编辑。(也就是说分支最少会剩余2个commit)

进入编辑页面

image-20220331003630124

前缀的意思:

  1. pick保留该commit,缩写:p
  2. squash使用该commit但是合并到前一个的commit之中去,缩写:s,在某种意义上来说就是删除。该步骤结束后会弹出窗口对合并后的commit进行编辑
  3. reword类似于pick,但是会弹出窗口,可以修改commit的信息,缩写:r
  4. edit类似于reword可以修改commit,会将commit的修改放置在接下来的amending中,也比较方便,缩写:e
  5. fixupsquash类似,但是会直接舍弃其commit信息,缩写:f
  6. exec执行shell命令(没用过)
  7. drop删除某一commit

此处将“增加4.1和4.2文件”前的pick更改为squashfixup也可以,就不会弹出窗口了),关闭编辑器,会弹出以下窗口

image-20220331111257663

默认最后的commit会有两个合并的commit共同组成,也可以在这里进行修改,例如我改成这样一行显示的:

image-20220331111455061

合并结果就会变成

image-20220331111542047

PS:每次操作之后记得都要ctrl+s保存

关于noop

当我们选取了最新的commit之后,就会显示noop,表示在这之前没有更新的commit可供操作,例如在本例中我输入git rebase -i fb083c,则会显示noop:

image-20220331111830269

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/909374.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

基础恢复1-c语言

用书&#xff1a;c primer plus 学习时间&#xff1a;21-25 重点知识&#xff1a; 1.编译-链接-运行 编译&#xff1a;编译器将源码转换为可执行代码 链接&#xff1a;编译器从c库中获取标准例程放入源码中一同编译 运行&#xff1a;运行可执行文件 2.关键字 数据类型&…

smiley-http-proxy-servlet 实现springboot 反向代理,结合项目鉴权,安全的引入第三方项目服务

项目中反向代理 集成第三方的服务接口或web监控界面&#xff0c;并实现与自身项目相结合的鉴权方法 依赖 smiley-http-proxy-servlet GitHub链接 2.0 版开始&#xff0c;代理切换到jakarta servlet-api<!--HTTP 代理 Servlet--><dependency><groupId>org.mit…

记一次布尔盲注漏洞的挖掘与分析

在上篇文章记一次由于整型参数错误导致的任意文件上传的漏洞成因的分析过程中&#xff0c;发现menu_id貌似是存在注入的。 public function upload() {$menu_id $this->post(menu_id);if ($id) {$where "id {$id}";if ($menu_id) {$where . " and menu_id…

jenkins 日志输出显示时间戳的方式

网上很多方式比较片面&#xff0c;最新版插件直接使用即可无需更多操作。 使用方式如下&#xff1a; 1.安装插件 Timestamper 2.更新全局设置 系统设置-找到 Timestamper 勾选 Enabled for all Pipeline builds 也可修改时间戳格式。 帮助信息中显示 When checked, timesta…

【业务功能篇73】分布式ID解决方案

业界实现方案 1. 基于UUID2. 基于DB数据库多种模式(自增主键、segment)3. 基于Redis4. 基于ZK、ETCD5. 基于SnowFlake6. 美团Leaf(DB-Segment、zkSnowFlake)7. 百度uid-generator() 1.基于UUID生成唯一ID UUID:UUID长度128bit&#xff0c;32个16进制字符&#xff0c;占用存储空…

服务器数据恢复-HP EVA存储VDISK被删除的数据恢复案例

服务器数据恢复环境&#xff1a; 某单位有一台HP EVA存储&#xff0c;连接2组扩展柜&#xff0c;扩展柜中有12块FATA磁盘和10块FC磁盘&#xff0c;不确定数量的LUN&#xff0c;主机安装WINDOWS SERVER操作系统&#xff0c;存储设备用来存放该单位的重要资料。 服务器故障初检&…

线程池的实现全过程v1.0版本(手把手创建,看完必掌握!!!)

目录 线程池的实现过程 线程池的创建 添加任务队列 线程进行处理任务 线程池资源释放 线程池完整程序 线程池v1.0版本总结 线程池的实现过程 实现线程池首先要确定线程池有哪些属性 线程池中线程的数量线程池中已工作的线程数量任务队列任务队列的大小任务队列的锁 还…

mysql-sql性能分析工具

一、sql执行频率 MySQL 客户端连接成功后&#xff0c;通过 show [session|global] status 命令可以提供服务器状态信息。通过如下指令&#xff0c;可以查看当前数据库的INSERT、UPDATE、DELETE、SELECT的访问频次&#xff1a; -- session 是查看当前会话 ; -- global 是查询全…

uni-app 打包生成签名Sha1

Android平台打包发布apk应用&#xff0c;需要使用数字证书&#xff08;.keystore文件&#xff09;进行签名&#xff0c;用于表明开发者身份。 可以使用JRE环境中的keytool命令生成。以下是windows平台生成证书的方法&#xff1a; 安装JRE环境&#xff08;推荐使用JRE8环境&am…

树结构使用实例---实现数组和树结构的转换

文章目录 一、为什么要用树结构&#xff1f;二、使用步骤 1.引入相关json2.树结构的转换总结 一、为什么要用树结构&#xff1f; 本文将讲述一个实例&#xff0c;构造一棵树来实现数组和tree的转换&#xff0c;这在前端树结构中是经常遇到的 后端返回树结构方便管理&#xff…

OpenCL矢量加法例子

1.向量加内核函数 __kernel void vector_add(__global float* A, __global float* B, __global float* C) {int id get_global_id(0);C[id] A[id] B[id]; }2.向量加主程序 #include<stdio.h> #include<stdlib.h> #ifdef _APPLE_ #include<OpenCL/cl.h> …

通过DBeaver 给Postgre SQL表 设置主键自增

1.创建表 CREATE TABLE public.company ( id int4 NOT NULL , name text NOT NULL, age int4 NOT NULL, address bpchar(50) NULL, salary float4 NULL, join_date date NULL, CONSTRAINT company_pkey PRIMARY KEY (id) ); 2.插入数据&#xff08;不传入id&#xff…

探索高效的HTTP异步接口测试方法:从轮询等待到自动化方案

本文将深入探讨HTTP异步接口测试的多个方面&#xff0c;包括轮询等待、性能测试以及自动化方案。通过详细的解释和实际案例&#xff0c;帮助您了解如何有效地测试异步接口&#xff0c;确保系统的稳定性和性能。 在现代软件开发中&#xff0c;HTTP异步接口扮演着至关重要的角色&…

电子电路学习笔记之SA1117BH-1.2TR——LDO低压差线性稳压器

关于LDO调节器&#xff08;Low Dropout Regulator&#xff09;是一种电压稳压器件&#xff0c;常用于电子设备中&#xff0c;用于将高电压转换为稳定的低电压。它能够在输入电压和输出电压之间产生较小的差异电压&#xff0c;因此被称为"低压差稳压器"。 LDO调节器通…

PHP自己的框架自定义错误器set_error_handler和register_shutdown_function(完善篇五)

1、PHP自己的框架实现错误显示和记录日志 2、运行时错误set_error_handler和致命错误register_shutdown_function KJ.php public static function run(){//定义常量self::_set_const();//创建模块目录self::_mk_module();//加载文件self::_import_file();self::_set_system();s…

安卓机显示屏的硬件结构

显示屏的硬件结构 显示屏的硬件结构主要由背光源、液晶面板和驱动电路构成。可以将液晶面板看成一个三明治的结构&#xff0c;即在两片偏振方向互相垂直的偏光片系统中夹着一层液晶层。自然光源通过起偏器&#xff08;偏光片之一&#xff09;后&#xff0c;变成了垂直方向的偏…

短视频矩阵seo关键词霸屏开发源码逻辑

目录 ​编辑 一、短视频矩阵系统seo是如何从开发上实现的 二、短视频SEO矩阵系统源码开发&#xff0c;需要遵循一下步骤&#xff1a; 三、矩阵开发源码&#xff0c;功能开发&#xff0c;代码展示如下&#xff1a; 一、短视频矩阵系统seo是如何从开发上实现的 短视频矩阵系…

陕西广电 HG6341C FiberHome烽火 光猫获取超级密码 改桥接模式 提升网速

光猫默认的路由模式实测在100M宽带下只能跑到60M左右&#xff0c;只有改成桥接模式才能跑满&#xff0c;不损失性能。但是改桥接需要给运营商打电话&#xff0c;有的时候不想麻烦他们&#xff0c;这时获取超级密码进行更改就是一个不错的选择了 分析 之前写了一篇HGU B2 光猫的…

微服务流程引擎:简单又灵活,实现流程全生命周期管理!

伴随着日益激烈的市场竞争&#xff0c;传统的办公操作已经无法满足发展需要了。如果采用微服务流程引擎加油助力&#xff0c;就可以帮助企业更好地管理数据资源&#xff0c;高效做好各种表单制作&#xff0c;实现高效率办公。流辰信息以市场为导向&#xff0c;用心钻研低代码技…

二、5.单线程与多线程调度

任务轮转工作由任务调度器来完成的&#xff0c;任务调度器就是操作系统中用于把任务轮流调度上处理器运行的一个软件模块&#xff0c;它是操作系统的一部分。调度器在内核中维护一个任务表&#xff08;也称进程表、线程表或调度表&#xff09;&#xff0c;然后按照一定的算法&a…