gitlab基本配置和使用

Posted Ala_ddin

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了gitlab基本配置和使用相关的知识,希望对你有一定的参考价值。

一、gitlab的SSH配置

1. 下载安装git

官网下载git软件:https://git-scm.com/downloads
自定义安装路径时注意路径不能还有中文和空格
开始菜单>git>git bash,“Your Name”和“email@example.com”分别是自己在gitlab上注册的用户名和邮箱:

git config --global user.name "Your name"
git config --global user.email "emainl@example.com"
2.生成SSH keys

1)在bash窗口输入(右键,git bash)

ssh-keygen -t rsa -C "your.email@example.com"

一直回车即可,如果是后续重复生成的话,会出现“Overwrite (y/n)?”,此时输入y即可,继续回车。

2)生成秘钥后,输入

cat ~/.ssh/id_rsa.pub | clip

“ | clip” 命令便是将id_rsa.pub文件内的秘钥复制到剪切板上。

3)在gitlab网页上
用户>settings>SSH Keys,复制填写到密钥的区域,点击add key按钮确认

二、fork自己的库

1.进入原库

在原库中点击fork,选择自己的路径即可

2. 项目管理

这是可以发现我们fork之后的库对我们而言是“maintainer”

3. 把自己fork的库clone到本地

1)随便建立一个文件,然后右键 git bash 进入git命令行
2)因为已经配置了SSH key,所以可以用SSH进行传输,将fork库的SSH复制下来

这时候要注意,黄色框里的就是库的路径,从这里也能判断,如果是你fork的,那么这里应该是自己设置的路径,如果是原库,那么这里应该是原库的路径。

3)git clone

git clone git@gitlab.com:chengqide/assignment.git

这里要注意当我们在克隆了仓库之后,我们要进入到下载的仓库才能对仓库进行操作,比如这里我们进入 assignment ,然后会显示我们进入了 main 分支。
这里也可以直接点击下载好的仓库文件,再右键 git bash

三、如何更新自己的fork库

1. 先对我们现在的fork库内的文件进行修改
2. 进行提交

提交命令如下

git add .
git commit -m "your commit reason"
git push origin main
3. 进入fork库查看

刷新后发现远程fork库内的内容已经被修改:

四、如何通过fork库发起原库更新请求

发起 merge request 即可

五、如何更新自己的fork库

gitlab免费版内的fork库是没办法实时对原库代码进行更新的,所以原库更改后可以通过pull或fetch merge 的方法进行更新,这里主要讲fetch merge:

1. 原库已经修改

这里我将原库的readme.md进行修改

2. 打开git bash

1)我们先查看我们跟那些库进行了链接:

git remote -v

2)发现我们这里只有本地的origin代理的fork库,所以我们要对原库进行链接:
(这里的newbase是我们起的原库的别名,后面是原库的SSHurl)

git remote add newbase git@gitlab.com:sp2022_emd/assignment.git

这里再查看就有四个了:

3)通过fetch对原库进行更新:

git fetch newbase main

这里看到newbase的main分支已经被更新了:

4)通过merge将更新的原库对fork库进行合并:

git merge newbase/main

这里发现,如果多个用户修改的文件或者文件修改有冲突,会报错:

查找冲突出现在哪里:

git diff

这里发现原库的内容更新时,要对我的fork库的内容进行“删除、修改”,所以会冲突询问:

然后我们进入冲突文件 “README.md”(这里最好不要用markdown打开,会有看不到的格式,txt打开即可,代码的话vscode等都行):

这是要注意,有三个红框。前两个红框之间的是fork库内的原本的内容,后两个红框之间的是我们merge更新的原库的内容,自己进行修改、删除,最后要把红框内的内容全部删除
然后进行git add . -> commit -> push 等操作,再merge时就可以了。

六、如何在原库分支进行上传

我们可以在原库建立分支,然后将自己的修改部分放在分支内部。

1. 在本地克隆原库

 git clone git@gitlab.com:sp2022_emd/assignment.git

然后进入原库的main主支,接着建立分支:

2. 建立分支

第一种方法可以先建立分支,然后进入:

git branch newbranch
git checkout newbranch

第二种方法可以直接新建分支并进入:

git checkout -b newbranch

可以通过git branch -a 查看分支情况:

git branch -a

这里可以看到我们已经进入了新建的分支内部:

3. 修改本地内容

然后我们将本地的README.md修改:

4. 上传到分支
5. 在远程库中查看

可以看到远程库中出现了新建的分支,然后所有者会进行合并或者删除修改操作:

以上是关于gitlab基本配置和使用的主要内容,如果未能解决你的问题,请参考以下文章

gitlab 权限说明

GitLab安装部署

GitLab

Gitlab代码管理仓库安装部署

Gitlab部署及汉化操作

安装gitlab并汉化