如何从gitlab克隆项目代码|青训营笔记

77 阅读2分钟

这是我参与「第五届青训营 」伴学笔记创作活动的第 5 天

拉取项目

使用ssh config配置文件来管理ssh连接

在电脑上.ssh文件夹中的config文件添加以下配置,没有就创建一个名为config的文件。

   Host hostName的别名。
   HostName 是目标主机的主机名,也就是平时我们使用ssh后面跟的地址名称。
   User 指定的登陆用户名。
   Port 指定的端口号。

配置本地用户名和邮箱

查看当前的本地用户名和邮箱

git config user.name

git config user.email

重新配置本地的用户名和邮箱,会覆盖掉以前的

git config --global user.name "用户名"

git config --global user.email "邮箱地址"

查看配置是否成功

git config --global --list

公钥

生成公钥 ssh-keygen -t rsa -C "邮箱地址"

查看公钥 cat ~/.ssh/id_rsa.pub

上传公钥到 gitlab

image-20230204160052848.png

克隆代码到本地

git clone 项目链接

约定式提交

约定式提交 (conventionalcommits.org)

代码上传

三种分支代表啥含义?

  • prod分支: 基本没有问题的代码,是feat特性分支经过在dev上的多次测试后的没问题的代码。
  • dev分支:大家手上各个feat特性分支在这里测试,都是从feat分支合入的。
  • feat分支:针对单独一个需求建立的,完成这个需求后被合入prod,结束。

创建fate分支

git check -b feat/story-xxx-xxx

git add. 添加全部文件到暂存区

git commit -m "feat:简述本次提交" 提交到暂存区

gti push origin feat分支名称


其他一些git命令

git status 查看状态

git log 查看提交的状态

git reset 将尚没有commite之前加入到暂存区的文件重新拉回

文件状态:

  • 没有被add过的文件叫untracked
  • add之后文件处于staged状态等待commite
  • commit之后文件处于unmodified这里之所以是modified是因为文件会跟仓库中的文件对比
  • 当unmodified的文件被修改则会变为modified状态
  • modified之后的文件add之后将继续变为staged状态
  • unmodifed的文件还有一种可能是已经不再需要了,那么可以remove它不再追踪变为untracked状态

分支

git checkout -b 分支名 以参考分支为模板创建新分支

git checkout 分支名 切换到指定分支

git branch 查看本地所有分支

git merge 分支名 合并分支的变更

手动解决冲突

git fetch 监测远程仓库(查看分支)

git remote -v 查看远程仓库地址

image-20221002183331806.png