Git之-Gitlab的使用

Gitlab的使用

ssh -T -p 55725 [email protected]

注意以上这条 ssh 命令测试通过,未必代表就能 git clone 代码,git clone 代码需要执行命令的账户有写权限,如果是普通用户用 sudo git clone 那么 git 就会使用的 root 账号的 Private Key。

1.登录

管理员会为使用者开通账号并设置权限。

2.使用者在客户端生成ssh key

参考文章: http://www.jianshu.com/p/142b3dc8ae15

    ssh-keygen -t rsa -C "[email protected]"

3.将公钥的内容copy到gitlab用户设置里面的“SSH Keys”

Windows:  clip < ~/.ssh/id_rsa.pub
Mac:  pbcopy < ~/.ssh/id_rsa.pub
GNU/Linux (requires xclip):  xclip -sel clip < ~/.ssh/id_rsa.pub

4.测试ssh连接

#标准测试代码:ssh -T [email protected]
ssh -T -p 55725 [email protected]  #修改过端口号的测试代码

如果连接成功的话,会出现以下信息:

    Welcome to GitLab, huangdc!

说明:实际上执行这条ssh命令,所使用的远程服务器的用户是git,这个用户是在安装gitlab的时候生成的,所有使用gitlab服务器的ssh客户端,都是使用git这个用户。在这里的用户“huangdc”是通过gitlab创建的,是用于gitlab的权限管理,也用作标识提交代码的开发者信息,不要跟ssh的用户混淆了。

如何使用多个SSH公钥(自己电脑在使用多个代码仓库)

原理其实是:因为每个仓库都需要 ssh 连接,而 ssh 命令默认是使用 .ssh 目录下面的私钥去连接代码仓库,所以我们可以在 .ssh/config 目录里面针对不同的仓库域名重定义它的私钥。

例子如下:
编辑文件: vim /Users/david/.ssh/config

Host            gitlab.domain.com    
IdentityFile    /Users/david/.ssh/id_rsa

命令行环境下初始化项目

首先在 gitlab 上面创建一个空的代码仓库,得到仓库地址如下:

ssh://[email protected]:55725/huangdc/test.git

在本地初始化仓库、提交代码、推送到远程 master 分支。

    git clone ssh://[email protected]:55725/huangdc/test.git  
    cd test  
    touch README.md
    git add README.md
    git commit -m "add README"
    git push -u origin master

命令行环境下迁移旧的项目

1.首先在 gitlab 上面创建一个空的代码仓库,得到仓库地址如下:

    #注意:已存在代码的旧项目只能推送到空的远程代码仓库
    ssh://[email protected]:55725/dev/memberApi.git    

2.本地初始化项目、关联远程仓库、推送到远程仓库

 cd /Users/david/work_www/memberApi
 git init
 git remote add origin ssh://[email protected]:55725/dev/memberApi.git
 git push -u origin master

SourceTree的安装和打开

  1. 官网下载链接:https://www.sourcetreeapp.com/
  2. 打开SourceTree之后,需要登录Atlassian账号来激活SourceTree。可以使用Google账号直接关联登录。
  3. 登录后还需要一些设置,以最简单的方式跳过就行。

Git Flow

http://flc.ren/2015/12/381.html

你可能感兴趣的:(Git之-Gitlab的使用)