`
xitonga
  • 浏览: 583664 次
文章分类
社区版块
存档分类
最新评论

Git学习--> 分支管理

 
阅读更多

5分支操作命令

参考文献 http://www.ruanyifeng.com/blog/2012/07/git.html

git branch--查看分支

git branch -d <分支名称> --删除分支

git branch -D <分支名称> --强制删除

git checkout -b <分支名称> --建立分支

git checkout <分支名称> --切换分支

git merge --no-ff <分支1> --合并分支

PSGit分支管理,可以看阮一峰老师写的博客

开发过程中碰到的问题也比较多,在不影响主要分支的情况下,我们建立一个主要分支的backup,另外一套,俗称主分支的影子,我们现在这个影子上进行各种添加修改删除等等操作,然后在分支上测试,测试完成后,我们再将分支合并到主库上面去,如下图所示

5.1

5.2

5.1 建立分支命令

Git创建Develop分支的命令:

   git checkout -b develop master

git branch 察看当前所在分支,如果没有分支就会显示在master

看到有命令,带*的就表示我们目前所在的分支。注意到上面是master分支,建立develop分支之后,马上跳到了develop分支了。

$ git branch

* master

skyman@SKYMAN-CF7E3587 ~/manual56/docs/Chapter_17 (master)

$ git checkout -b develop master

Switched to a new branch 'develop'

skyman@SKYMAN-CF7E3587 ~/manual56/docs/Chapter_17 (develop)

$

另外git的分支跟svn里面的分支包括svn里面的tags不太一样,svn里面的分支以及tag是直接copy到另外一个文件以及文件夹下面,保存了当前为止所有代码的一个副本。但是git的分支是没有这个功能的,在查阅官方文档之后,我的理解是git它只是设置了一个指针,指到这个修改版本这个修改记录下指到某一个修改点,然后从这个点之前的所有修改都属于这个分支或者说属于这个tag,有点拗口吧,如果实在没有理解的话,大家也可以查看一些资料,推荐去阅读英文官网http://en.wikipedia.org/wiki/Git_(software)#External_links

5.2 切换分支

切换分支用checkout命令,比如Git checkout master

$ git checkout master

Switched to branch 'master'

skyman@SKYMAN-CF7E3587 ~/manual56/docs/Chapter_17 (master)

$

另外如果需要从develop分支下分支合并一些修改记录到master下,使用merge命令,先确保跳转到master分支下,然后使用merge命令带上—no-ff参数。

$ git checkout master

Switched to branch 'master'

skyman@SKYMAN-CF7E3587 ~/manual56/docs/Chapter_17 (master)

$ git merge --no-ff develop

Already up-to-date.

skyman@SKYMAN-CF7E3587 ~/manual56/docs/Chapter_17 (master)

$

但是这里显示的是already up-to-date,由于刚才没有任何修改,所以显示是最新的记录。另外分支的话,用完分支之后,我们觉得分支没有用了,我们可以将分支删除。

5.3 删除分支

-d参数来实现删除分支功能,这个要在确保所以修改已经提交的情况下再执行此删除操作,但是如果我们有一些修改没有提交但是又想强制删除这个分支呢?那怎么办?可以用-D参数来实现强制删除功能,这里实验没有做任何修改,所以用-d参数就可以了。

$ git branch -d develop

Deleted branch develop (was 3e96f90).

skyman@SKYMAN-CF7E3587 ~/manual56/docs/Chapter_17 (master)

$ git branch

* master

skyman@SKYMAN-CF7E3587 ~/manual56/docs/Chapter_17 (master)

$

最后用git branch命令查看下,已经没有develop分支了,它被删除了。

分享到:
评论

相关推荐

    Git-2.40.0-64-bit.exe

    Git-2.40.0-64-bit.exe Git是一个免费的开源分布式版本控制系统,可以快速高效地处理从小...它超越了像Subversion、CVS、Perforce和ClearCase这样的配置管理工具,具有简易的本地分支、方便的暂存区和多工作流等特性。

    Git-2.39.2-64-bit.exe

    Git-2.39.2-64-bit.exe Git是一个免费的开源分布式版本控制系统,可以快速高效地处理从小...它超越了像Subversion、CVS、Perforce和ClearCase这样的配置管理工具,具有简易的本地分支、方便的暂存区和多工作流等特性。

    Git-2.37.3-64-bit.exe

    Git-2.37.3-64-bit.exe Git是一个免费的开源分布式版本控制系统,可以快速高效地处理从小...它超越了像Subversion、CVS、Perforce和ClearCase这样的配置管理工具,具有简易的本地分支、方便的暂存区和多工作流等特性。

    Git-2.20.1-64-bit_20190226官网下载

    它超越了像Subversion、CVS、Perforce和ClearCase这样的配置管理工具,具有像低成本的本地分支、边界的登台区域和多个工作流这样的特性。 可以完整地保留每个版本所有的代码内容,包括你未提交改变的那部分。

    Git中文学习手册 Git入门

    3 3 分支的管理 3 4 利用分支进行开发的工作流程 3 5 远程分支 3 6 分支的衍合 3 7 小结 4 服务器上的 Git 4 1 协议 4 2 在服务器上部署 Git 4 3 生成 SSH 公钥 4 4 架设服务器 4 5 公共访问 4 6 GitWeb ...

    GIT教程-分支管理

    我们在以前GIT版本回退当中我们明白了GIT本地存储的时间线,并且对它的底层原理具有一定的理解和认识,就是下图这个样子:当然由于我们是进行演示的所以就只有一个master主分支,其实在一个大型项目中那时候相当多数目的...

    Git常用命令-学习笔记.zip

    Git工具命令学习笔记pdf,git各种命令,分支管理,远程仓库管理等等离线笔记

    Git权威指南PDF完整版

    26.2.2 Git工作分支和 Subversion 如何对应/ 388 26.2.3 其他辅助文件/ 390 26.3 多样的 git-svn 克隆模式/ 390 26.4 共享 git-svn 的克隆库/ 393 26.5 git-svn 的局限/ 394 第5篇 搭建Git服务器 第27章 使用 HTTP ...

    git-from-ui-to-terminal

    在本自述文件中,您将找到分步指导教程,让您学习如何通过操作来管理终端。 在此 repo 中,您有一个非常简单的项目(一个通过控制台日志显示数字的 Web 项目),我们将提供以下指南: 从头开始重新创建存储库。 ...

    Git-2.40.1-64-bit.exe

    Git-2.40.1-64-bit.exe Git是一个免费的开源分布式版本控制系统,可以快速高效地处理从小...它超越了像Subversion、CVS、Perforce和ClearCase这样的配置管理工具,具有简易的本地分支、方便的暂存区和多工作流等特性。

    git-学习笔记(1)用git管理oschna的仓库

    我本人自己喜欢写写小程序,接触git是受朋友介绍,没有接触正规的培训。所以这个教程也适合与类似与我这种没有公司环境的人。我也是刚刚接触git仅能满足自己写代码备份,并分享到...对于分支和网上写作本教程不包含。

    Git学习手册

    3 3 分支的管理 3 4 利用分支进行开发的工作流程 3 5 远程分支 3 6 分支的衍合 3 7 小结 4 服务器上的 Git 4 1 协议 4 2 在服务器上部署 Git 4 3 生成 SSH 公钥 4 4 架设服务器 4 5 公共访问 4 6 GitWeb ...

    Git分布式版本控制工具

    本章节我们会学习在IDEA中使用Git进行版本管理,具体包括: 在IDEA中创建工程并将工程添加至Git 将文件添加到暂存区 提交文件 将代码推送到远程仓库 从远程仓库克隆工程到本地 从远程拉取代码 版本对比 创建...

    python学习Git.txt

    * git可以更好的支持分支,方便多人协同工作 * git分布式代码更安全,有全球唯一的commit版本号 * git是开源的系统 * 使用git可以脱网工作,且数据传输速度较快 git安装 linux : sudo apt-get install git ...

    Git分支管理详解

    下面我们就来学习一下Git分支管理吧。我们先来说一个简单的案例吧,你们团队中有多个人再开发一下项目,一同事再开发一个新的功能,需要一周时间完成,他写了其中的30%还没有写完,如果他提交了这个版本,那么团队中...

    ToblerProject:该项目包括创建在线学习内容管理系统(LCMS)平台。 原则上,我们将使用以下语言

    该项目包括创建在线学习内容管理系统(LCMS)平台。 原则上,我们将使用以下语言:PHP,SQL,JS,CSS,HTML和其他语言。 工作流程 每个贡献者将从事先前分配的任务。 贡献者必须创建其本地分支机构,完成任务,最后...

    Git分支和标签管理【Git和GitHub教程3】

    Git分支和标签管理【Git和GitHub教程3】

Global site tag (gtag.js) - Google Analytics