git以及gitee的使用

gitee的使用

使用gitee的原因

①gitee上有很多开源项目,可以学习到别人做出来的东西,互惠互利

②用git保存自己的资料,可以预防误删,即使在电脑本地中删除了有用的文件,也可以用git找回来,起到备份的作用

③在多人协作时可以避免误操作导致bug,大大提高了工作效率

④目前两大开源网站为github和gitee,但是在国内使用github会很慢,要挂梯子才能顺畅使用,于是gitee成为了最佳选择

git的使用

在使用gitee的网站之前,必须要先学习git的使用。gitee上的文件是通过git上传的。

git的安装

因为我的电脑是win11系统,所以这篇文章都是以win11为例子而写的。

首先到官网下载git,

在这里插入图片描述

打开网址可以看到如图,直接点击电脑系统对应的版本即可。下载完成后安装一路next即可安装完成。

安装完成后,在“开始”处可以看到三个含git的程序,点击Git Bash并打开

在这里插入图片描述

可以看到如下界面:

在这里插入图片描述

因为git采用分布式协作,即可以与他人一起管理同样的文件,所以需要知道每台计算机的地址,而git是通过名字和邮箱进行区分的

于是我们需要设置自己电脑git的名字和邮箱

$ git config --global user.name "Your Name"  //Your Name是你自己设置的名字
$ git config --global user.email "email@example.com"   //如上,邮箱也是你自己设置的邮箱

在这里插入图片描述

如上图,这样就说明已经成功设置了你的名字和邮箱了!为了方便理解,我上面直接用的是“Your Name”和“email@example.com”,后面我会再对此进行修改。

创建版本库(拥有一个本地仓库)

版本库是用来存放你的项目的,对你项目的一删一改,版本库都能监控的到。

首先要在一个盘(不能含有中文的目录)上创建一个文件夹

在这里插入图片描述

但是仅仅就此创建还不行,还要在git命令行(即上面所说的Git Bash)上输入命令进行初始化,这样版本库才能对此文件夹进行管理

git init

然后就产生了个.git的文件,它是用于记录项目的改动的,千万不能删,删了就不能正常运行了,在文件夹中看不见也没事,因为他隐藏了。出现Initialized empty Git repository in …说明已经初始化成功。

注意!!!!

这个初始化要在刚刚创建的文件夹路径下,即路径最后是刚刚创建的文件夹的名字(并且之后每次对该版本库输入命令都是如此,没有就要进行以下操作)

在这里插入图片描述

如果路径没有到文件夹,也不要着急,可以进行一下操作即可

cd gitee-k

在这里插入图片描述

如之前操作,输入按回车之后没有任何提示即说明成功,并且窗口路径处就会出现gitee-k,即创建的版本库

git的操作

在刚刚创建的文件夹中创建一个文本,不要用微软自带的记事本,可以用notepad++,下载

在这里插入图片描述

如果电脑带有微软自带的记事本,要在打开方式上选择notepad++才能进行下面的命令

但是现在只是在仓库中创建了,还要输入命令交给git进行管理:

1,首先要将文本预先添加到git仓库(可以理解为放在了暂存区,此时文本还没有交给git进行管理,还有一步才可以)

git add temp.txt

如果采用微软自带的记事本,则会出现以下情况:

在这里插入图片描述

在这里插入图片描述

很明显,文本添加失败了

而使用notepad++则是以下情况:

在这里插入图片描述

没有出现任何提示,即为添加成功

2,然后提交给git仓库,并且附上说明,这个说明可以帮助你找回你修改过或者删除过的文件,意义重大!!所以这个说明最好是有相关性的。

git commit -m "this is the first txt"

在这里插入图片描述

如上,即说明上传成功

因为我重新打开时路径没有到版本库gitee-k,所以我首先要输入cd gitee-k才能进行操作

1 file changed(文件改变),1 insertion 插入(代表行,我只写了一行),22cab88为该文本的id,可以据此找回此时的文本

那怎样一次添加多个文件呢?

可以将文件用空格隔开,在进行git add放到暂存区,git commit -m “… ”交给git管理

**在这里插入图片描述
**

那修改了文本怎么操作呢?

和之前一样,也要进行git add和git commit -m两步

但是应该如何保证一定修改的我们想要修改的内容呢?

可以通过git status去查询当前的项目状态,如下图说明已经对文件进行了修改

在这里插入图片描述

那怎么查看到具体改动了哪些文件呢?

可以通过git diff去查看具体改动的内容

在这里插入图片描述

图中显示temp2文件被修改了,但是显示的是红色,说明只是手动修改了,而git监测到了,但是还没有放到暂存区

在这里插入图片描述

当放到暂存区后再查看状态,即可变成绿色

在这里插入图片描述

再进行git commit -m交给git管理即可修改完成!

如果对自己非常有信号,一定没有出现失误,不需要检查修改的内容是否正确,修改后也可以直接采用两部曲即git add 和git commit -m交给git管理

上面已经说过了,git是可以帮忙找回误删的文件的

那怎么样才能找回删除的文件呢?

可以通过git log查询我们之前所有的操作

在这里插入图片描述

commit是hash值的id代表的是你提交的版本号(通过他进行回退),为什么用hash因为hash叫做指纹,几乎不会重复。

author代表作者,就是你开头安装完之后,设置的本机信息

Date代表修复时间

Date下面是你每次提交commit的时候 -m 说明

回退命令需要根据你的log显示的id进行回退,你可以不用写全git就能自动去找

查询id后可以通过git reset --hard id进行回退

为什么叫回退呢,因为git将你每次不同的状态进行标记(删除修改添加),就像是一个版本一样,通过回退可以回到删除(修改、添加)之前的状态

在这里插入图片描述

如图即为回退成功

但是我们可能有时会看错id或者代码不如回退之前,又忘记哪一个回退了,那我们怎么样回退之前的呢?

可以通过git reflog查询

在这里插入图片描述

如图,我们之前回退到了ce40这个版本,而原来的版本是22ca,接下来我们可以通过这个id再进行回退,即可回退到原来的版本

从下往上看,是每一次commit,然后执行了reset命令。

看下图可以对此更好地理解

在这里插入图片描述

那我们怎么删除呢?

可以通过git rm 进行删除

git 删除也算是修改,所以也得commit

在这里插入图片描述

托管到gitee上

要想把本地代码放在gitee仓库上,那第一步肯定是要先创建一个自己的仓库呀!

创建仓库

在网页直接搜索gitee进入,输入个人信息创建一个自己的账号

点击+号,然后点击新建仓库

在这里插入图片描述

可以看到以下这个界面,仓库名称自己想怎么起就怎么起,但建议和项目相关

仓库介绍可以用来描述项目,其他默认即可(也可以选择用来描述这个仓库),直接点击创建按钮即可创建完成

在这里插入图片描述

点击之后页面跳转到以下这个页面,地址默认选择HTTP,用来拉取(pull)和推送(tush),连接本地和远程仓库

在这里插入图片描述

如图,可以看到这个页面有教你怎么上传代码到远程仓库(gitee)中,一个仓库的话可以按照这个顺序提交即可,但是多人协作的时候还需要其他另外的操作

多人协作

首先要确保已经远程连接多人协作(当然也可以自己在不同的电脑上进行这样的操作)的那个项目仓库,也就是(在git base中):

git remote add origin xxx(远程仓库地址)(origin是远程仓库的代称,可以自定义)

在这里插入图片描述

由于我之前已经连接过opensource这个仓库,再次连接就会报错,因为只需要连接一次,下次再操作就不需要连接了

连接完之后就要在创建一个开发分支,诶?分支是什么???

分支就相当于一个项目的版本,每个协作者都应该在自己创建的开发分支上提交代码(可以避免在主分支master上的代码中发生误操作而使项目产生bug,在开发分支中操作不会对主分支产生影响),开发分支可以创建无数次,提交到远程仓库之后还要合并(更新)主分支并再提交一次,最后要删除该开发分支,避免之后产生混淆。

git checkout -b xxx(开发分支名称)    #创建xxx开发分支并转移到xxx分支中

这也相当于:
git branch xxx    #创建xxx开发分支
git checkout xxx  #转移到xxx开发分支中

在这里插入图片描述

这就产生一个问题了,在主分支上操作提交,怎么可以确保开发分支上的代码能够正确上传到主分支中的相应位置呢?

如果我们把主分支上所有文件(当时的最新版本)都拉取(下载)到本地中,再在相应位置修改或者新建文件代码,最后再把所有文件提交一次 ,这是不是就可以解决了?

没错,就是这样!

所以我们首先要拉取仓库中的所有文件(pull)

git pull origin master   #前边origin可以称为远程仓库代称,后边的是你的连接方式。

然后就可以进行相应修改或者新建操作啦!

之后的提交和上面的个人仓库差不多,只不过多了一个操作:即在开发分支提交之后还要转移到master主分支中再提交一次

git add README.md
git commit -m "first commit"
git push -u origin "xxx"(开发分支)
git checkout master
git merge xxx(合并xxx)
git push -u origin "master"(主分支)

提交完之后就可以删除本地和远程仓库的开发分支啦~

git branch -D xxx(删除本地开发分支)
git push origin --delete xxx(删除远程仓库的开发分支)

在这里插入图片描述

但是在多人协作中,有时会产生冲突

那么应该怎么解决呢?

Git:合并分支----git merge命令应用的三种情景_Samven_7的博客-CSDN博客这篇博客已经讲得很明白了,解决方法也很简单,我就不在这里赘述了~

也可以用这个方法解决冲突:Git——如何解决 Git 中的合并冲突? - 知乎 (zhihu.com)

Wgwn-1694087489597)]

但是在多人协作中,有时会产生冲突

那么应该怎么解决呢?

Git:合并分支----git merge命令应用的三种情景_Samven_7的博客-CSDN博客这篇博客已经讲得很明白了,解决方法也很简单,我就不在这里赘述了~

也可以用这个方法解决冲突:Git——如何解决 Git 中的合并冲突? - 知乎 (zhihu.com)

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 2
    评论
评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值