Git之Feature分支
Feature分支
- 为什么要用到分支
- 实例分析
为什么要用到分支
软件开发中,总有无穷无尽的新功能要不断添加进来。
在添加一个新功能的时候,你肯定不希望因为一些实验性质的代码,把主分支搞乱了,所以,每添加一个新功能,最好新建一个feature分支,在上面开发,完成后,合并,最后,删除该feature分支。
实例分析
假如现在你接到了一个新任务,开发代号为feature-visual,该功能用于编写可视化的接口。
于是准备开发
$ git switch -c feature-visual
fatal: not a git repository (or any of the parent directories): .git
如果产生fatal: not a git repository (or any of the parent directories): .git的报错,报错提示:没有.git这个目录
解决办法:将git进行初始化,在进行创建分支
administrator@BF-201802061547 MINGW64 ~
$ git init
Initialized empty Git repository in C:/Users/Administrator/.git/administrator@BF-201802061547 MINGW64 ~ (master)
$ git switch -c feature-visual
Switched to a new branch 'feature-visual'
几分钟后,开发完毕:
将我们的新分支添加到暂存区
administrator@BF-201802061547 MINGW64 ~ (feature-visual)
$ git add visual.py
warning: LF will be replaced by CRLF in visual.py.
The file will have its original line endings in your working directory
此时如果有出现warning: LF will be replaced by CRLF in visual.py.The file will have its original line endings in your working directory的提示,这可能是你的项目使用了GitHub的开源项目,这个开源项目上传的环境(Linux)和你本次上传GitHub仓库的环境(Windows)不同,例如:本机上传的环境是win10 ,而在你本机项目中引用的GitHub项目上传环境是Linux,windows中的换行符为 CRLF,而在Linux下的换行符为LF
解决办法:可以选择忽略,也可以敲下面的命令
git config --global core.autocrlf false
administrator@BF-201802061547 MINGW64 ~ (feature-visual)
$ git status
On branch feature-visualNo commits yetChanges to be committed:(use "git rm --cached <file>..." to unstage)new file: visual.py
administrator@BF-201802061547 MINGW64 ~ (feature-visual)
$ git commit -m "add feature vulcan"
[feature-visual (root-commit) 24d1a7a] add feature vulcan1 file changed, 2 insertions(+)create mode 100644 visual.py
切回master,准备合并
$ git switch master
一切顺利的话,feature分支和bug分支是类似的,合并,然后删除。
但是!
就在这时,接到上级的命令,因经费不足,新功能必须取消!
虽然白干了,但是这个包含机密资料的分支还是必须就地销毁:
administrator@BF-201802061547 MINGW64 ~ (master)
$ git branch -d feature-visval
error: The branch 'feature-visval' is not fully merged.
If you are sure you want to delete it, run 'git branch -D feature-visval'.
销毁失败。Git友情提醒,feature-visual分支还没有被合并,如果删除,将丢失掉修改,如果要强行删除,需要使用大写的-D参数。。
现在我们强行删除:
administrator@BF-201802061547 MINGW64 ~ (master)
$ git branch -D feature-visval
Deleted branch feature-visval (was 9e06f3c).
终于删除成功!
Git之Feature分支相关推荐
- 创建git项目的feature分支以及下载特定分支的仓库代码
在掌握了基础git的使用后可以按照这个步骤来: 下载项目:git clone <仓库地址>如果要下载非master的某分支代码:git clone -b <分支名> <仓 ...
- Git 分支管理 Feature分支 强行删除分支
软件开发中,总有无穷无尽的新的功能要不断添加进来. 添加一个新功能时,你肯定不希望因为一些实验性质的代码,把主分支搞乱了, 所以,每添加一个新功能,最好新建一个feature分支, 在上面开发,完成后 ...
- 07 分支管理 —— Feature分支
2019独角兽企业重金招聘Python工程师标准>>> 07 分支管理 -- Feature分支 软件开发中,总有无穷无尽的新的功能要不断添加进来.添加一个新功能时,你肯定不希望因为 ...
- 20.Feature分支
软件开发中,总有无穷无尽的新的功能要不断添加进来. 添加一个新功能时,你肯定不希望因为一些实验性质的代码,把主分支搞乱了,所以,每添加一个新功能,最好新建一个feature分支,在上面开发,完成后,合 ...
- 分支管理---Feature分支
软件开发中,总有无穷无尽的新的功能要不断添加进来. 添加一个新功能时,你肯定不希望因为一些实验性质的代码,把主分支搞乱了,所以,每添加一个新功能,最好新建一个feature分支,在上面开发,完成后,合 ...
- git删除本地分支、删除远程分支 复制分支
git删除本地分支.删除远程分支 It_BeeCoder 2019-05-15 09:47:20 80268 收藏 15 展开 https://blog.csdn.net/lihua5419/ar ...
- git master主分支_Git分支管理策略及简单操作
前几天整理了一下之前项目的开发代码,当时使用了Git来进行代码版本管理.虽然本人熟悉常用的Git操作,但是对分支的管理经验非常欠缺.拿这个项目来说,在项目中有不下20个分支,每个分支间的继承关系相当之 ...
- git 刷新远程分支列表_掌握Git命令一张脑图就行
最近在工作之余,遇到Git上面一些问题,趁这次的机会,补一补Git基础知识. 脑图 本文更多梳理的是Git常用命令,非原理篇,需要这部分知识的可以往下看. 首先我们的了解Git通常的操作流程,网上流行 ...
- 在package.json中使用git URL依赖分支或标记?
本文翻译自:Depend on a branch or tag using a git URL in a package.json? Say I've forked a node module wit ...
最新文章
- leetcode day4
- Hibernate3的配置参数汇总
- java classes 路径_Java获取项目路径及classes路径
- 远程桌面复制文件到本地磁盘
- 计算机课程学习小结,计算机课程学习心得5篇___.docx
- 网易开源云原生日志系统!
- Server-Side Timestamping in the Audit Trail System (XAF时间戳在审核中的应用代码)
- 阶段3 1.Mybatis_05.使用Mybatis完成CRUD_6 Mybatis的CRUD-保存操作的细节-获取保存数据的id...
- 【转】MySql常用函数大全
- UML类图、代理学习
- potainer 日志_分享10个优秀的日志分析工具
- 计算机上机模拟试题答案,[计算机类试卷]国家二级VB机试(上机操作)模拟试卷420及答案与解析.doc...
- Python通过fake_useragent实现生成随机UserAgent
- 002如何构建hadoop集群环境?
- 该为您的HTTPS安全证书续期了
- 【雅思】金山词霸-单词学习(41-80)
- nginx upstream 健康检查
- oracle11gr2配置监听,oracle-11g-R2监听文件配置
- php工程师 英文,开发工程师的英文怎么说
- 51Nod3236-第k小生成数