开发人员必备的Gitlab技能

前面咱们已经搭建好了Gitlab服务,也讲到了gitlab一些安全设置,但做为用户,该如何来使用gitlab呢?请看下文。git

一、绑定hosts,使用notepad打开C:\Windows\System32\drivers\etc\hosts,绑定gitlab服务器的IP地址,映射成域名,方便记忆并访问,如图1所示。github

192.168.59.250 gitlab.demo.comwindows


c7f5f2451dd74ffd861394f324904590

图1安全

完成上述hosts设置后,其实咱们就能够经过访问http://gitlab.demo.com来注册gitlab帐号了。注册帐号最好用公司邮箱,如公司给我分配的邮箱是 firefly@demo.com,我将使用该邮箱来注册gitlab帐号,而后由配置管理员对 firefly@demo.com 帐号分配相关仓库权限。服务器

管理员分配了相关组或者仓库权限后,此时咱们能够用本身的帐号登陆 http://gitlab.demo.com 查看相项目内容了。那是否是到此gitlab的操做就讲完了呢?固然不是,若是想将项目克隆到本地,并在本地修改项目文件,最后又提交到gitlab服务器,对于这种操做,咱们要借助Git和TortoiseGit。网络

二、安装Git以及GUI客户端TortoiseGit和中文语言包。Git下载页在Github上:https://github.com/git-for-windows/git/releasesssh

GUI Clients 选择TortoiseGit,对应下载连接以下:ide

https://download.tortoisegit.org/tgit/2.9.0.0/TortoiseGit-2.9.0.0-64bit.msigitlab

https://download.tortoisegit.org/tgit/2.9.0.0/TortoiseGit-LanguagePack-2.9.0.0-64bit-zh_CN.msiui

下载完成后,按一、二、3顺序完成安装,如图2所示,安装过程当中相关设置均按默认便可。

4090b412b40c43f9a3647a208f63df9c

图2

三、成功安装后,鼠标右键如图3所示。

1bbe6965435e49d4bc4d3656a0a7bbeb

图3

点击TortoiseGit --> Setttings,可设置语言为中文,点击“应用”,如图4所示。

f5443ff09e9847d3afd0b22b728c03eb

图4

而后,在“Icon Overlays“,选择Shell Extended,如图5,这样设置的目的是当git仓库中有文件发生变动时,文件图标状态也跟着变化,效果如图6所示。

a6ae0c99a5114ecfb6a54c67c417360d

图5

f79a0742679d4f01991c3fd08f45b806

图6

四、接下来再对Git作全局设置,如下命令用Git Bash完成,如图7所示。

a94bd699fb274a84a6c6980526657a93

图7

设置用户名和邮箱地址(注意用本身注册gitlab时的邮箱)

git config --global user.name "firefly"

git config --global user.email firefly@demo.com

将color.ui 设置为auto 可让命令的输出拥有更高的可读性。

git config --global color.ui auto

将credential.helper设置为store,能够存储用户以及密码,避免每次提交或拉取时要手动输入用户名和密码。

git config --global credential.helper store

上述git config命令将会在用户家目录下(Windows是C:\Users\xusers,Linux是~/.gitconfig)下生成.gitconfig文件,内容以下。

cat .gitconfig

[user]

name = firefly

email = firefly@demo.com

[credential]

helper = store

[color]

ui = auto

若是想再更改这些信息,能够直接编辑.gitconfig文件,如图8所示。这里设置的姓名和邮箱地址会用在Git 的提交日志中。因为在GitHub 上公开仓库时,这里的姓名和邮箱地址也会随着提交日志一同被公开,因此请不要使用不便公开的隐私信息。

d5bd9824be8342ef9892c7bb22cede33

图8

完成上述设置后,咱们就可使用HTTP方式操做gitlab的仓库了,先复制项目的HTTP的克隆地址,如图9所示。

6a753aa4459544c9a9d67120f7573e73

图9

使用TortoiseGit来clone仓库,如图10所示,选择“Git 克隆"。

d76a3ff52e3542aba36c09554a2f0074

图10

粘贴板会自动将要克隆的地址填入,如图11所示。

40de8f9ae9c2421eab30498af7e4cee0

图11

点击”肯定“,会提示输入用户名和密码,如图12所示。

d9817be3bc41403dbbdb0e3403302592

图12

密码输入正确后,将完成项目克隆到本地的操做,如图13所示。

e1117b66c85f4db9883c5d0f41efac41

图13

重要说明:若是在上述操做过程当中输错了用户名或密码,点击”肯定“时会提示用户名或密码不正确,但不会再弹出输入用户名密码的对话框,此时就获得”控制面板“-->”用户帐户"-->"凭据管理"-->"管理Windows凭据",删除对应的凭据便可,如图14所示。

99fda1a6-44e0-4821-9316-3a92ad9de938

图14

f897873910324445b2c3048b9192120f

图15

commit+push操做对应SVN的commit。由于Git的commit是先提交到本地仓库,而后再push到gitlab服务器。即git的提交修改操做均保存在本地,不须要连gitlab服务器也能够查看历史修改记录。而SVN不行,如图16所示。

6fd191bdd4d44ae38b79bcc6f73f03e5

图16

五、完成上述操做后,就已基本知足咱们平常工做需求了。但做为一名开发人员,若是不会SSH访问git仓库的话,下次要是被新入职客户端MM请教会不会就错失了告别单身的机会(哈哈),正所谓技多不压身。

使用ssh-keygen命令生成密钥文件,id_rsa文件是私钥,id_rsa.pub是公钥。

ssh-keygen -t rsa -C firefly@demo.com
使用上面命令,直接回车,完成密钥生成,如图17所示。

图17
复制id_rsa.pub文件中内容并添加到git帐户firefly@demo.com用户下,如图18所示。

图18
使用firefly帐户登陆网页版gitlab服务,在Settings --- SSH Keys中添加id_rsa.pub中的公开密钥,而后点击“Add key”,如图19所示。

图19

因为gitlab服务器ssh端口不是使用默认的22,而是6688,咱们还须要建立C:\Users\tgh\.ssh\config文件(若是有多台gitlab服务器,都可以在config文件中添加),如图20所示。

cat >>.ssh/config <<EOF

host gitlab.demo.com

hostname 192.168.59.250

port 6688

EOF

9307856397ac49ce83a18fa66f7982e1

图20

好啦,咱们可使用ssh方式来克隆项目了,如图21所示,先复制要克隆的项目地地址。

5948f588a2a046f5a188efbbec1788b7

图21

注意,使用ssh方式克隆项止,URL是以git@开头,如图22所示

c58686fa6801443f80c2b1757a2439e5

图22

点击”肯定“,如图23所示,我x,又报错啦,捂脸好尴尬。

263a216d8915430da9a9095cdcda3162

图23

可千万别被小小的报错给吓到,咱们只须要再设置一下TortoiseGit的网络,更改一下SSH客户端,如图24为修改前路径,图25为修改后路径,即咱们要用Git自带的SSH客户端来解决这个报错。

5961691e441a4a699025738bda5fe7d2

图24

b3912205e01b4973bcde1d1910681721

图25

完成设置后,咱们再来尝试克隆一下,如图26,图27所示,顺利完成。

0e660e5cbf3c40ac84dfd8562a31060f

图26

a05df00e000f462cb0c34d881bfbcb75

图27

碰到问题不回避,这样,咱们离大神和女神都更近了一步^_^,加油。

相关文章
相关标签/搜索