1、 Gitlab使用手册目录一 Gitlab账号/库申请流程31.1 Gitlab账号申请31.2 Gitlab库申请3二 Gitlab登录32.1 Gitlab 访问路径32.2 Gitlab登录页面3三 Git环境配置43.1创建公钥43.1.1 Linux环境43.1.2 Windows环境43.1.3 MacOS环境73.2 Gitlab SSH页面配置7四 Git操作命令84.1 Git本地仓库操作命令84.1.1 git init/git clone 初始化库84.1.2 git status 查看状态94.1.3 git add 添加文件94.1.4 git diff 对比文件94
2、.1.5 git commit 提交更新104.1.6 git rm 移除文件104.1.7 git mv 移动文件114.1.8 git log 查看提交历史114.1.9 git reset 撤销操作124.1.10 git branch 创建分支134.1.11 git merge 分支合并134.1.12 git conflict 解决冲突144.1.13 git tag 创建标签144.2 Git远程仓库关联操作命令154.2.1 git remote 查看远处仓库154.2.2 git remote show 查看远程仓库信息154.2.3 git remote add 添加远程仓
3、库154.2.4 git fetch 从远程仓库抓数据164.2.5 git pull 获取最新版本164.2.6 git push 推送数据到远程仓库164.2.7 git remote rename/rm远程仓库重命名/删除17一 Gitlab账号/库申请步骤1.1 Gitlab账号 使用邮箱前缀、邮箱密码访问即可。1.2 Gitlab库申请 邮件申请。(发邮件给zhaoweiz、cuixf1 ) 二 Gitlab登录2.1 Gitlab 访问路径URL: 2.2 Gitlab登录页面三 Git环境配置3.1创建公钥不一样操作系统创建公钥方法不一样。以下是三种操作系统举例。3.1.1 Li
4、nux环境$ssh-keygen /生成公钥$ cat /.ssh/id_rsa.pub /将公钥文件内容拷贝到Gitlab配置页面中。见3.2节。注意:Vim 文件复制粘贴可能会造成内容换行,造成公钥无效。3.1.2 Windows环境需要下载msysgit和tortoisegit用户端第一步,下载msysgit并安装。(基础上一路Next。因为我们还要安装tortoisegit,所以不需要选择“Windows explorer integration”。)URL: +installer+for+official+Git+for+Windows%22或企业共享目录:devshare工具共享常
5、见软件git第二步,下载tortoisegit并安装URL:或企业共享目录:devshare工具共享常见软件git第三步,在tortoisegit上配置msysgit路径(见下图)创建公钥方法(二者选一即可)(1)经过tortoiseGit方法生成公钥a) 从Windows开始菜单选择TortoiseGit,点击其下Puttygen工具,该工具用于生成Putty支持SSH密匙对。b) 点击Generate按钮,即生成公钥和私钥。将Public key(公匙)和Private key(私匙)全部保留到文档中,以免丢失。其中Private key是你TortoiseGit用来验证用户身份。说明:1
6、.生成key类型:SSH-2 RSA说明:1. 将生成Public key粘贴到GitLab站点“申请者帐号”里。配置方法见3.2节。(因为tortoisegit生成公钥粘贴到gitlab SSH Key中并不能够自动生成title,所以需要自己填写一个title)2. 保留”Save private key”到当地。(2)经过命令行方法生成公钥a) 点击开始,在搜索中输入cmd。b) $ssh-keygen /生成公钥c) 将生成Public key粘贴到GitLab站点“申请者帐号”里。配置方法见3.2节。 3.1.3 MacOS环境$ssh-keygen /生成公钥$ cat /.ssh
7、/id_rsa.pub /将公钥文件内容拷贝到Gitlab配置页面中。见3.2节。3.2 Gitlab SSH页面配置Gitlab “Add SSH Key”界面以下: 将3.1节创建公钥拷贝到”Key”方框中:四 Git操作命令4.1 Git当地仓库操作命令l git init/git clone 【初始化库】l git status 【查看状态】l git add 【添加文件】l git diff 【对比文件】l git commit 【提交更新】l git rm 【移除文件】l git mv 【移动文件】l git log 【查看提交历史】l git reset 【撤销操作】l git
8、branch 【创建分支】l git merge 【分支合并】l git conflict 【处理冲突】l git tag 【创建标签】4.1.1 git init/git clone 初始化库 初始化一个新库$ git init 从现有仓库克隆 $git clone URL4.1.2 git status 查看状态 若没有可跟踪文件,用git status命令,则会输出: 若编辑一个新文件hi.txt,保留退出。用git add命令跟踪文件后运行git status命令,则输出: 说明: 只要在“Changes to be committed”下面,就表示为已暂存状态。 若修改已经暂存状态文
9、件,保留退出后用git status命令,则会输出:说明:hi.txt 文件出现了两次!一次算未暂存,一次算已暂存。 需要将未暂存文件经过git add添加到已暂存。4.1.3 git add 添加文件 作用: 能够用它开始跟踪新文件; 把已经跟踪文件放到暂存区 合并时把有冲突文件标识为已处理状态。 4.1.4 git diff 对比文件 作用: 目前作哪些更新还没有暂存; 有哪些更新已经暂存起来准备好了下次提交。 说明: 有时候一下子暂存了全部更新过文件后,运行git_diff后却什么也没有。 原因是,git_diff仅显示还没有暂存起来改动,而不是这次工作和上次提交之间差异。 4.1.5
10、git commit 提交更新 在提交之前,一定要用git status确定还有哪些修改过或是新建文件还没有暂存起来。不然,这些没有暂存文件就不能将最新改变提交到版本库中。参数介绍:git commit m 使用-m 参数后跟提交说明方法,在一行命令中提交更新git commit a 自动把全部已经跟踪过文件暂存起来一并提交,跳过使用暂存区域提交更新4.1.6 git rm 移除文件 删除已提交某个文件,需要先用git rm命令从暂存区域中移除这个文件,然后再用git commit 命令提交。 4.1.7 git mv 移动文件 Git中重命名某个文件,仓库中存放元数据并不会表现出这是一次 更
11、名操作。 文件更名并查看目前状态: 运行git mv就相当于运行了下面三条命令: $mv test_from.txt test_to.txt $git rm test_from.txt $git add test_to.txt4.1.8 git log 查看提交历史 每次更新全部有一个SHA-1 校验和、作者名字和电子邮件地址、提交时间,最终缩进一个段落显示提交说明。常见查找历史日志选项: -p:项展开显示每次提交内容差异; -n(数字):仅显示最近n次更新。 在做代码审查,或要快速浏览其它协作者提交更新全部作了哪些改动时,就能够用这个选项。 4.1.9 git reset 撤销操作 取消已暂
12、存文件 若不小心将某个文件添加/删除到了暂存区域,能够用“git reset HEAD .”命令取消暂存。 修改最终一次提交 提交后发觉遗漏了部分文件,想要撤销刚才提交。若刚才提交完后没有做任何改动,能够使用amend选项重新提交。 取消工作目录中已经修改文件 若已经添加到暂存区域文件又进行了修改,但这些改动又认为是没有必需, 则能够用“git checkout - .” 恢复到修改前版本。 $vim hi.txt4.1.10 git branch 创建分支 创建一个test分支,然后将目录切换到test分支下面。 注意:test分支前“*”字符:表示目前所在分支。 git checkout
13、b 分支名 相当于: git branch 分支名 git checkout 分支名 4.1.11 git merge 分支合并 首先查看目前目录全部分支清单,然后切换到master分支目录下,最终将pro1分支内容合并到master上。4.1.12 git conflict 处理冲突 假如修改了两个待合并分支里同一个文件同一个部分,则会出现以下报错: 怎样编辑冲突: 首先查看目前目录下状态(git status),然后编辑冲突文件(vim test.txt),再将冲突文件置为处理状态(git add test.txt),最终将合并文件提交给(git commit m “注释”)。 冲突文件t
14、est.txt,打开后能够看到: pro1说明:= 隔开上半部分,是HEAD(即master分支)中内容,下半部分是在test分支中内容。 4.1.13 git tag 创建标签 列出全部标签 git tag 搜索标签 git tag l 标署名 创建标签 git tag a 标署名 m 注释 4.2 Git远程仓库关联操作命令l git remote 【查看远处仓库】l git remote show 【查看远程仓库信息】l git remote add 【添加远程仓库】l git fetch 【从远程仓库抓数据】l git pull 【获取最新版本】l git push 【推送数据到远程仓
15、库】l git remote rename/rm【远程仓库重命名/删除】4.2.1 git remote 查看远处仓库 用git remote 命令,查看目前配置有哪些远程仓库。加上参数-v,能够列出全部远程仓库。 参数介绍:-v:能够列出全部远程仓库。4.2.2 git remote show 查看远程仓库信息 4.2.3 git remote add 添加远程仓库 若要添加一个新远程仓库,运行git remote add shortname url4.2.4 git fetch 从远程仓库抓数据 命令:$git fetch proname4.2.5 git pull 获取最新版本 4.2.6 git push 推送数据到远程仓库 假如要把当地内容推送到Git服务器maste分支上.命令: $ git push origin master4.2.7 git remote rename/rm远程仓库重命名/删除 注意,对远程仓库重命名,也会使对应分支名称发生改变,原来pb/master 分支现在成了paul/master。五Windows Git 操作