之前一直用gitSSH方式下载代码,唯一的缺点可能就是需要建立SSH秘钥,需要额外生成一个密钥,然后在下载和提交代码的时候都需要输入秘钥,才能操作。

时间长了可能就忘了密码,今天在做项目提交的时候就出现了这种情况,密码怎么试都不对,于是弃用了SSH方式,改用了HTTP的方式。

1.从远程服务器download代码

首先需要从gitlab上获取项目所在地址
在这里插入图片描述
获取HTTP地址后,使用git clone命令,不同的是你需要在IP地址前填上用户名:密码,然后在加上@即可,比如你是zhangsan,密码123,那么就应该是zhangsan:123@ip,这种形式,在后续的所有操作都可以免输入密码。

 git clone http://chenqingkun:dynarose2020@192.168.1.96/ubi/package.git

2. 对比服务器和开发环境的代码

执行git clone之后,需要切换到当前项目文件根目录下,一般是cd xxx,按tab会自动提示。

切换到跟文件后,默认当前为master主干,如果你有权限操作master,那么你可以直接往master提交代码,这种不需要提交merge请求。

如果很多人共同开发一个项目,那么一般你是不会有操作master的权限,所以你需要创建一个新的分支,并给新的分支命名

git checkout -b "myname"

然后可以将你的workspace中的代码和刚拉下来的代码进行对比提交。我目前是使用compare进行对比,将代码同步到分支中,对比之后执行git status就能看到有哪些文件是存在差异的。红色的问价,表示你修改过的文件。
在这里插入图片描述

3. 将代码添加到分支上

执行git add将修改的代码添加到分支,准确的说这里还不是真正的分支,而是中间的一个缓冲区,只有真正执行git commit的时候才会真正添加到分支上(我这里是master).
在这里插入图片描述
这时再查看一下git status,红色的文件就没有,会提示你执行commit操作,提交代码。
在这里插入图片描述

4. 提交代码

提交代码的时候,如果规范的话,一般是这种格式

git commit -m "username:操作说明"

比如这种:

git commit -m "chenqingkun:modify bug-001, bug-002, bug-003"

表明用户chenqingkun提交了一次代码,代码是修改操作,修复了一些BUG。我记得之前的公司如果在jira上创建了idbug-001的BUG单,那么你提交后,会同步到该jira的任务单下,即在bug-001的comment中会有你的提交记录,这样能更好的同步任务状态。

5. 将代码push到主干/分支

之前使用ssh的时候,直接使用

git push origin master/分支名

而如果使用了http就不一样了,先查看一下当前的分支

git branch

可以看到就一个master
在这里插入图片描述
如果你不是直接操作master那么需要创建分支的远程配置

git remote add origin test http://192.168.1.96/ubi/electronclient.git

然后再执行下面的命令即可

git push test master:jenkinsapi

如果你是直接往master上提交的代码,那么你就不需要创建远程配置,直接直接push操作即可

git push origin master:jenkinsapi

在这里插入图片描述
打开gitlab会发现,确实有新提交的代码
在这里插入图片描述

Logo

旨在为数千万中国开发者提供一个无缝且高效的云端环境,以支持学习、使用和贡献开源项目。

更多推荐