天行健,君子以自强不息;地势坤,君子以厚德载物。
每个人都有惰性,但不断学习是好好生活的根本,共勉!
文章均为学习整理笔记,分享记录为主,如有错误请指正,共同学习进步。
文章目录
- 一、常规化Git命令操作报错的场景
- 1. 报错
- 2. 分析
- 3. 解决
- 3.1 查看.git
- 3.2 删除.git
- 3.3 重新init
- 二、Gitlab CD/CD作业Job报错的场景
- 1. 报错
- 2. 分析
- 3. 解决
- 3.1 配置文件位置
- 3.2 添加clone_url参数
- 三、拓展
该报错暂时只遇到两种情况,以下针对这两种情况进行描述、分析与解决
一、常规化Git命令操作报错的场景
也就是正常在黑窗口使用git init或git clone命令时,出现该报错
1. 报错
常规使用git命令(如Git bash here窗口)报错如下
Renitialized existing Git repositoy in D:/libai/project/gitab-cicd-test/.git/
2. 分析
报错原因是在目录位置已经有git仓库了,即已经有.git文件,
如本报错位置D:/libai/project/gitab-cicd-test/.git/中已经有仓库文件.git
故再次执行git init或git clone就会报错
3. 解决
解决方法就是将.git删除后重新初始化即可
3.1 查看.git
ls -a
3.2 删除.git
rm -rf .git
如果.git文件不在当前目录下,以上命令需加.git所在目录
3.3 重新init
然后重新init初始化即可
git init
二、Gitlab CD/CD作业Job报错的场景
在执行Gitlab CD/CD自动化流程作业时失败,job终端窗口出现该报错
1. 报错
在job终端窗口中报错如下
2. 分析
和上面第一种情况可能略有不同,虽然包含第一种情况的内容,但是在项目中已存在.git仓库是正常的,这里主要还是unable to access "http://xxxxxxx"的问题
原因是在runner执行任务时会拉取gitlab上的代码,使用的是clone命令,而默认的clone地址的端口是80,如果我们的gitlab访问端口做过映射,那么这里runner去clone默认端口80就会失败
3. 解决
找到runner的配置文件config.toml并在其中添加参数clone_url,参数的值为访问gitlab的ip+端口号,如下
3.1 配置文件位置
请根据你自己配置的runner的位置找到其配置文件config.toml
正常应该在/etc/gitlab-runner/config.toml
如果做了映射可以直接修改映射地址的config.toml
我的映射位置为/data/gitlab-runner/config/config.toml
3.2 添加clone_url参数
在配置文件中添加clone_url参数
vim /data/gitlab-runner/config/config.toml
重新开始该job任务,顺利执行,如下,代码仓库拉取代码成功
三、拓展
针对第二种场景报错可参考以下文章进行多种方式解决,仅供参考
Gitlab Runner执行CI/CD时报错:fatal: unable to access ‘http://gitlab-xxxxxxxxxxxxx/gitlab-instance-xxxxxxx
感谢阅读,祝君暴富!