【教程】Gitee(git)保姆级图文使用教程
wptr33 2025-01-08 17:48 29 浏览
我们在日常的工作过程中经常会遇到,家里和公司资料文件同步的问题,以及项目开发过程中的协作问题。Git就完美的解决了这些问题,但是由于 Git国外服务器的原因平时网络太慢了,不过还好有国内的托管平台Gitee(码云)可以供我们使用及学习。废话不多说,我们开始进入教程的正题。
准备:
1、注册gitee账号
1)搜索码云,或者直接输入官网进入注册。(注册时最好用邮箱注册,不是邮箱注册的要在设置里添加自己的邮箱)
2、安装Git,可以直接进入官网下载https://git-scm.com/,如果感觉下载的太慢可以进入下图所示网址搜索下载。下载好之后直接安装就行。
创建版本库
版本库作用:存放你的项目,项目的删除更改,版本库都能够监控。
- 找到一个磁盘目录,并创建一个文件夹(不要包含中文路径)
- 右键选择Git Bash Here(打开Git终端)
3、打开之后输入初始化命令git init (此命令可以对文件夹进行版本库的初始化)
4、这个时候文件夹里会多出一个.git文件,这个不要删除他的作用是用来记录项目改动的。(如果没有点击查看勾选上隐藏项目就可以看到了)
5、接下来需要我们做个基础配置,这个配置的目的是告诉Git你是谁,需要使用两条命令。第一条:git config --global user.name “你的名字或昵称” 第二条:git config --global user.email “你的邮箱”。
6、Git的使用可以分为两种,第一种是本地文件的版本管理,第二种是连接远程版本库,比如我们在GItee上创建的版本库(可以实现不同电脑直接的项目文件管理,以及不同人直接的协作)邮箱。
本地git版本库使用
- 首先我们先实现本地的版本管理,为了验证我们的版本库保存问题,先建一个测试文件(我命名的叫test.txt)
2、创建好之后打开Git Bash Here输入git add test.txt并回车(test.txt是你需要管理的文件)。
3、这里已经添加了文件,但是还没有提交,需要使用git commit -m “注释说明”命令进行提交,需要注意-m后面跟的是说明,就是你用来备注你上传的版本信息,便于你自己查看使用。
4、1 file changed表示1个文件,0 insertions 和0deletions表示0增加0删除。
5、我们对test.txt的文件内容进行修改然后再提交测试下。
6、可以看到上面的步骤中提示信息,1 file changed(一个文件),2 insertions(+)(两行增加,因为我们在文件中增加了两行内容)。
7、这个时候我们基本的版本存储就会使用了,那么我们再验证几个常用的指令,第一个:git status(查询当前的项目状态)。
8、这里可以看到提示还有个.docx的文件没有添加,因为我的文件夹中有个word文档。这里正好我们使用另外一个命令git add .(全部添加命令),添加它。
9、可以看到提示信息 2 files changed 表示两个文件。
10、现在再使用git status命令,可以看到提示没有需要添加的了。
11、这里我们再使用 git log ,查看具体文件提交的版本信息。可以看到我一共提交了4个版本,都是我进行了文档的修改工作(文档里提交了前三个,我自己又提交了一次耍耍哈哈哈)。Commit是hash值,这里的hash叫做指纹,基本上不会重复。Author表示提交的人信息Date表示修改的时间.
12、查看了版本信息,我们想回到已经的版本,需要使用git reser --hard id 命令(这里的id包含在每个版本的hash里)。执行完,查看本地文件可以看到已经回退了。
13、到这里本地的版本管理就结束了,后面我们进行远程的管理,这里我们使用了前面注册的gitee。下图为上文使用的git命令整理。
命令 | 功能 |
git init | 初始化目录为项目库 |
git config --global user.name “你的名字或昵称” | 基本配置时用到 |
git config --global user.email “你的邮箱” | 基本配置时用到 |
git add(rm) 文件名 | add添加文件到暂存区rm为删除 |
git commit -m “信息” | 提交暂存区文件 |
git log | 查看信息 |
git add . | 添加项目中全部文件到暂存区 |
git reset --hard id | 版本回退 |
git diff | 查看比对文件 |
gitee远程库的使用
1、下面我们开始,远程库的连接使用,使用ssh--keygen -t rsa -C “你的邮箱地址”,生成密钥(用于连接gitee使用,让你的gitee账户认识你),输入玩指令之后一路回车就可以了,中间的是密码什么的咱们也不需要。
2、这时候已经生成了两个密钥文件,存在了下图我框选的位置。
3、这个时候我们需要在gitee上创建个库,这个库就是我们需要远程访问存储文件的地方。
4、创建好之后就可以找到我们的仓库然后将之前生成的公钥添加了。
5、这里我们的公钥就添加完成了,接下来复制上远程库的ssh。
6、下面我们接着进行本地与远程库关联。打开Git Bash Here(注意在自己的项目文件夹里右键打开),使用 git remote add origin git@gitee.com:yu.git 这里的origin是github的默认名字,我们可以自己定义个名字使用,名字后面跟着的是我们上面复制的SSH。
7、可以使用git remote -v 命令验证是否关联成功。(可以看到我们已经关联成功了)。
8、之后我们可以使用git push -u origin master (origin为自己前面设置的名字),提交本地内容到远程库了。
9、如果和我一样提示这样的错误,是因为远程库包含了本地没有的文件,这里两种方法第一种:使用git push -f origin master 这里就强行本地覆盖远程了,远程里多的东西也就被删除了。第二种:这种比较安全,使用git pull --rebase origin master,这个命令是将远程库的文件拉取到本地合并,这也是我们平时需要保存远程库到本地的方法,我们使用一下。
10、再次使用git push -u origin master之后可以看到远程库里有我们的文件了 。
11、、这里我们的文章就到此结束了,主要提交不到远程库时记得使用git add 和git commit -m 本地提交完成后再使用git push -u origin master 。
相关推荐
- MySQL进阶五之自动读写分离mysql-proxy
-
自动读写分离目前,大量现网用户的业务场景中存在读多写少、业务负载无法预测等情况,在有大量读请求的应用场景下,单个实例可能无法承受读取压力,甚至会对业务产生影响。为了实现读取能力的弹性扩展,分担数据库压...
- 3分钟短文 | Laravel SQL筛选两个日期之间的记录,怎么写?
-
引言今天说一个细分的需求,在模型中,或者使用laravel提供的EloquentORM功能,构造查询语句时,返回位于两个指定的日期之间的条目。应该怎么写?本文通过几个例子,为大家梳理一下。学习时...
- 一文由浅入深带你完全掌握MySQL的锁机制原理与应用
-
本文将跟大家聊聊InnoDB的锁。本文比较长,包括一条SQL是如何加锁的,一些加锁规则、如何分析和解决死锁问题等内容,建议耐心读完,肯定对大家有帮助的。为什么需要加锁呢?...
- 验证Mysql中联合索引的最左匹配原则
-
后端面试中一定是必问mysql的,在以往的面试中好几个面试官都反馈我Mysql基础不行,今天来着重复习一下自己的弱点知识。在Mysql调优中索引优化又是非常重要的方法,不管公司的大小只要后端项目中用到...
- MySQL索引解析(联合索引/最左前缀/覆盖索引/索引下推)
-
目录1.索引基础...
- 你会看 MySQL 的执行计划(EXPLAIN)吗?
-
SQL执行太慢怎么办?我们通常会使用EXPLAIN命令来查看SQL的执行计划,然后根据执行计划找出问题所在并进行优化。用法简介...
- MySQL 从入门到精通(四)之索引结构
-
索引概述索引(index),是帮助MySQL高效获取数据的数据结构(有序),在数据之外,数据库系统还维护者满足特定查询算法的数据结构,这些数据结构以某种方式引用(指向)数据,这样就可以在这些数据结构...
- mysql总结——面试中最常问到的知识点
-
mysql作为开源数据库中的榜一大哥,一直是面试官们考察的重中之重。今天,我们来总结一下mysql的知识点,供大家复习参照,看完这些知识点,再加上一些边角细节,基本上能够应付大多mysql相关面试了(...
- mysql总结——面试中最常问到的知识点(2)
-
首先我们回顾一下上篇内容,主要复习了索引,事务,锁,以及SQL优化的工具。本篇文章接着写后面的内容。性能优化索引优化,SQL中索引的相关优化主要有以下几个方面:最好是全匹配。如果是联合索引的话,遵循最...
- MySQL基础全知全解!超详细无废话!轻松上手~
-
本期内容提醒:全篇2300+字,篇幅较长,可搭配饭菜一同“食”用,全篇无废话(除了这句),干货满满,可收藏供后期反复观看。注:MySQL中语法不区分大小写,本篇中...
- 深入剖析 MySQL 中的锁机制原理_mysql 锁详解
-
在互联网软件开发领域,MySQL作为一款广泛应用的关系型数据库管理系统,其锁机制在保障数据一致性和实现并发控制方面扮演着举足轻重的角色。对于互联网软件开发人员而言,深入理解MySQL的锁机制原理...
- Java 与 MySQL 性能优化:MySQL分区表设计与性能优化全解析
-
引言在数据库管理领域,随着数据量的不断增长,如何高效地管理和操作数据成为了一个关键问题。MySQL分区表作为一种有效的数据管理技术,能够将大型表划分为多个更小、更易管理的分区,从而提升数据库的性能和可...
- MySQL基础篇:DQL数据查询操作_mysql 查
-
一、基础查询DQL基础查询语法SELECT字段列表FROM表名列表WHERE条件列表GROUPBY分组字段列表HAVING分组后条件列表ORDERBY排序字段列表LIMIT...
- MySql:索引的基本使用_mysql索引的使用和原理
-
一、索引基础概念1.什么是索引?索引是数据库表的特殊数据结构(通常是B+树),用于...
- 一周热门
-
-
C# 13 和 .NET 9 全知道 :13 使用 ASP.NET Core 构建网站 (1)
-
程序员的开源月刊《HelloGitHub》第 71 期
-
详细介绍一下Redis的Watch机制,可以利用Watch机制来做什么?
-
假如有100W个用户抢一张票,除了负载均衡办法,怎么支持高并发?
-
Java面试必考问题:什么是乐观锁与悲观锁
-
如何将AI助手接入微信(打开ai手机助手)
-
SparkSQL——DataFrame的创建与使用
-
redission YYDS spring boot redission 使用
-
一文带你了解Redis与Memcached? redis与memcached的区别
-
如何利用Redis进行事务处理呢? 如何利用redis进行事务处理呢英文
-
- 最近发表
- 标签列表
-
- git pull (33)
- git fetch (35)
- mysql insert (35)
- mysql distinct (37)
- concat_ws (36)
- java continue (36)
- jenkins官网 (37)
- mysql 子查询 (37)
- python元组 (33)
- mybatis 分页 (35)
- vba split (37)
- redis watch (34)
- python list sort (37)
- nvarchar2 (34)
- mysql not null (36)
- hmset (35)
- python telnet (35)
- python readlines() 方法 (36)
- munmap (35)
- docker network create (35)
- redis 集合 (37)
- python sftp (37)
- setpriority (34)
- c语言 switch (34)
- git commit (34)