====================================================================================================

GITlab环境部署

                                   

角色 IP 内存
gitlab01 192.168.200.112 4G
git-client 192.168.200.113 1G

关闭防火墙和selinux

[root@localhost ~]# hostname gitlab01
[root@localhost ~]# bash

[root@gitlab01 ~]# systemctl stop firewalld
[root@gitlab01 ~]# iptables -F
[root@gitlab01 ~]# setenforce 0

安装依赖包并设置开机自启

[root@gitlab01 ~]# yum install curl openssh-server openssh-client postfix cronie policycoreutils-python -y

[root@gitlab01 ~]# systemctl start postfix
[root@gitlab01 ~]# systemctl enable postfix

上传并解压gitlab源码包
[root@gitlab01 ~]# ls
gitlab-ce-11.11.3-ce.0.el7.x86_64.rpm

[root@gitlab01 ~]# rpm -ivh gitlab-ce-11.11.3-ce.0.el7.x86_64.rpm

_______ __ __ __

/ ____(_) /_/ / ____ _/ /_
/ / __/ / __/ / / __ `/ __ \
/ /_/ / / /_/ /___/ /_/ / /_/ /
\____/_/\__/_____/\__,_/_.___/

Thank you for installing GitLab!
GitLab was unable to detect a valid hostname for your instance.
Please configure a URL for your GitLab instance by setting `external_url`
configuration in /etc/gitlab/gitlab.rb file.

修改配置文件/etc/gitlab/gitlab.rb 生产环境可以跟据需求修改

[root@gitlab01 ~]# vim /etc/gitlab/gitlab.rb

修改13行:   external_url 'http://192.168.200.112'

重新加载配置文件

[root@gitlab01 ~]# gitlab-ctl reconfigure

[root@gitlab01 ~]# gitlab-ctl restart

[root@gitlab01 ~]# netstat -lnpt | grep 80
tcp 0 0 0.0.0.0:80 0.0.0.0:* LISTEN 13077/nginx: master
tcp 0 0 0.0.0.0:8060 0.0.0.0:* LISTEN 13077/nginx: master

测试:浏览器输入192.168.200.112进入网站

  • Private 私有项目,只有自己或者项目组内的人才能访问
  • Internal 所有登录的用户都能访问
  • Public 公开的,任何人都能访问

                                                   

 113客户端操作:

[root@svn ~]# hostname git-client
[root@svn ~]# bash
[root@git-client ~]# systemctl stop firewalld
[root@git-client ~]# iptables -F
[root@git-client ~]# setenforce 0

[root@git-client ~]# rz

[root@git-client ~]# ls
git-2.22.0.tar.gz 

[root@git-client ~]#yum install curl-devel expat-devel gettext-devel openssl-devel zlib-devel autoconf gcc gcc-c++ make -y

[root@git-client ~]# tar xf git-2.22.0.tar.gz -C /usr/src

[root@git-client ~]# cd /usr/src/git-2.22.0/
[root@git-client git-2.22.0]# make configure

[root@git-client git-2.22.0]# ./configure --prefix=/usr/local/git && make && make install

[root@git-client git-2.22.0]# ln -sf /usr/local/git/bin/git /usr/bin

[root@git-client git-2.22.0]# git --version
git version 2.22.0
[root@git-client git-2.22.0]# git config --global user.name "crushlinux"
[root@git-client git-2.22.0]# git config --global user.email "crushlinux@163.com"
[root@git-client git-2.22.0]# git config --global color.ui true
[root@git-client git-2.22.0]# git config --list

user.name=crushlinux
user.email=crushlinux@.com
color.ui=true

将112中gitlab的代码进行克隆到113gitlab上:

[root@gitclient ~]# git clone http://192.168.200.111/root/svn-git.git
正克隆到 'svn-git'...
remote: Enumerating objects: 3, done.
remote: Counting objects: 100% (3/3), done.
remote: Total 3 (delta 0), reused 0 (delta 0)
展开对象中: 100% (3/3), 完成.

[root@gitclient ~]# ls
 svn-git 
git-2.22.0.tar.gz
[root@gitclient git_data]# cd
[root@gitclient ~]# cd svn-git/
[root@gitclient svn-git]# ls
README.md
[root@gitclient svn-git]# cat README.md
svn git file [root@gitclient svn-git]#

===================================================================================================

新项目推送到gitlab实践

gitlab前面已经搭建好了,如果我们想用把代码上传到gitlab仓库上的话,先要新建一个项目仓库。然后本地安装git环境,就可以提交了。

新建一个新项目仓库

 新建一个本地文件夹,cd进去,然后 init建仓

[root@jenkins ~]# cd git_data/
[root@jenkins git_data]# git init
已初始化空的 Git 仓库于 /root/git_data/.git/
[root@jenkins git_data]# pwd
/root/git_data

新建项目文件名
[root@jenkins git_data]# vim one.py

#这是一个pyhton开发的文件代码
#:wq保存退出
print('hello world!')

[root@jenkins git_data]# ls
one.py

提交代码到本地仓库git add * (*是提交当前文件夹下全部的,也可以指定提交一个文件如:one.py)
[root@jenkins git_data]# git add one.py

查看仓库状态 git status
[root@jenkins git_data]# git status
位于分支 master

尚无提交

要提交的变更:
(使用 "git rm --cached <文件>..." 以取消暂存)

新文件: one.py

代码提交到缓存区 git commit -m "描述"

[root@jenkins git_data]# git commit -m '这是python代码' one.py
[master(根提交) 0a28aca] 这是python代码
1 file changed, 4 insertions(+)
create mode 100644 one.py

提交到远程仓库
[root@jenkins git_data]# git remote add origin http://192.168.200.111/root/python.git

最后一步push推送过去,push的时候,会让你输入账号和密码,这里的用户名和密码就是gitlab上注册的用户了
[root@jenkins git_data]# git push -u origin master
Username for 'http://192.168.200.111': root
Password for 'http://root@192.168.200.111':
remote: HTTP Basic: Access denied
fatal: 'http://192.168.200.111/root/python.git/' 鉴权失败
[root@jenkins git_data]# git push -u origin master
Username for 'http://192.168.200.111': root
Password for 'http://root@192.168.200.111':
枚举对象: 3, 完成.
对象计数中: 100% (3/3), 完成.
压缩对象中: 100% (2/2), 完成.
写入对象中: 100% (3/3), 304 bytes | 304.00 KiB/s, 完成.
总共 3 (差异 0),复用 0 (差异 0)
To http://192.168.200.111/root/python.git
* [new branch] master -> master
分支 'master' 设置为跟踪来自 'origin' 的远程分支 'master'。

gitlab查看推送结果

GITlab安装、使用及新项目推送到gitlab的更多相关文章

  1. git使用:本地项目推送到gitlab

    背景:目前公司用gitlab管理我们的项目,经常遇到的问题是,我会在其他已有项目上直接进行修改,然后用于新项目的自动化测试,但是本地推送到gitlab的时候每次都要重新查询一遍怎么操作,特意写下这篇文 ...

  2. 将本地项目推送至gitee或者github

    将本地项目推送到Git github上的版本和本地版本冲突的解决方法 初始化项目时,在git中新建项目. 在Github中创建了一个Repository之后,会给你列出如何将自己本地项目Push到Gi ...

  3. 如何将git本地创建的项目推送到github仓库

    除了集中式的版本控制系统CVS和SVN外,还有目前世界上最先进的分布式版本控制系统Git,它的创始人是创建了linux的大神 - linus.GitHub网站与2008年开始服役,为开源项目免费提供G ...

  4. 使用tortoise git将一个现有项目推送到远程仓库

    一.安装文件: 1.git https://git-scm.com/downloads 2.tortoise git https://tortoisegit.org/download/ 二.将一个现有 ...

  5. 如何将本地项目推送到码云仓库或者GitHub仓库

    将本地项目推送到码云仓库. 前提: git 和码云   1.在码云上先创建一个仓库. 2.在要被上传的项目的目录右键, 选择 Git Bash Here. 3.在窗口输入命令: git init 这时 ...

  6. Django项目: 项目环境搭建 ---- 三、在码云平台创建项目&推送到码云上

    三.在码云平台创建项目 git服务平台: 主要使用github(最主流) 国内访问速度慢 托管私有项目收费 国内一般使用码云gitee 国内访问速度快 托管私有项目免费(限制开发人数) 公司中使用gi ...

  7. 如何将本地项目推送到Github

    如何将本地项目推送到Github Tip:在本地要安装好Git,官网:https://git-scm.com/ 一个学习Git的好地方:https://try.github.io/ 在线闯关实战,边练 ...

  8. 将本地的项目推送到github上

    好像还是不能用git在本地直接建一个repository,然后推送到github,这是把本地项目推送到github上已经建好的裤 …or create a new repository on the ...

  9. TortoiseGit学习系列之TortoiseGit基本操作将提交到本地的项目推送到在线仓库(图文详解)

    前面博客 TortoiseGit学习系列之TortoiseGit基本操作克隆项目(图文详解) TortoiseGit学习系列之TortoiseGit基本操作修改提交项目(图文详解) TortoiseG ...

随机推荐

  1. js获取自定义data属性

    <!DOCTYPE html> <html> <head lang="en"> <meta charset="UTF-8&quo ...

  2. LED Decorative Light Supplier - LED Neon Application: 5 Advantages

    In the past 100 years, lighting has gone a long way. LED decorative lighting is now designed to meet ...

  3. Form表单利用Jquery Validate验证以及ajax提交

    #表单利用Jquery验证验证以及ajax提交 概述>详细讲解表单利用Jquery >验证验证以及ajax提交的过程,以及Validate的自定义提示语,非空判断,输入字段的远程ajax验 ...

  4. SSH多表操作入门

    这个系统写到这里,所涉及到的都是单表的操作,增删改查,现在功能需要完善,涉及到多表操作,开始是毫无头绪,书上的代码也没有现成的可以借鉴,想来就从最简单的开始.问题出现了很多,不过最后在龙哥的提示下还是 ...

  5. Zenject与UniRx结合实现跨线程通信Signal

    修改Zenject下ProfileBlock.cs源码, 取消有关UnityEngine.Profiling.Profiler的代码. 然后使用Zenject的Signal: // 定义Signal ...

  6. 【转】C# Application.DoEvent()的作用

    Application.DoEvents()的作用:处理所有的当前在消息队列中的Windows消息. private void button1_Click(object sender, EventAr ...

  7. C++-1019-Number Sequence

    题意: 求数字112123123412345123456123456712345678123456789123456789101234567891011123456789101112123456789 ...

  8. ubuntu---yolo报错darknet: ./src/cuda.c:36: check_error: Assertion `0' failed.

    装好darknet后,直接测试的时候,报错: darknet: ./src/cuda.c:36: check_error: Assertion `0' failed.解决办法是打开yolov3.cfg ...

  9. testng实现代码和数据分层

    todo: 参考: https://www.cnblogs.com/znicy/p/6534893.html

  10. IE的css hack

    #element { color:orange; } #element { *color: white; } /* IE6+7, doesn’t work in IE8/9 as IE7 */ #el ...