使用git或TortoiseGit推送项目至gitlab

1、Wins安装Git+Trtoisegit工具实现版本克隆与推送php

  Git:         https://git-scm.com/html

  Tortoisegit: https://tortoisegit.org/download/        下载程序和语言包进行汉化操做linux

 

2、使用git客户端对项目进行克隆与推送操做git

2.1.  gitlab 建立一个帐户并对该帐户受权相应的项目权限(我这里建立帐号为xliang,过程省略...)web

2.2.  安装git ,默认配置安装apache

 

2.3.  Git上传下载项目ubuntu

    建立一个目录,用于存储仓库(项目)【也能够右击建立版本库】。右击目录git bash herebash

 

    先进行git global设置服务器

    $ git config --global user.name "xliang"ssh

    $ git config --global user.email "11922064@qq.com"

 

    生成git客户端的秘钥

    $ ssh-keygen

 

    进入到c:/users/用户/.ssh/目录,编辑id_rsa.pub公钥,复制公钥信息至gitlab

    (与TortoiseGit的配置同样,我分配的帐号是xliang,登陆gitlab,设置-->秘钥-->粘贴公钥信息保存)

    克隆和推送的URL有两种方式:ssh和http

    Git上传秘钥只能用于ssh方式传输,若是用http链接传输则提示输入该用户对应gitlab的帐号和密码

 

    举例:用http和ssh克隆项目:

    用http传输,输入gitlab的帐号和密码【我分配帐户是xliang】

 

    用ssh传输,用咱们生成的公钥和私钥匹配

 

 

3、用git + tortoisdgit克隆和推送项目

     优势:不用敲命令,窗口化操做

3.1  安装git,tortoisdgit

3.2  tortoisdgit生成秘钥

    在开始菜单中找到Puttygen,用来生成ppk密钥,耗时好久

 

    远程服务配置

    打开Gitlab远程服务端网页http://xxxx.com,用本身的Git帐号登陆(我分配的帐户是xliang)

    在我的设置页面添加上一步生成sshKey公钥,以下图:

    为何要上传2次秘钥,git的秘钥和tortoisegit的秘钥【由于这是两个不一样的工具,秘钥是分开的,TortoiseGit只是依赖于git客户端,git是命令行工具,tortoisegit是窗口化工具很方便】

 

    用tortoisegit上传下载项目

 

    建立几个文件,而后用tortoisegit上传,下载测试

 

 

    添加URL,秘钥,点击  添加覆盖

 

 

    推送有两个步骤:

  1. 提交,日志信息需填写,变动列表要选择
  2. 推送

 

     点击,推送

 

     成功后,关闭窗口,到gitlab看看更新的文件

 

 

 

4、 linux服务器安装git 克隆版本,完成版本的迭代升级操做

案例:web工做目录为/var/www/auto.com,咱们能够自定目录/home/auto为git仓库

版本升级:

方法1:ln –s /home/auto /var/www/auto.com 

     --我在生产环境上作软连接至web站点的目录,好像apache2没法读取,具体缘由还没分析,最后用方法2实现,采用rsync+inotify自动同步版本

     把仓库软连接至web工做目录,每次升级clone最新版本便可

     [由于gitlab有版本迭代性,若是版本回退,直接在服务器上clong上一个版本下来便可]

方法2:clone最新版本,重命名/var/www/auto.com作备份,而后cp仓库最新版本至web工做目录

 

需求:

     使用gitlab控制版本发布

     各服务器经过git 去拉去版本

     [服务上的仓库能够软链接至web的工做目录]

     [升级版本的时候,直接去拉版本便可]

服务器A,B,C,D...

    一、 在gitlab上建立帐号,每一个帐号对应一个服务器,把帐号添加进对应项目里面

    二、 服务器上生成公钥,用对应的帐号登录gitlab,而后添加公钥

    三、 在服务器上建立一个目录(能够直接软连接到web工做目录)

    四、 使用git 命令拉去版本

-------------------------------------->

 

ubuntu 系统示例:

一、安装git

# apt-get install git

二、服务器配置秘钥:

# ssh-keygen -t rsa

# pwd

/root/.ssh

# cat id_rsa.pub       把公钥复制添加到gitlab

三、 用gitlab建立分配的帐号登录,用户设置-->SSH密钥-添加公钥

四、 建立一个目录做于仓库,也能够软连接至服务器web的工做目录

# mkdir antu

# cd antu

# git clone ssh://git@gitlab.qiaokexing.com/cl_test/cl_test.git

Cloning into 'cl_test'...

remote: Enumerating objects: 9, done.

remote: Counting objects: 100% (9/9), done.

remote: Compressing objects: 100% (6/6), done.

remote: Total 9 (delta 1), reused 0 (delta 0)

Unpacking objects: 100% (9/9), done.

Checking connectivity... done.

# ls               ---查看推送下来的版本

cl_test

# ls cl_test/      ---版本已经推送下来了

index.html  read.txt  test2.txt  test3.txt  test4.txt  test.php

相关文章
相关标签/搜索