Linux下git安装及使用

news2024/11/24 18:28:38

Linux下Git使用

1. git的安装

sudo apt install git

安装完,使用git --version查看git版本

2. 配置git

git config --global user.name "Your Name“	##配置用户
git config --global user.email email@example.com	##配置邮箱
 git config --global --list			##查看配置信息
## --global 全局配置,所有仓库生效,不加就只对当前用户有效
## --system 系统配置,对所有用户生效

3. 新建版本库

 git init

4. 工作区域与文件状态

image-20230920204530239

image-20230920204638439

5. 添加和提交文件

git init		##创建仓库
git status		##查看仓库的状态
git add			##添加到暂存库
git commit 		##提交
git rm --cached <file>...		##将文件从暂存区中去除
git log			##查看提交记录
git ls-files	##查看暂存区的文件
git commit -a -m " " #实现添加和提交两个步骤

3. 回退版本

git reset --soft
git reset --hard
git reset --mixed	

image-20230921085607903

git reset HEAD^		##默认为mixed,回退一个版本
HEAD 表示当前版本
HEAD^ 上一个版本
HEAD^^ 上上一个版本
HEAD^^^ 上上上一个版本
HEAD~0 表示当前版本
HEAD~1 上一个版本
HEAD^2 上上一个版本
HEAD^3 上上上一个版本
执行 git reset HEAD 以取消之前 git add 添加,但不希望包含在下一提交快照中的缓存

误操作之后

git reflog		##回溯日志
git reset --hard 版本号	##回退

6. 查看差异

image-20230921091532989

git diff				#默认比较工作区和暂存区之间的差异
git diff HEAD			#比较工作区和版本库之间的差异
git diff --cached		#比较暂存区和版本库之间的区别
git diff 版本号	版本号	#比较两个版本之间的差异
git diff HEAD~ HEAD		#如回退版本

image-20230921092511736

7. 删除文件

方法1:先删除本地文件,再提交

rm -rf 3.txt	##删除本地中的文件
git add .		##删除暂存区中的文件
git commit -m 'deleted 3.txt'	##删除工作区文件

方法2

git rm 2.txt	##删除本地和暂存区中文件
git commit -m 'deleted 2.txt'	##删除工作区文件

image-20230921093523261

8. 忽略文件

image-20230921093644360

 echo "*.log" > .gitignore		##表示忽略所有日志文件

image-20230921094538072

9. 远程仓库github

注册github账号,创建仓库

10. ssh配置和克隆仓库

创建ssh密钥

cd ~
cd .ssh		#如果显示文件不存在,就之间执行以下命令
ssh-keygen -t rsa -b 4096 -C "xxx@email.com"	#直接enter,如果是第二次执行,记得更改文件名,不然会覆盖之前的id_rsa文件,且不可逆

image-20230921101312117

执行之前的命令会生成以下两个文件,有.pub的是公钥文件,没有的是私钥文件,复制公钥文件到github的Settings里的ssh配置

如果是第一次配置就配置完了,如果是第二次,更改了文件名的,就需要新建一个config文件,内容为

image-20230921101639858

意思是:当我们在访问github.com这个网站的时候。使用的是test这个文件里的密钥

 git clone git@github.com:xxx.git		##克隆新建的远程仓库

image-20230921102254407

git push	##将本地文件推送到远程仓库

11. 关联本地仓库和远程仓库

  1. 本地无仓库
echo "# fist-repo" >> README.md
git init
git add README.md
git commit -m "first commit"
git branch -M main
git remote add origin git@github.com:xxx.git
git push -u origin main
  1. 本地已经有仓库
git remote add origin git@github.com:xxx.git		##添加一个远程仓库
git branch -M main									##指定分支的名称为main
git push -u origin main								##把本地的main分支与远程的orgin main分支关联
git remote -v		##查看本地仓库对应的远程仓库别名

image-20230921103436235

image-20230921103522078

12. 分支

git branch			#查看分支
git branch	dev		#新建分支dev
git checkout dev	#切换到分支dev(有风险,有时会用来恢复文件)
git switch main		#切换到分支main
git merge dev		#将要被合并的分支(dev)合并到当前分支(main)
git log --graph --oneline --decorate --all	##查看分支情况
git branch -d dev	#删除分支(已经合并)
git branch -D dev	#删除分支(未合并,强行删除)

image-20230921140159925

13. 回退和rebase

image-20230921140826350

image-20230921141221770

image-20230921141308973

14. 分支管理和工作流模型

  1. git flow模型

img

img

img

  1. github flow模型

image-20230921141728150

image-20230921141750346

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

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

相关文章

MySQL学习笔记1

任务背景&#xff1a; 将原来的数据库从原来的MySQL-5.5 升级到现在的MySQL-5.7&#xff0c;并保证数据完整。 1&#xff09;不同版本MySQL的安装&#xff1b;yum glibc、源码安装&#xff0c;是企业100%要用到的。 2&#xff09;MySQL数据库版本升级&#xff1b;&#xff08…

【电源专题】明明芯片是写了能恒流充电,但为什么实际恒流充电电流在慢慢下降?

本案例发生在两个不同产品做对比时发现了差异。其实两个产品使用的 充电芯片是一致的,但是实际测试的情况下产品一在恒流充电过程中,电流正常保持,而产品二在恒流充电过程中电流在慢慢下降。 那么是不是说明产品二有什么问题呢?本来应该恒定电流充电的,为什么充电电流还能…

机器学习入门:从算法到实际应用

机器学习入门&#xff1a;从算法到实际应用 机器学习入门&#xff1a;从算法到实际应用摘要引言机器学习基础1. 什么是机器学习&#xff1f;2. 监督学习 vs. 无监督学习 机器学习算法3. 线性回归4. 决策树和随机森林 数据准备和模型训练5. 数据预处理6. 模型训练与调优 实际应用…

腾讯云16核服务器性能测评_轻量和CVM配置大全

腾讯云16核服务器配置大全&#xff0c;CVM云服务器可选择标准型S6、标准型SA3、计算型C6或标准型S5等&#xff0c;目前标准型S5云服务器有优惠活动&#xff0c;性价比高&#xff0c;计算型C6云服务器16核性能更高&#xff0c;轻量16核32G28M带宽优惠价3468元15个月&#xff0c;…

【数据结构】时间、空间复杂度

⭐ 作者&#xff1a;小胡_不糊涂 &#x1f331; 作者主页&#xff1a;小胡_不糊涂的个人主页 &#x1f4c0; 收录专栏&#xff1a;浅谈数据结构 &#x1f496; 持续更文&#xff0c;关注博主少走弯路&#xff0c;谢谢大家支持 &#x1f496; 时间、空间复杂度 1. 算法效率3. 时…

1989-2022年企业排污许可证信息库数据(24万观测值)

1989-2022年企业排污许可证信息库数据&#xff08;24万观测值&#xff09; 1、时间&#xff1a;1989-2022年 2、指标&#xff1a;企业名称、登记状态、法定代表人、注册资本、成立日期、核准日期、所属省份、所属城市、所属区县、电话、更多电话、邮箱、更多邮箱、统一社会信…

基于Java的即可运动健身器材网站设计与实现(源码+lw+部署文档+讲解)

前言 &#x1f497;博主介绍&#xff1a;✌全网粉丝10W,CSDN特邀作者、博客专家、CSDN新星计划导师、全栈领域优质创作者&#xff0c;博客之星、掘金/华为云/阿里云/InfoQ等平台优质作者、专注于Java、小程序技术领域和毕业项目实战✌&#x1f497; &#x1f447;&#x1f3fb;…

PyTorch深度学习(六)【循环神经网络-基础】

RNN Cell&#xff1a; h0和x1生成h1,把h1作为输出送到下一次的RNN Cell里面。&#xff08;h1linear(h0,x1)&#xff09; RNN计算过程&#xff1a; 输入先做线性变换&#xff0c;循环神经网络常用的激活函数是tanh&#xff08;1区间&#xff09;。 构造RNN Cell&#xff1a; 代码…

亿纬锦能项目总结

项目名称&#xff1a;亿纬锦能 项目链接&#xff1a;https://www.evebattery.com 项目概况: 此项目用到了 wow.js/slick.js/swiper-bundle.min.js/animate.js/appear.js/fullpage.js以及 slick.css/animate.css/fullpage.css/swiper-bundle.min.css/viewer.css 本项目是一种…

【php经典算法】冒泡排序,冒泡排序原理,冒泡排序执行逻辑,执行过程,执行结果 代码

冒泡排序原理 每次比较两个相邻的元素&#xff0c;将较大的元素交换至右端 冒泡排序执行过程输出效果 冒泡排序实现思路 每次冒泡排序操作都会将相邻的两个元素进行比较&#xff0c;看是否满足大小关系要求&#xff0c;如果不满足&#xff0c;就交换这两个相邻元素的次序&…

海外问卷调查是真实的吗?应该如何参与?

大家好&#xff0c;我是橙河网络&#xff0c;这篇文章介绍一下海外问卷调查是真实的吗&#xff0c;应该怎么参与&#xff1f; 海外问卷调查是真实存在的一种商业行为&#xff0c;很多跨国的公司、政府、大学或研究机构会用这种方式来收集来自世界各地的人们对于某个产品、政策…

【Vue】如何搭建SPA项目--详细教程

&#x1f3ac; 艳艳耶✌️&#xff1a;个人主页 &#x1f525; 个人专栏 &#xff1a;《Spring与Mybatis集成整合》《springMvc使用》 ⛺️ 生活的理想&#xff0c;为了不断更新自己 ! 目录 1.什么是vue-cli 2.安装 2.1.创建SPA项目 2.3.一问一答模式答案 3.运行SPA项目 3…

python MP4视频转GIF动图

python MP4视频转GIF动图 引言一、转换代码二、PyQt界面编写2.1 效果展示2.2 源码 三、打包成可执行文件(.exe) 一个相当于原视频三倍速的GIF动图 引言 将MP4格式的视频转为GIF动图可以方便地向他人展示动画效果。GIF是网络上广泛使用的图像格式之一&#xff0c;几乎所有的网…

反爬指南:《孤注一掷》诈骗分子窃取用户信息的工具令人吃惊

目录 什么是网络爬虫 爬虫的非法盗取与平台反爬 全流程反爬方案 AI时代的验证码 《孤注一掷》 最近在火热上映中。影片讲述了程序员潘生在境外网络诈骗团队的高薪诱惑下被拐骗到境外“公司”&#xff0c;并在陆秉坤和安俊才的强迫下从事诈骗活动&#xff0c;最终在帮助同被…

You may use special comments to disable some warnings

You may use special comments to disable some warnings 方法1&#xff1a; 找到build目录下的webpack.base.conf.js文件&#xff0c;注释掉 方法2&#xff1a; 找到config目录下的index.js文件&#xff0c;useEslint:false

javabean项目专项练习(1) 文字格斗游戏

main中是这样写的 如下是character类的描述 总结一下(个人) : 这是一题面向对象的编程, 个人编程后感是: 核心就是在于自己会不会取定义一个类, 如果是多个对象(同一个类),能不能捋顺类的方法的关系,个人觉得黑马程序员up主给出来的分析方法特别好用. 步骤: 先把在类里该该…

Python灰帽子编程————网页信息爬取

爬取图片&#xff0c;问题分解&#xff1a; 获取网页内容&#xff1b;从网页内容中提取图片地址&#xff1b;通过图片地址&#xff0c;将图片下载到本地。 1. 相关模块 1.1 requests 模块 获取网页内容。 requests 模块&#xff1a;主要是用来模拟浏览器行为&#xff0c;发…

专业软件测评中心:关于软件性能测试的实用建议

软件性能测试是通过自动化的测试工具模拟多种正常、峰值以及异常负载条件来对系统的各项性能指标进行测试。性能测试在软件的质量保证中起着重要的作用&#xff0c;它包括的测试内容丰富多样。 一、软件性能测试的实用建议   1、制定清晰的测试目标&#xff1a;明确测试目标…

数据结构与算法——14.栈

目录 1.概述 2.栈的接口设计 3.用链表来实现栈 4.用数组来实现栈 5.用两个栈来实现一个队列 6.用一个队列来实现一个栈 7.总结 1.概述 计算机科学中&#xff0c;stack是一种线性的数据结构&#xff0c;只能在其一端添加数据和移除数据。习惯来说&#xff0c;这一端称之…

主打低功耗物联网国产替代,纵行科技ZT1826芯片以速率和灵敏度出圈

在低功耗物联网领域&#xff0c;国产替代的趋势越演越烈。 9月20日&#xff0c;纵行科技在“IOTE 2023深圳物联网通信技术与应用高峰论坛”发表了“自主原创Advanced M-FSK调制技术助力国产替代和泛在物联”的演讲&#xff0c;并推出了ZT1826芯片&#xff0c;以“更低功耗、更…