本地使用Git同步、配合Gitee同步至仓库并下拉到本地(亲手调试,全能跑通)

这几天在公司,同事都在使用Gitee上传项目,进行同步,我也进行了简单学习了解了一下版本控制软件Git,挺不错的,故写个笔记记录一下。
本篇博文主要涉及的内容:
1,本地写代码,通过Git同步到本地
2,写完的项目通过Git上传至Gitee仓库
3,将Gitee仓库里面的项目巴拉到本地
PS:Git是本地的版本管理工具,Gitee是远程仓库

深吸一口气,静下心来耐心看完,我相信你一定会有所收获的!

一、本地使用Git进行同步

1,咳咳,先让我吧啦两句

当有一个项目让你修改,你会先把这个项目打包一下,然后再进行处理,若项目崩了,然后可以把压缩包解压还原成之前的项目。
就此为止,你已经会领悟到Git的精髓了!!!恭喜恭喜,撒花~~

啥是Git?问了下Kimi,巴拉巴拉了一堆,也就是一个版本控制系统,它的作用就是管理项目的不同版本。
在这里插入图片描述
打个比方:
你现在把一个项目v1版本通过Git进行了同步,然后你接着开发项目,乱改一通,完了,项目整崩溃了,你想回退到刚开始的v1版本,此时可以通过Git同步一下,就可以将项目同步至最后一次通过Git提交的项目。

2,安装Git

我就不废话了,官网下载,一路Next即可,也可以找博文看下安装教程,这里不是重点,略
git官网链接

3,选择要进行本地同步的文件夹

例如,在yy_git_test文件夹下有一个项目文件夹my_project,现在要同步这里面的内容,假如里面有一个main.cpp文件
在这里插入图片描述在这里插入图片描述
main.cpp啥也没有,是一个空文件!仅用来测试使用

①在项目统计文件夹下右击空白处,选择Open Git Bash here

在这里插入图片描述
像这样,记得看下路径是不是你想要的哈,我这里是e:/yy_git_test
在这里插入图片描述

②配置用户名和邮箱

git config --global user.name beyondyanyu
git config --global user.email xxxxxx@qq.com
这里的beyondyanyu用户名随便填,xxxxxx@qq.com邮箱也是随便填
你提交项目之后,通过参看提交日志,就会显示用户名和邮箱,显示的就是你填的这个哈
在这里插入图片描述

③初始化项目文件夹——git init

命令:git init
运行完之后,会出现一个隐藏文件夹.git,这就表明该文件夹算是被git接管了,这个.git文件夹别乱动!乖,别皮
在这里插入图片描述

④设置当前文件夹内的所有文件为提交状态——`git add .`

这里的点(.)表示所有的文件
当然也可以指定文件git add xxx.cpp,表示将xxx.cpp文件设置为提交状态
点击跳转至演示说明
命令:git add .
在这里插入图片描述

⑤填写备注信息并提交——git commit -m "此处填写备注信息"

命令举例:git commit -m "this is a test""
在这里插入图片描述
好了,你把你的项目已经上传到本地了

⑥查看提交历史信息——git log

命令:git log
在这里插入图片描述

⑦回退某个文件——git checkout HEAD xxx.xx

现在我们对这个空文件夹main.cpp进行回退测试
我们现在对这个main.cpp随便加点内容,表示经过了修改
在这里插入图片描述
cd my_project,进入到my_project文件夹下,因为main.cpp在该文件夹里面
命令举例:git checkout HEAD main.cpp
在这里插入图片描述
再看下这个文件夹,发现内容被修改了
在这里插入图片描述
又变成了之前上传的空文件了,测试完成
在这里插入图片描述

补充④ 设置单个文件为提交状态——`git add xxx.xx`

回退至步骤④

我再重新创建一个文件a.txt,然后就只上传该文件
命令举例:git add a.txt
在这里插入图片描述

与⑤一样,进行填写备注并提交——git commit -m "备注信息"

命令举例:git commit -m "only one file a.txt"
在这里插入图片描述

⑧显示对应字符串的文件名称——git show [log所显示的字符串信息] --stat,搭配步骤⑥使用

首先显示提交历史信息,命令:git log
假如我们想看一下53a059b9b3a6582c32694fd9cd3这次提交的内容都有些啥
命令举例:git show 53a059b9b3a6582c32694fd9cd3c27744900940f --stat
在这里插入图片描述

⑨显示提交的全部文件——git log --name-only

git log区别在于,这个会显示每次提交的内容
在这里插入图片描述

⑩删除本地仓库内的文件和文件夹

1,删除本地仓库文件同时将本地副本也进行删除:git rm filename

我这里以删除本地仓库里面的main.cpp文件举例,git rm main.cpp
在这里插入图片描述
同时也会将本地的main.cpp给删除掉
在这里插入图片描述

2,删除本地仓库文件并保留本地副本:git rm --cached filename

我这里以删除本地仓库里面的a.txt文件举例,git rm --cached a.txt
在这里插入图片描述

4,补充

①设置Git字体大小

右击Logo,选择Options…
在这里插入图片描述
选择Text,再选择Select…,设置字体,然后重启Git即可生效
在这里插入图片描述

②下载GitHub或者Gitee上的源码

假如我相中了一个项目
点击克隆/下载,选择HTTPS,复制命令
在这里插入图片描述
在本地找个要下载到的位置,打开本地Git,运行复制的命令即可
例如:git clone https://gitee.com/beyondyanyu/my_project.git
就会将my_project这个项目给下载到E:\yy_git_test
在这里插入图片描述

5,总结步骤

首先,注册用户名和邮箱
然后,初始化要托管的文件夹
再次,设置为准备提交状态,提交到暂存区中
最后,填写备注并提交

二、本地项目上传至Gitee,别问为啥不是Github上!![/脸黑]

1,配置Gitee仓库

首先登录gitee,选择新建仓库
在这里插入图片描述
我这里创建一个名为my_Project的仓库,Readme文件要选上
因为我没啥版本可言,故选择单分支模型

PS:若选择多分支,后续的——④本地项目推送到Gitee仓库中,需要在命令中输入指定的分支名称
在这里插入图片描述
创建好之后像这样
在这里插入图片描述
点击克隆/下载,找到SSH

git@gitee.com:beyondyanyu/my_project.git,这个是你的仓库链接

咋上来的,点我返回去

下面俩是为确保你提交的代码身份被 Gitee 正确识别,要完成的配置
git config --global user.name 'YanYu'
git config --global user.email '7870xxxxxx@qq.com'

在此之前要生成密钥,命令为:ssh-keygen -t rsa
然后获取密钥,命令为:cat ~/.ssh/id_rsa.pub
在这里插入图片描述

①生成RSA密钥

命令:ssh-keygen -t rsa
在这里插入图片描述

②获取 RSA 公钥内容,并配置到SSH公钥中

命令:cat ~/.ssh/id_rsa.pub
在这里插入图片描述
在Gitee的仓库上,选择管理,选择添加个人公钥,这里是个坑,要留意下!!!
在这里插入图片描述
会跳转到一个新的页面,在这个页面里面输入密钥
在这里插入图片描述
并且需要你输入Gitee的密码进行校验才行
在这里插入图片描述
像这样
在这里插入图片描述

③配置用户名和邮箱

运行从Gitee上获取到的这两行命令
git config --global user.name 'YanYu'
git config --global user.email '787084934@qq.com'
在这里插入图片描述

④关联Gitee仓库

点击克隆/下载,在HTTPS里面找到该命令,复制一下
https://gitee.com/beyondyanyu/my_project.git
在这里插入图片描述
运行从Gitee上获取到的这一行与仓库关联的命令:git remote add origin 你的HTTPS地址
命令举例:git remote add origin https://gitee.com/beyondyanyu/my_project.git
在这里插入图片描述
就此配置Gitee仓库已经完成

2,上传本地仓库内容至Gitee的仓库

回到我们本地电脑上,在E:\yy_git_test\my_project下面有个a.txt文件,我们把它上传到Gitee仓库中
在这里插入图片描述

①打开Git

在这里插入图片描述

②本地关联Gitee仓库

命令:git remote add origin 你仓库的链接

如何获取仓库链接可跳转到这里

举例:git remote add origin git@gitee.com:beyondyanyu/my_project.git

在这里插入图片描述

报错:error: remote origin already exists.
分析:本地仓库已经关联了一个名为origin的远程仓库
解决:
Ⅰ 查看远程仓库都有哪些 git remote -v
Ⅱ 删除origin这个远程仓库git remote rm origin
远程主机为origin
在这里插入图片描述
再次关联Gitee仓库,git remote add origin git@gitee.com:beyondyanyu/my_project.git,不报错即可
在这里插入图片描述

③提交到Gitee仓库中

因为刚才关联了Gitee仓库,故直接和本地使用Git进行同步即可
先将当前文件夹内的所有文件设置为提交状态git add .
再填写备注信息并提交:git commit -m "备注信息内容",例如git commit -m "this is a test"
在这里插入图片描述
接下来开始往Gitee上推了,可以看到远程仓库分支master,一般情况默认都是这个
在这里插入图片描述

④本地项目推送到Gitee仓库中

返回至 ——1,配置Gitee仓库,查看多分支情况下处理方法

命令:git push -u <远程主机名> <远程分支名>
例如:git push -u origin master
在这里插入图片描述
报错: ! [rejected] master -> master (non-fast-forward)
原因:git仓库中已经有一部分代码,所以它不允许你直接把你的代码覆盖上去
解决:强推,用你本地的代码替代git仓库内的内容!此方法仅限于新仓库,仓库里面啥也没有的情况哈
命令:git push -f origin master
在这里插入图片描述
刷新一下Gitee,可以看到把本地yy_git_test文件夹下的所有文件都上传到云端Gitee仓库中了,其中my_project文件夹下有个a.txt文件
在这里插入图片描述
在这里插入图片描述

3,将Gitee上的仓库拉到本地

命令:git pull origin master
因为在上面我们进行了仓库关联,本地已经和远程的仓库通过SSH密钥进行相关联了,故这里只需要pull下来就行
在这里插入图片描述
E:\yy_git_test\my_project下看看
在这里插入图片描述
好好好,啥也没!!!

原因:暂存区有东西,也就是git add .操作的时候没后续了
解决:
Ⅰ 取消暂存区内容:git reset HEAD .
Ⅱ 取消还未加入暂存区的内容git checkout .

在这里插入图片描述

三、总结(即:让我拉吧两句

就此,博文实现了本地使用Git进行同步以及本地项目上传至Gitee仓库并且将Gitee上的仓库拉到本地,差不多这些就够平常的使用了

整理了两个晚上,网上的某些博文有的有错误,emmm,本博文是一步一步调试成功后进行撰写,不求别的,留个笔记将来复习使用

若本博文有幸帮助到了某人,本人深感荣幸

加油,少一些功利主义的追求,多一些不为什么的坚持!

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

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

相关文章

初阶数据结构1 算法复杂度

1.数据结构概念 数据结构(Data Structure)是计算机存储、组织数据的⽅式&#xff0c;指相互之间存在⼀种或多种特定关系的数 据元素的集合。没有⼀种单⼀的数据结构对所有⽤途都有⽤&#xff0c;所以我们要学各式各样的数据结构&#xff0c; 如&#xff1a;线性表、树、图、哈…

【C++】—— 类和对象(一)

【C】—— 类和对象&#xff08;一&#xff09; 1、类的定义1.1、类定义1.1.1、类定义格式1.1.2、成员变量的标识1.1.3、C 中的 s t r u c t struct struct1.1.4、C 中的内联函数1.1.5、总结 1.2、访问限定符1.3、类域 2、实例化2.1、实例化的概念2.2、对象大小2.2.1、对象的大…

lenovo联想ThinkBook 14 G4+ IAP/ARA(21CX,21D0)笔记本原装出厂Windows11系统预装OEM镜像下载

ThinkBook 14 G4 IAP【21CX】原厂系统Win11恢复安装包&#xff1a; 链接&#xff1a;https://pan.baidu.com/s/1iY9BxidIbv4RnXKaqbydTA?pwd9wc6 提取码&#xff1a;9wc6 ThinkBook 14 G4 ARA【21D0】原厂系统Win11恢复安装包&#xff1a; 链接&#xff1a;https://pan.ba…

nest学习笔记(一)

介绍 nest是一个用于构建高效&#xff0c;可拓展的nodejs服务端应用程序的框架&#xff0c;它使用渐进式javascript&#xff0c;使用Typescript构建并且完全支持Typescript&#xff0c;而且运行开发者使用javascript编写代码&#xff0c;提供了OOP、FP、FRP nest的底层是基于…

Linux编程:使用python或者shell获取系统信息

0. 概要 在日常的系统管理和性能监控中&#xff0c;获取系统信息是一个非常常见的需求。 本文将介绍如何使用Python和Shell脚本来获取这些系统信息。 1. 使用Python获取系统信息 使用psutil库来获取系统的CPU、内存、磁盘和网络信息。 1.1 安装psutil库 首先&#xff0c;我…

盗梦空间续集(InceptionNeXt):使用Inception优化加速ConvNeXt实现ImageNet-1K的最佳精度

Abstract 灵感来自ViT的长距离建模能力&#xff0c;大核卷积最近被广泛研究和采用&#xff0c;以扩大感受野并提高模型性能&#xff0c;例如显著的工作ConvNeXt采用77深度卷积。虽然这种深度算子只消耗少量的FLOPs&#xff0c;但由于高内存访问成本&#xff0c;它在强大计算设…

java实战项目--拼图小游戏(附带全套源代码)

个人主页VON 所属专栏java实战项目游戏参考黑马程序员 一、效果展示 二、功能介绍 游戏中所有的图片以及代码均已打包&#xff0c;玩家直接安装游戏即可&#xff0c;不用idea也可以畅玩。 游戏功能比较单一&#xff0c;只有简单的拼图功能。 a&#xff1a;展示原图重新游戏&a…

《汇编语言 基于x86处理器》- 读书笔记 - 第3章-汇编语言基础

《汇编语言 基于x86处理器》- 读书笔记 - 第3章-汇编语言基础 3.1 基本语言元素3.1.1 第一个汇编语言程序常见汇编语言调用规范 3.1.2 整数常量&#xff08;基数、字面量&#xff09;3.1.3 整型常量表达式3.1.4 实数常量十进制实数十六进制实数&#xff08;编码实数&#xff09…

USB 2.0 协议专栏之 USB 2.0 概述(一)

前言&#xff1a;本篇博客为手把手教学的 USB 2.0 协议栈类精品博客&#xff0c;该专栏博客侧重针对 USB 2.0 协议进行讲解。Universal Serial Bus 作为如今最常见的通信接口&#xff0c;被广泛应用于&#xff1a;Keyboard、Mouse、Communication Device Class 和 Mass Storage…

“论企业集成架构设计及应用”写作框架,软考高级论文,系统架构设计师论文

原创范文 论企业集成架构设计及应用企业集成架构(Enterprise Integration Arhitecture&#xff0c;EIA) 是企业集成平台的核心&#xff0c;也是解决企业信息孤岛问题的关键。企业集成架构设计包括了企业信息、业务过程、应用系统集成架构的设计。实现企业集成的技术多种多样&a…

什么是 Windows 服务

什么是 Windows 服务 Windows 服务是 Windows 操作系统的核心。它们控制着操作系统的运行&#xff0c;定义了图形用户界面&#xff08;GUI&#xff09;与系统硬件之间的通信以及其他许多功能。没有这些服务&#xff0c;Windows 操作系统将无法正常运行。 对普通用户而言&…

【人工智能】人工智能概述(二)人工智能的关键技术

文章目录 一. 机器学习与深度学习1. 机器学习2. 深度学习 二. 计算机视觉1. 基本概念和分类2. 未来计算机视觉面临的主要挑战 三. 自然语言处理1. 基本概念与分类2. 自然语言处理面临的四大挑战 四. 知识图谱1. 基本概念2. 应用场景 五. SLAM技术1. 基本概念2. 主要分类 六. 人…

DSP教学实验箱_数字图像处理操作_案例分享:5-13 灰度图像二值化

一、实验目的 学习灰度图像二值化的原理&#xff0c;掌握图像的读取方法&#xff0c;并实现在LCD上显示二值化前后的图像。 二、实验原理 图像二值化 图像的二值化处理就是将图像上的点的灰度置为 0 或 255&#xff0c;也就是将整个图像呈现出明显的黑白效果。即将 256 个亮…

AJAX(1)——axios库的使用

什么是AJAX? AJAX是异步的JavaScript和XML。简单来说&#xff0c;就是使用XMLHttpRequest对象与服务器通信。它可以使用JSON,XML,HTML和text文本等格式发送和接收数据。AJAX最吸引人的就是它异步的特性&#xff0c;也就是说它可以在不重新刷新页面的情况下与服务器通信&#…

昇思25天学习打卡营第25天|LLM应用-基于MindNLP+MusicGen生成自己的个性化音乐

打卡 目录 打卡 应用任务简介 生成音乐 预训练权重模型下载 无提示生成 文本提示生成 音频提示生成 生成配置 应用任务简介 MusicGen 来自 Meta AI 的 Jade Copet 等人提出的基于单个语言模型&#xff08;LM&#xff09;的音乐生成模型&#xff0c;能够根据文本描述或…

NFS服务器环境搭建

1、什么是NFS ● 定义&#xff1a; NFS是一种在计算机系统之间共享文件和目录的协议&#xff0c;最初由Sun Microsystems开发&#xff0c;现在已经成为广泛使用的网络文件系统之一。 ● 核心功能&#xff1a; 通过网络&#xff08;特别是TCP/IP网络&#xff09;实现文件共享…

微信小程序配置访问服务器失败所发现的问题及解决方案

目录 事前现象问题1&#xff1a;问题现象&#xff1a;问题分析&#xff1a; 问题2&#xff1a;问题现象&#xff1a;问题分析&#xff1a;解决方案&#xff1a; 事后现象 事前现象 问题1&#xff1a; 问题现象&#xff1a; 在本地调试时&#xff0c;一切顺利&#xff0c;但一…

Flink Doirs Connector 常见问题:Doris目前不支持流读

常见问题 Doris Source 在数据读取完成后&#xff0c;流为什么就结束了&#xff1f; 目前 Doris Source 是有界流&#xff0c;不支持 CDC 方式读取。 问题&#xff1a;对于 Flink Doris DataStream&#xff0c;Flink 想要在 流式读取 Doirs / 实时读 Doris&#xff0c;目前读…

03--KVM虚拟化

前言&#xff1a;这里开始涉及到云计算内容&#xff0c;虚拟化使云计算发展&#xff0c;云计算推动虚拟化进步&#xff0c;两者相辅相成&#xff0c;这一章总结一下kvm虚拟化的解决方案。 1、基础概念 1.1、云计算 以前要完成信息处理, 是需要在一个客观存在的计算机上完成的…

Node.js版本管理工具之NVM

目录 一、NVM介绍二、NVM的下载安装1、NVM下载2、卸载旧版Node.js3、安装 三、NVM配置及使用1、设置nvm镜像源2、安装Node.js3、卸载Node.js4、使用或切换Node.js版本5、设置全局安装路径和缓存路径 四、常用命令技术交流 博主介绍&#xff1a; 计算机科班人&#xff0c;全栈工…