gitlab的使用

本文详细介绍了如何在GitLab环境中安装、配置SSH、从GitLab拉取和推送代码、处理分支合并与冲突,以及常用git命令的操作指南。
摘要由CSDN通过智能技术生成

一、gitlab的安装

Git工具官网:Git - Downloads

之后一直点击下一步,等待安装完成

二、配置SSH

1、配置用户名和邮箱

①在自己喜欢的位置创建一个文件夹

②鼠标右击选择,git bash here

③配置提交人姓名、邮箱

git config --global user.name(自己的git命名)
git config --global user.email(自己的邮箱)

2、配置SSH

①生成密钥

ssh-keygen -t rsa -C "自己的邮箱地址"

②进入密钥目录查看密钥

cd ~/.ssh

③查看密钥,并复制密钥到Gitlab上

cat id_rsa.pub

④复制公钥:复制公钥到gitlab上

三、从gitlab上拉取项目

1、进入gitlab中,clone自己需要的SSH

2、在自己想要的位置建立文件夹,点击鼠标右键,git bash here,输入git clone + SSH

git clone + SSH

若克隆分支,输入git clone -b 分支名+ SSH

git clone -b 分支名 SSH

四、上传更新代码到gitlab

1、git status                     查看本地仓库已变更的文件(红色的都是)

2、git add -A                    将新增、修改、删除的文件,全部提交到暂存区

3、git commit -a -m "注释"

4、git push

五、上传代码出错

1、git pull                                                                                  拉取代码

2、git log --all --graph                                                               查看所有分支上传情况

                                                                            (找到自己上传的文件,下一个就是最新上传的)

3、git reset --hard + 最新上传版本号                                       回退到该版本

4、git push -f                                                                            删除已push的错误代码

5、git log --all --graph                                                               查看代码是否删除

六、提交分支到gitlab

从gitlab中clone HTTP的地址

1、首先建立一个新的文件夹,点击进入文件夹内,右键选择git bash here

输入git clone + HTTP

git clone HTTP

项目拉取后,该文件夹下会出现一个新的文件夹,cd 到该文件下

cd 文件名

注意:我们这里所在分支是main,如果想要上传到别的分支上,需要切换分支git checkout+分支名

git checkout 分支名

2、输入git add ./

git add ./

. 表示上传所有代码

可以选择上传自己需要的代码

git add *.cpp *.ui

3、git commit  -m "注释"

git commit -m "第一版"

4、git push

5、刷新gitlab页面,上传成功

七、回退到某一版本

1、git clone + HTTP

2、git branch -a                                   查看所有分支

3、git checkout +分支名                   (切换到自己需要修改的分支)

4、git log                                            (查看版本号) 

5、git reset --hard + 版本号             (回退到该版本)

git revert + 版本号                           (撤销该版本的提交,其余保留)

git cherry-pick + 版本号                  (取消对该版本的撤销)

6、git push -f                                    (撤销上一次上传)

git reset --hard HEAD^                   (回退到上一版本)

git reset --hard HERD^^                   (回退到上上版本)

git reset --hard HEAD ~100             (回退到上100版本)

git fsck --lost-found                           回退

八、合并不同分支

1、git clone + HTTP

2、git branch -a                              (查看所有分支)

3、git checkout 分支名                   (切换到自己的分支)

4、git checkout 主分支                   (切换到主分支)

5、git pull                                        (拉取主分支)

6、git checkout 分支名                   (切换自己的分支)

7、git merge 主分支                       (合并分支)

如果出现冲突

git status                                        (查看哪些文件出现冲突)

打开自己的文件,将需要的保留,其余的都删除

<<<<<HEAD
自己分支的内容
=========
主分支内容
>>>>>主分支名

将<<<<<HEAD,======,>>>>>主分支名  和自己不需要的代码都删除

git add 冲突文件

8、git commit -m  "注释"

9、git push                                         (完成合并)

九、切换分支

十、gitlab的一些命令

1、git add + 文件名                            上传本地文件

2、git branch                                     查看当前分支名

git branch -a                               列出本地分支与远程分支

git branch -d 分支名                   删除分支          

git branch -D 分支名                  删除本地分支

3、git checkout                                切换分支

git checkout 分支名                   切换到该分支

git checkout -b 分支名               创建并切换到该分支

git checkout -B 分支名              重置分支(删除已存在的分支并重新创建,分支不存在也不会报错)

4、git checkout .                               撤销本地所有修改的,没有提交的内容,都回到原来的状态

git checkout head 文件名 文件名                     撤销1~2个文件的修改

git checkout head *.cpp                                   撤销所有cpp文件的修改

git checkout head                                            撤销对所有文件的修改

5、git commit -m "注释"                    将暂存区里的改动提交到本地版本库

git commit -m "注释" -a                        提交所有修改

git commit --amend -m "注释1"            修改上一次提交的注释

6、git diff + 文件名                             查看文件修改了什么内容

7、git init                                            初始化

8、git log                                            查看提交的历史

git log -1             查看最近1次提交记录

git log -2             查看最近2次提交记录

git log -p             查看所有提交记录的变动信息

git log -p <commit id>           查看commit id及其以前的记录

git log --name-only                查看变动的文件名,查看哪些文件发生了变化

git log --name-status             查看文件变动状态,显示增加、修改等对应的字母标识

git log --stat                   显示哪个文件发生了改变,以及对应的新增行数、减少行数和变动文件数

git log --graph               提交记录左侧显示虚线作为分割区域

git log --all --graph        显示所有的分支上传情况

9、git merge 分支名                                合并某分支到当前分支

10、git pull (--rebase)                             从远端拉取代码,更新我们的仓库

git pull = git fetch + git merge
git pull --rebase = git fetch + git rebase

git pull = git fetch + git merge

git fetch 是将远程库的最新内容拉取到本地库,用户在检查了以后决定是否合并到工作区中

git merge 是将本地的两个分支合并,如果在分支A中执行git merge B,那就是将分支B中的代码合并到分支A中

git pull 是将远程主机的最新内容拉取到本地后直接合并到工作区中,这样可能会产生冲突,需要手动解决

git pull --rebase = git fetch + git rebase

git rebase 是将提交到某一分支上的所有修改都移至另一分支上,如果在B分支上使用git rebase A就是将B分支上的修改都变基(移到)A分支上

git pull --rebase 是将远程主机的最新内容拉取到本地库后直接变基到工作区中

11、git push (-u)                                  提交到远程仓库

12、git push -f                                     删除已经push的内容

13、git reflog             查看所有分支的所有操作记录,包括已经被删除的commit记录和reset操作

14、get remote                                    查看远程库的信息,默认为origin

git remote -v                                          显示更详细的信息

15、git reset --hard + 版本号              回退到某一版本

16、git show commit_id                    查看某一版本修改了什么内容

17、git stash                                       暂存上一次修改,准备切换到其他的分支

git stash pop                             还原上一次的修改,将暂存的修改加入到新的分支

18、git status                                     文件在暂存区的状态

  • 25
    点赞
  • 27
    收藏
    觉得还不错? 一键收藏
  • 1
    评论
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值