Git连载(8)克隆与分支

1.8.8 克隆(Clone)项目

        克隆项目就是将所选资源库当前分支的所有内容复制到新的工作空间下。如果当前分支不是master主分支master,而是其他分支,那么克隆操作自然也就是复制其他分支的内容。

        克隆项目按如下步骤进行即可。

        (1)进入打算克隆项目的文件夹(此处以E:\newGit目录为例),在该目录的空白处单击右键,然后单击右键菜单的“Git Clone...”菜单项。系统弹出如图1.76所示的克隆对话框。

图1.76 克隆项目

        (2)在图1.76所示对话框的URL中填写被克隆项目的URL,如果是本地项目,直接填写该项目所在的路径;如果是远程项目,则填写远程项目的URL。Directory则用于指定将项目克隆到本地的哪个目录下。如果项目中可能包含有大文件,则勾选LFS复选框。设置完成后单击该对话框中“OK”按钮。

        TortoiseGit将会显示克隆过程的进度,克隆完成后,E:\newGit\目录下将会多出一个gitJava文件夹,这就是刚刚克隆出来的项目。

        提示:克隆项目可通过git.exe "被克隆项目的URL" "本地存储路径"命令来完成。克隆本地项目与克隆远程项目其实差不多,只是填写被克隆项目的URL有所不同而已。

1.8.9 创建分支

        有些时候不想继续沿着开发主线开发,而是希望试探性地添加一些新功能,这时候就需要在原来开发主线上创建一个分支(Branch),进而在分支上进行开发,避免损坏原有的稳定版本。

        创建分支请按如下步骤进行。

        (1)在项目所在工作空间的空白处单击鼠标右键,在弹出菜单中单击“TortoiseGit”→“Create Branch...”菜单项,系统弹出如图1.77所示的对话框。

图1.77 创建分支

        (2)在图1.77所示对话框中输入新分支的名字,并指定该分支基于哪个版本来创建分支后,单击“OK”按钮,创建分支成功。

        新建分支之后,接下来就可以在新分支的基础上进行开发了,从而避免损坏原有的文件版本。

1.8.10 沿着分支开发

        为了沿着分支进行开发,要求先切换到分支所在的版本(可通过勾选图1.77所示对话框“Switch to new branch”复选框在创建分支时切换到指定分支)。

        为了切换到指定分支继续开发,可按如下步骤进行。

        (1)在工作空间的空白处单击鼠标右键,在弹出的快捷菜单中单击“TortoiseGit”→“Switch/Checkout...”菜单项,系统弹出如图1.78所示的对话框。

图1.78 切换到指定分支

        (2)在图1.78所示对话框中选择要切换的分支,然后单击“OK”按钮,当前文件就会切换到指定分支,接下来对该文件所做的修改都将沿着该分支开发。

        提示:切换到指定分支可通过git.exe checkout <分支名>命令来完成。

        例如,切换到newBranch分支之后继续对a.jsp文件进行修改,修改完成后将所做的修改提交到版本库,再次查看该项目的版本变革历史,将看到如图1.79所示的对话框。

图1.79 沿着分支开发

        从图1.79上方窗口可以看出,此时所走的修改不是在master主分支上进行的,而是在newBranch分支上进行。

        如果开发者沿着分支开发了一段时间之后,想继续维护开发master主分支上的开发,则还可以切换回master主分支继续开发,从新分支切换回master主分支与切换到分支并无任何区别,故此处不再赘述。

1.8.11 合并分支

        当项目沿着分支试探性开发新功能达到一定的稳定状态之后,还可以将开发分支和master主分支进行合并,从而将分支中的新功能添加到master主分支中。

        为了实现合并,可以按如下步骤进行。

        (1)在工作空间的空白处单击鼠标右键,在弹出的快捷菜单中单击“TortoiseGit”→“Merge...”菜单项,系统弹出如图1.80所示的对话框。

图1.80 设置合并信息

        (2)在图1.80所示窗口上方设置要合并的目标分支,在窗口下方填写对合并的说明信息。然后单击“OK”按钮,TortoiseGit开始执行合并。

        提示:执行分支可通过命令git.exe merge -m "合并消息" <分支名>完成。在执行合并之前,可以先通过TortoiseGit提供的文件对比工具查看两个分支之间的文件之间存在的差异。

 

 

 

本文转自疯狂Java论坛:http://www.crazyit.org/forum.php

Spring Cloud教学视频:https://my.oschina.net/JavaLaw/blog/1552993

京东购买地址:https://item.jd.com/12256011.html

工作流Activiti教学视频:https://my.oschina.net/JavaLaw/blog/1577577

Activiti6购买地址:https://item.jd.com/12246565.html

猜你喜欢

转载自my.oschina.net/JavaLaw/blog/1622772
今日推荐