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基本配置和使用的主要内容,如果未能解决你的问题,请参考以下文章