文章目录

  • 一、下载安装~~删除线格式~~
  • 1.1安装(本地客户端和服务端两个)
  • 1.2确认安装:
  • 二、配置客户端
  • 2.1配置客户端
  • 2.2确认客户端配置是否正确
  • 三、gitlab的配置(token、SSH)
  • 3.1token
  • 3.2ssh
  • 3.2.1 生成SSH Key
  • 3.2.2 配置SSH Key
  • 四、gitlab操作
  • 4.1 gitlab创建项目
  • 4.2 gitlab操作分支
  • 五、git命令行操作
  • 5.1 git将远程项目分支克隆到本地
  • 5.2 git提交本地修改到远程
  • 5.3 git分支新建和删除
  • 5.3.1创建分支
  • 5.3.2删除分支
  • 5.4 git常规操作规范
  • 六、git客户端操作
  • 6.1小乌龟形式-------拉取远程分支
  • 6.2小乌龟形式-------提交新增或者修改代码
  • 6.3小乌龟形式-------git分支操作
  • 6.3.1 新建分支:
  • 6.3.2 推送分支
  • 6.3.3 删除分支
  • 6.3.4合并分支
  • 七、git文件之忽略


一、下载安装删除线格式

1.1安装(本地客户端和服务端两个)

官网下载(以windows为例)

1.2确认安装:

桌面右键以及cmd输入git -version确认安装成功。

gitlab 客户端 ios gitlab客户端_gitlab


gitlab 客户端 ios gitlab客户端_ssh_02

二、配置客户端

2.1配置客户端

gitlab 客户端 ios gitlab客户端_ssh_03


gitlab 客户端 ios gitlab客户端_tortoisesvn_04


gitlab 客户端 ios gitlab客户端_gitlab 客户端_05

2.2确认客户端配置是否正确

随便选个文件,空白处右键

gitlab 客户端 ios gitlab客户端_tortoisesvn_06


不用勾选直接ok,创建.git版本控制文件夹。

gitlab 客户端 ios gitlab客户端_tortoisesvn_07


接下来随便选个文件,点击右键add,然后commit到本地.git中了说明客户端配置正确。不想要直接把.git文件夹删除即可。

gitlab 客户端 ios gitlab客户端_gitlab 客户端_08


gitlab 客户端 ios gitlab客户端_git_09


gitlab 客户端 ios gitlab客户端_ssh_10

三、gitlab的配置(token、SSH)

gitlab是由乌克兰程序员开发的用于仓库管理系统的开源项目,使用git作为代码管理工具,并在此基础上搭建起来的web服务。

一般支持token和ssh两种。登录gitlab-》右上角settings:

3.1token

gitlab 客户端 ios gitlab客户端_tortoisesvn_11


gitlab 客户端 ios gitlab客户端_tortoisesvn_12

3.2ssh

3.2.1 生成SSH Key

安装Putty,下载地址:

https://www.chiark.greenend.org.uk/~sgtatham/putty/latest.html

安装到本地,从putty安装目录下找到puttygen.exe并启动:

gitlab 客户端 ios gitlab客户端_gitlab 客户端_13


参数配置: RSA算法, 4096位key,点击Generate,开始生成Key:(注意!时间可能比较长!)

gitlab 客户端 ios gitlab客户端_gitlab 客户端_14


gitlab 客户端 ios gitlab客户端_ssh_15


公 、私钥保存到本地,留存(保存私钥的时候可能会需要输入key passphrase)。

3.2.2 配置SSH Key

登录gitlab-》右上角settings-》找到SSH Keys:

将上一步生成出来的公钥填入,并填好title再保存。保存成功能在Your SSH Keys里面看到。

gitlab 客户端 ios gitlab客户端_ssh_16


gitlab 客户端 ios gitlab客户端_ssh_17

对于多台电脑,可以配置多个SSH Key

四、gitlab操作

4.1 gitlab创建项目

登录gitlab-》projects-》Your projects-》New progect:

gitlab 客户端 ios gitlab客户端_git_18


gitlab 客户端 ios gitlab客户端_gitlab_19


在项目里添加文件。

4.2 gitlab操作分支

创建分支: 基于master创建

gitlab 客户端 ios gitlab客户端_ssh_20


gitlab 客户端 ios gitlab客户端_gitlab_21


删除分支:

gitlab 客户端 ios gitlab客户端_git_22


合并分支: eg:test和到master分支

gitlab 客户端 ios gitlab客户端_gitlab_23


gitlab 客户端 ios gitlab客户端_tortoisesvn_24


gitlab 客户端 ios gitlab客户端_gitlab_25


gitlab 客户端 ios gitlab客户端_ssh_26

五、git命令行操作

5.1 git将远程项目分支克隆到本地

中央服务器已有项目的基本操作-命令行形式:

登录gitlab ,选择要操作的分支eg:git_test_2分支,点击clone-》url,在要检出项目的本地目录文件里,打开git bash 命令行执行:git clone url,即将分支项目检出到本地文件夹目录下了。

gitlab 客户端 ios gitlab客户端_gitlab_27

5.2 git提交本地修改到远程

gitlab 客户端 ios gitlab客户端_gitlab_28


第一步:模拟命令行上传新文件。git add 新文件,添加到暂存区,然后git status查看一下状态,然后git -commit -m ‘添加注释’,最后git push推送到远程,现在远程分支上就有一个空的新文件User.java了。然后可以git log查看下提交记录。

gitlab 客户端 ios gitlab客户端_git_29


gitlab 客户端 ios gitlab客户端_gitlab 客户端_30

第二步:在远程分支上将刚命令行push上来的新文件,增加点内容:

gitlab 客户端 ios gitlab客户端_git_31


第三步:模拟命令行修改文件。若是修改文件,每次修改前先从分支上拉取下来最新的代码git pull(类似svn的同步资源库-》update)再操作,此时本地文件应该更新下来刚远程新增的内容了,如图:

gitlab 客户端 ios gitlab客户端_gitlab_32


然后,本地修改点内容,同样操作git add 添加到暂存区,然后git status查看一下状态,然后git -commit ,最后git push推送到远程。

gitlab 客户端 ios gitlab客户端_tortoisesvn_33

注意:如果提交的时候没有添加操作git add User.java 则推送时为空,如下图,无法成功,所以记得按照步骤来!

gitlab 客户端 ios gitlab客户端_git_34


git log --oneline --decorate --graph –all可以查看所有分支的提交记录:

gitlab 客户端 ios gitlab客户端_ssh_35

git常用命令小结:
添加暂存区:git add 提交本地服务端: git commit
推送远程服务端: git push
从远程获取最新代码: git pull
查看当前状态: git status
查看提交记录: git log
查看最近两次提交记录: git log -2
查看历史记录以来哪几行被修改过: git log -p
查看时间段以后的日志: git log --since=2018-08-08
查看所有分支的提交记录: git log --oneline --decorate --graph –all

5.3 git分支新建和删除

5.3.1创建分支

gitlab 客户端 ios gitlab客户端_tortoisesvn_36


然后在远程确认下可以看到刚创建的新分支:

gitlab 客户端 ios gitlab客户端_gitlab 客户端_37

5.3.2删除分支

gitlab 客户端 ios gitlab客户端_tortoisesvn_38


然后在远程确认下可以刚刚的分支是否已经删除:

gitlab 客户端 ios gitlab客户端_gitlab 客户端_39


注意

  • 删除远程分支命令里冒号前有个空格。
  • 工作空间目前所处的分支是删除不掉的,如果分支上有未参与合并的提交,删除不掉,但可以强制删除。

小结:
查看当前项目所用分支:git branch 查看远程分支:git branch -r
切换分支:git checkout [name]
创建本地分支:git branch [name]
合并分支(将名称为name的分支与当前分支合并):git merge[name]
将本地分支推送至远程:git push origin test
删除本地分支(-d只能删除已经参与了合并的分支,对于未有合并的分支无法删除,强行删除的话)-D:git branch –d [name]
删除远程分支:git push origin :name

5.4 git常规操作规范

  • master分支用于发布,不允许push -f!
  • 自己开发先从master分支建立branch
  • 要在别人未合并master的代码上修改,可以从别人的branch上建立新的branch,也可以直接checkout别人的分支
  • 在自己的branch上开发完成后提交merge master
  • 已合并的branch完成上线后,可以从gitlab删除。

六、git客户端操作

gitlab 客户端 ios gitlab客户端_tortoisesvn_40

6.1小乌龟形式-------拉取远程分支

gitlab 客户端 ios gitlab客户端_tortoisesvn_41

6.2小乌龟形式-------提交新增或者修改代码

gitlab 客户端 ios gitlab客户端_gitlab 客户端_42


可以查看下暂存区,也可以略过此动作。

gitlab 客户端 ios gitlab客户端_gitlab 客户端_43


gitlab 客户端 ios gitlab客户端_git_44


gitlab 客户端 ios gitlab客户端_gitlab 客户端_45


到远程gitlab上确认下刚刚小乌龟推送的上来了没有:

gitlab 客户端 ios gitlab客户端_gitlab 客户端_46


在远程模拟修改文件,给刚新增的类增加点内容,然后用小乌龟-》pull下,验证本地已经拉取下来最新的代码了。

gitlab 客户端 ios gitlab客户端_ssh_47


gitlab 客户端 ios gitlab客户端_tortoisesvn_48

6.3小乌龟形式-------git分支操作

6.3.1 新建分支:

gitlab 客户端 ios gitlab客户端_gitlab_49

6.3.2 推送分支

第一步:一定要切换至要推送的分支上

gitlab 客户端 ios gitlab客户端_git_50


第二步:然后再选择本地要推送的分支push,不然会推送失败。

gitlab 客户端 ios gitlab客户端_gitlab 客户端_51


第三步:到远程确认下,刚小乌龟推送的分支是否成功。

gitlab 客户端 ios gitlab客户端_gitlab 客户端_52

6.3.3 删除分支

点击浏览,选择要删除的分支,本地和远程一起删除。

gitlab 客户端 ios gitlab客户端_git_53


gitlab 客户端 ios gitlab客户端_tortoisesvn_54


最后到远程确认分支是否删除成功:

gitlab 客户端 ios gitlab客户端_gitlab_55

6.3.4合并分支

比如要将test分支内容合并至master,那么合并的时候工作空间处在master分支上的。合并时如果命令行形式如果文件冲突的话操作麻烦,推荐用小乌龟或者开发软件idea等解决冲突

gitlab 客户端 ios gitlab客户端_gitlab 客户端_56

七、git文件之忽略

一些文件是没必要提交到服务器的,比如maven编译生成的target文件夹,idea生成的.idea *.iml等文件,我们可以设置git将其忽略,以避免误提交。

选择要忽略的文件,如下操作:

gitlab 客户端 ios gitlab客户端_gitlab 客户端_57


gitlab 客户端 ios gitlab客户端_ssh_58


gitlab 客户端 ios gitlab客户端_ssh_59


忽略完成,进行验证:

gitlab 客户端 ios gitlab客户端_tortoisesvn_60