Linux环境使用Git同步教程

📖 前言:由于CentOS 7已于2024年06月30日停止维护,为了避免操作系统停止维护带来的影响,我们将把系统更换为Ubuntu并迁移数据,在此之前简要的学习Git的上传下载操作。


目录

  • 🕒 1. 连接
    • 🕘 1.1 配置Linux上git环境
    • 🕘 1.2 为GitHub账户设置SSH key
  • 🕒 2. 上传本地项目到GitHub
  • 🕒 3. 克隆GitHub项目到本地
  • 🕒 4. 同步修改项目
  • 🕒 5. 常见问题
  • 🕒 6. 更换操作系统

🕒 1. 连接

🕘 1.1 配置Linux上git环境

安装git:yum install git
绑定GitHub用户:
git config --global user.name "XXX"
git config --global user.email "xxx@xxx.com"
查看git配置:git config --list

🕘 1.2 为GitHub账户设置SSH key

  1. 检查是否有SSH key:cd ~/.ssh
  2. 如没有,则去生成SSH key:ssh-keygen -t rsa -C "your_email@youremail.com"
Generating public/private rsa key pair.
Enter file in which to save the key (/home/you/.ssh/id_rsa): # 默认回车
Enter passphrase (empty for no passphrase):  # 默认回车
Enter same passphrase again:  # 默认回车
Your identification has been saved in /home/XXX/.ssh/id_rsa. 
Your public key has been saved in /home/XXX/.ssh/id_rsa.pub.
The key fingerprint is: XXX
  1. 添加SSH公钥到GitHub:
    在GitHub设置内找到添加SSH,将id_rsa.pub内容复制到key中(直接使用cat id_rsa.pub,而不是打开vim复制)

在这里插入图片描述

  1. 测试是否连接成功:ssh -T git@github.com

在这里插入图片描述

🕒 2. 上传本地项目到GitHub

  1. 进入你想要上传的目录,然后把这个目录变成git可以管理的仓库:git init

  2. 将文件添加到仓库并查看当前工作区(相当于缓存区)的状态

添加文件:git add [文件名]
查看缓存区的内容:git status

在这里插入图片描述

  1. 将工作区文件提交到本地仓库,如下图,“backup file”是描述你提交的文件内容的

查看已存放在本地仓库(缓存区)的内容:git ls-files

如果不慎将不需要的文件添加到缓冲区,可以用该指令删除:git rm -r --cached .

  1. 关联远程仓库,同一个目录下同一个远程仓库只要关联一次就行,origin是你关联仓库的当前连接的名字,origin后面跟的是第一步复制的SSH连接。

在这里插入图片描述

  1. 到目前为止,你已经把你想上传的文件放到本地仓库上了,也已经把本地仓库和远程仓库连起来了,现在需要把文件从本地仓库push到远程仓库git push origin master

注:通常在Linux上init后主分支是master,而GitHub上新建的仓库,默认主分支是main,所以直接push过去,会默认在GitHub远程仓库创建master分支。
在这里插入图片描述
解决办法是将本地的master分支改名为main分支;或 push的时候指明git push origin master:main
在这里插入图片描述

查看目前已经关联的远程仓库:git remote
在这里插入图片描述

🕒 3. 克隆GitHub项目到本地

指令:git clone [项目名]
在这里插入图片描述

🕒 4. 同步修改项目

以同步删除文件夹为例:
1、rm -rf [文件夹名]
2、git rm -r [文件夹名]
3、git commit -m "remove" [文件夹名]
4、git push origin master:main

🕒 5. 常见问题

  1. github文件夹有向右的白色箭头并且不能打开

在这里插入图片描述
原因是因为这个文件夹里面有.git隐藏文件,github就将他视为一个子系统模块了。

解决办法:
1、删除文件夹里面的.git文件夹(rm -rf .git
2、执行git rm --cached [文件夹名]
3、执行git add [文件夹名]
4、执行git commit -m "remove"
5、执行git push origin [branch_name]

  1. 有很多无用的隐藏文件上传至GitHub

解决方案:创建一个.gitignore文件并编辑

# .gitignore文件# 忽略所有隐藏文件和目录
.*
# 忽略文件名为空的文件
**
# 忽略.文件                                                  
.sh
# 忽略位于根目录下的 text.txt 文件
/text.txt

🕒 6. 更换操作系统

非常简单,按照提示操作即可。
在这里插入图片描述在这里插入图片描述


❗ 转载请注明出处
作者:HinsCoder
博客链接:🔎 作者博客主页

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

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

相关文章

路由策略原理与配置

🐣个人主页 可惜已不在 🐤这篇在这个专栏 华为_可惜已不在的博客-CSDN博客 🐥有用的话就留下一个三连吧😼 目录 一. 原理概述 二. 实验目的 实验内容 实验拓扑 实验配置 三. 实验结果 一. 原理概述 路由策略Route-P…

【docker】docker 关键技术 —— 镜像制作

docker 镜像制作 镜像制作及原因Docker 镜像制作方式快照方式制作镜像制作命令 Dockerfile 制作镜像Dockerfile 是什么Dockerfile 格式为什么需要 Dockerfilegitee 详细使用 Dockerfile 教程 镜像制作及原因 镜像制作是因为某种需求,官方的镜像无法满足需求&#x…

Docker基本使用(持续更新中)

1 常用命令 1.1保存镜像到本地 命令如下: docker save -o nginx.tar nginx:latest 举例 结果:在当前目录下多了一个nginx.tar的包 1.2加载本地镜像 命令如下: docker load -i nginx.tar 举例: 查看当前镜像是没有nginx的 加载本地镜…

C++入门基础知识67(高级)——【关于C++ 文件和流】

成长路上不孤单😊😊😊😊😊😊 【14后😊///C爱好者😊///持续分享所学😊///如有需要欢迎收藏转发///😊】 今日分享关于C 文件和流的相关内容! 关于…

数据库索引底层数据结构之B+树MySQL中的页索引分类【纯理论干货,面试必备】

目录 1、索引简介 1.1 什么是索引 1.2 使用索引的原因 2、索引中数据结构的设计 —— B树 2.1 哈希 2.2 二叉搜索树 2.3 B树 2.4 最终选择之——B树 2.4.1 B树与B树的对比(面向索引)【面试题】 3、MySQL中的页 3.1 页的使用原因 3.2 页的结构 3.2.1 页文件头和页文件…

【批量图片发票识别表格】批量识别发票明细导出Excel表格,批量识别扫描发票,批量识别拍照发票,发票识别改名

我们在生活中有很多发票要处理,有的是扫描的图片,有的是拍照的图片,需要将这些发票的信息导出整理成Excel表格,手打一两张还可以,数量大是不太现实的,那么今天教下大家如何快速的将这些发票整理下Excel表格…

基于Java、SpringBoot、Vue的加油站管理系统设计

摘要 本系统是一个基于Java、SpringBoot和Vue的加油站管理系统。它旨在提高加油站的运营效率,优化客户服务体验,并通过数据分析支持更精准的业务决策。该系统包括用户管理、汽油管理、站点管理等功能模块。通过这些功能,管理员可以方便地管理…

Chrome扩展程序上架全流程

1. 开发一个扩展 首先开发好一个扩展, 在构建之后压缩打包为 zip 格式的文件 2. 注册开发者账号 首次需要创建谷歌开发者账号,需要一次性收取5美元的注册费 注册步骤 打开注册链接,如下图所示,同意协议点击支付注册费 需要…

GDPU Vue前端框架开发 计数器

计数器算不到你双向绑定的进度。 重要的更新公告 !!!GDPU的小伙伴,感谢大家的支持,希望到此一游的帅哥美女能有所帮助。本学期的前端框架及移动应用,采用专栏订阅量达到50才开始周更了哦( •̀ .̫ •́ )✧…

一步到位:通过 Docker Compose 部署 EFK 进行 Docker 日志采集

一、EFK简介 Elasticsearch:一个开源的分布式搜索和分析引擎,用于存储和查询日志数据。它是 EFK 的核心组件,负责高效地存储和检索日志信息。 Filebeat:一个轻量级的日志采集器,主要用于将日志文件数据发送到 Logsta…

Python之NumPy超详细学习指南:从入门到精通(上篇)

文章目录 Python NumPy学习指南:从入门到精通第一部分:NumPy简介与安装1. 什么是NumPy?2. 安装NumPy使用pip安装:使用Anaconda安装: 第二部分:NumPy数组基础1. NumPy数组的创建从列表创建一维数组&#xff…

第四天旅游线路预览——从贾登峪到喀纳斯景区入口(贾登峪游客服务中心)

第四天:从贾登峪到喀纳斯风景区入口,晚上住宿贾登峪; 从贾登峪到喀纳斯景区入口(贾登峪游客服务中心): 搭乘贾登峪①路车,路过三湾到达景区换乘中心,路程时长约40分钟; …

在服务器上开Juypter Lab教程(远程访问)

在服务器上开Juypter Lab教程(远程访问) 文章目录 在服务器上开Juypter Lab教程(远程访问)一、安装anaconda1、安装anaconda2、提权限3、运行4、同意协议5、安装6、是否要自动初始化 conda7、结束8、检查 二、Anaconda安装Pytorch…

jsp+sevlet+mysql图书管理系统

jspsevletmysql图书管理系统 一、系统介绍二、功能展示1.图书查询(学生)2.借阅信息(学生)3.借阅历史(学生)4.借阅历史(管理员)5.读者管理(管理员)6.图书分类(管理员)7.图书借阅信息(管理员)8.图书归还信息(管理员) 四、其它1.其他系统实现 一、系统介绍 系统主要功能&#xff…

iOS_模拟系统音量/亮度视图

自己实现音量和亮度视图,然后显示在所需区域。 当需要展示自己实现的音量视图时,需要屏蔽掉系统的音量视图: // 显示持有系统的音量视图 self.sysVolumView [[MPVolumeView alloc] init];// 当需要屏蔽时 if (self.sysVolumView.superview…

【Java面试】第八天

🌟个人主页:时间会证明一切. 目录 BeanFactory和FactroyBean的关系?BeanFactoryFactoryBean Spring 中的 Bean 是线程安全的吗?有状态的Bean如何解决线程安全问题 Spring 中的 Bean 作用域有哪些?作用域与循环依赖自定…

6.6高斯噪声

在OpenCV联合C中给一张图片添加高斯噪声(Gaussian Noise),可以通过生成随机数并在图像的每个像素上加上这些随机数来实现。高斯噪声是一种统计分布服从正态分布的噪声,通常用于模拟自然界的许多物理现象。 示例代码 以下是一个使…

衡石分析平台使用手册-通用配置文档

配置文件​ 配置文件中存放 HENGSHI SENSE 的配置参数,可以通过修改配置文件来改变 HENGSHI SENSE 的服务方式。 配置文件说明​ 配置文件存放在 conf 路径下,包含 hengshi-sense-env.sh 和 engine-segment-hosts 两个文件。其中 engine-segment-host…

R18 Enhancements on CHO procedure for NES cell(s)(NES event)

在 R18 Network energy savings(NES) 之cell DTX/DRX https://t.zsxq.com/o1jnp 中有提到DCI format 2_9中的field NES-mode indication,这个field就与另一个NES feature相关,下面就简单看下。 在TR 38.864中有提到Connected mode mobility的内容:在 NES mode switching期间…

标准库、HAL库、LL库

目录 举例理解 概念理解 标准库(Standard Peripheral Library,SPL) 2. HAL库(Hardware Abstraction Layer) 3. LL库(Low-Layer Library) 总结区别 如何选择 实际应用中的结合使用 代码…