Git命令基础使用之GitLab拉取项目、提交分支、切换分支、合并分支、删除分支。

概念篇

Git 分支

几乎每一种版本控制系统都以某种形式支持分支。使用分支意味着你可以从开发主线上分离开来,然后在不影响主线的同时继续工作。在很多版本控制系统中,这是个昂贵的过程,常常需要创建一个源代码目录的完整副本,对大型项目来说会花费很长时间。

有人把 Git 的分支模型称为“必杀技特性”,而正是因为它,将 Git 从版本控制系统家族里区分出来。Git 有何特别之处呢?Git 的分支可谓是难以置信的轻量级,它的新建操作几乎可以在瞬间完成,并且在不同分支间切换起来也差不多一样快。和许多其他版本控制系统不同,Git 鼓励在工作流程中频繁使用分支与合并,哪怕一天之内进行许多次都没有关系。理解分支的概念并熟练运用后,你才会意识到为什么 Git 是一个如此强大而独特的工具,并从此真正改变你的开发方式。

操作篇

一、拉取项目

1、进入项目中,copy项目的链接地址,打开Git命令窗口,输入拉取命令,不过先不急,这样拉取是直接拉取到桌面上的,如果想要放到电脑中指定的文件夹,先进入文件夹,再clone下来,这时候已经完成了拉取项目。

拉取项目命令:

git clone [email protected]:Apollo/projecttest.git

二、提交分支

1、假如我们GitLab里面存在一个空的Project,需要上传编辑过的文件进入这个Project中,这时候打开Git命令窗,进入需要上文件/文件夹的所在位置,如果不在文件所在地输入命令,将会出现以下错误。 另外注意:提交的文件名不能是中文,否则-m的注释内容将不会在GitLab的Last commit中出现!

命令行:

$ git add test.txt

$ git commit -m "第一次提交分支"

$ git push -u origin master


ps:
git add 文件名 //单个上传
git add .     //批量上传文件
如果是批量上传一个文件夹里面的文件,可以将git add .和git commit -m合并成一句:
git commit -a -m "注释内容"/git commit -am "注释内容"

但是!如果是新建文件,只是输入git commit -a -m "注释内容"/git commit -am "注释内容"是不能提交的,因为新建文件这个时候属于未跟踪状态,而-m命令只能提交跟踪状态的,所以必须要git add文件之后才能被提交到暂存区中。

git commit -a -m "注释内容"/git commit -am "注释内容"和git commit -m "注释内容"的区别是:-am只能提交被跟踪过的文件,只要一开始被跟踪过,后面无需add,而-m,需要每次提交时都需要add一次。

正确命令流程:

这个时候已经提交成功,并且也有注释内容了。

 

三、切换分支

项目中不可能只有一个人开发,所以为了避免因多人开发造成合并代码混乱,我们开发时需要从主干上面,切换分支去进行我们的开发任务,待我们开发任务完成之后,再合并到主干也就是master上去。

1、创建新分支 doingnow,并查看现在分支,带有*是当前分支

git checkout -b doingnow

2、我们编辑文件,然后再用新分支推送到远程分支上去,这样在GitLab就可看到我们提交的分支记录了。由于是新建文件,所以首先需要add一次,将文件变为跟踪状态,输入注释提交到暂存区再推送到远程分支上,注意不是直接推送到远程master分支上,而且作为新分支推到远程分支中。

命令:

将目录下所有文件标记为跟踪状态
$ git add .

提交文件到暂存区并注释
$ git commit -a -m "这是我的doingnow分支提交的内容"

推送到远程分支命令
$ git push -u origin doingnow





GitLab上已有新分支

四、合并分支

这时,代码已经上传到远程上,可是并不在我们的master主干上,所以需要管理员帮我们合并doingnow分支的代码到master里去,怎么合并呢,请看下方:

命令:

切换到本地master中
$ git checkout master

合并doingnow
$ git merge doingnow

将合并成功的master推送到远程master中
$ git push -u origin master

注意:如果是多人开发,建议pull下远程master文件,此动作在切换本地master命令前执行
$ git pull origin master

1、首先我们的master里面只有一个文件

合并成功后,doingnow里面的所有信息同步到master里面来了

五、删除分支

在完成我们开发任务的分支之后,如果没有必要保留的话,可以删除,那么删除命令在下方,删除本地分支和远程分支~

注意:删除分支时,不能停留在次分支上,不然会删除失败,请切换到本地master分支去删除~

命令:

切换分支
$ git checkout master

删除本地分支
$ git branch -d doingnow

删除远程分支
$ git push origin --delete doingnow

本地分支删除后只有master

远程分支删除后

哈哈,这样一路操作下来客官们是不是觉得很简单呢~

最后附上Git中文官网,供大家深入学习~

Git官网:https://git-scm.com/book/zh/v1/

今天就和大家先说到这里,

在下Apollo,一个爱分享Java、生活的小人物,

咱们来日方长,有缘江湖再见,告辞!

发布了114 篇原创文章 · 获赞 52 · 访问量 12万+

猜你喜欢

转载自blog.csdn.net/pang_ping/article/details/102798257