git版本控制工具使用教程(三)分支使用
2017-10-19 21:12
190 查看
假设有这么一个场景
假如现在你正在更新一个功能,改了一半
这时,突然,你的老大告诉你,现在有个很着急的bug,需要立马修复
巧的是这个bug要修改的文件是你刚刚改的文件,这时怎么办呢
新功能加了一半,也不能撤回去,撤回去就白做了
bug也不能不改,这时,分支功能就闪亮登场~~~
你新建两个分支,一个改bug,一个更新功能,改完bug合并到主分支
这时候bug修复完毕,在更新功能,继续合并到主分支
完美解决类似需求,当然,分支的使用场景不止这一种,大家自行把握
git的分支功能还是非常强大的,下面来演示一下
根据上面的场景,我们先创建一个更新的分支
创建完之后我们可以使用命令来查看分支
前面有个小星星字体绿色是现在所在的分支
我在创建一个改bug的分支
好,创建完成之后现在有三个分支,一个是主分支,另外两个我们的场景操作分支
为什麽我建立两个分支而不创建一个分支呢
因为建议大家最好不要去动主分支,这样即使分支出现问题
我们最坏的情况只是舍弃掉这个分支而已
如果主分支出现了问题,那这个烂摊子你就必须要去收拾了
我先给大家看下我目前的目录结构,我创建了个测试文件
现在我使用命令切换到debug分支
这时候在查看分支就会看到所在的分支是debug
然后我在这个分支里做修改,添加一个debug.text文件
修改完后add–>commit,然后在切回在主分支
再看文件列表,debug文件消失了,回到master的目录结构
这时候在合并分支,把修改好的bug合并过来
合并完之后在看目录,发现debug文件又出现了,证明分支合并成功
更新的分支也一样,切到save分支,修改完之后add–>commit,切回主分支合并分支
推送本地分支
新建并切换到分test分支(可同步远程分支)
删除分支
删除本地分支
假如现在你正在更新一个功能,改了一半
这时,突然,你的老大告诉你,现在有个很着急的bug,需要立马修复
巧的是这个bug要修改的文件是你刚刚改的文件,这时怎么办呢
新功能加了一半,也不能撤回去,撤回去就白做了
bug也不能不改,这时,分支功能就闪亮登场~~~
你新建两个分支,一个改bug,一个更新功能,改完bug合并到主分支
这时候bug修复完毕,在更新功能,继续合并到主分支
完美解决类似需求,当然,分支的使用场景不止这一种,大家自行把握
git的分支功能还是非常强大的,下面来演示一下
根据上面的场景,我们先创建一个更新的分支
git branch 分支名
创建完之后我们可以使用命令来查看分支
git branch
前面有个小星星字体绿色是现在所在的分支
我在创建一个改bug的分支
好,创建完成之后现在有三个分支,一个是主分支,另外两个我们的场景操作分支
为什麽我建立两个分支而不创建一个分支呢
因为建议大家最好不要去动主分支,这样即使分支出现问题
我们最坏的情况只是舍弃掉这个分支而已
如果主分支出现了问题,那这个烂摊子你就必须要去收拾了
我先给大家看下我目前的目录结构,我创建了个测试文件
现在我使用命令切换到debug分支
git checkout 分支名
这时候在查看分支就会看到所在的分支是debug
然后我在这个分支里做修改,添加一个debug.text文件
修改完后add–>commit,然后在切回在主分支
再看文件列表,debug文件消失了,回到master的目录结构
这时候在合并分支,把修改好的bug合并过来
git merge 分支名
合并完之后在看目录,发现debug文件又出现了,证明分支合并成功
更新的分支也一样,切到save分支,修改完之后add–>commit,切回主分支合并分支
推送本地分支
git push (远程仓库名) (分支名) git push origin test
新建并切换到分test分支(可同步远程分支)
git checkout -b test origin/test
删除分支
git push origin :分支名 # 删除远程分支
删除本地分支
git checkout master # 切换到master分支 git branch -d test # 删除本地test分支
相关文章推荐
- 菜鸟教程之工具使用(九)——Git如何进行分支的merge操作
- git版本控制工具使用教程(一)入门篇
- 菜鸟教程之工具使用(九)——Git如何进行分支的merge操作
- Git版本控制工具使用教程(二)
- Git版本控制工具使用教程(一)
- git版本控制工具使用教程(二)团队开发
- Git版本控制工具使用教程(三)
- ajaxcontroltoolkit 微软出的ajax.net 工具使用教程八 使用scriptmanager控件
- AjaxControlToolkit 微软出的ajax.net 工具使用教程十一 FilteredTextBoxExtender(筛选) 控件的使用
- AjaxControlToolkit 微软出的ajax.net 工具使用教程十 DynamicPopulateExtender(动态)控件的使用
- AjaxControlToolkit 微软出的ajax.net 工具使用教程十六 TextBoxWatermarkExtender(水印) 控件的使用
- AjaxControlToolkit 微软出的ajax.net 工具使用教程十八 PasswordStrength (密码强度检验)控件的使用
- AjaxControlToolkit 微软出的ajax.net 工具使用教程二十 AutoCompleteExtender(自动提示)控件的使用
- AjaxControlToolkit 微软出的ajax.net 工具使用教程十七 使用CascadingDropDown(联动) 控件
- AjaxControlToolkit 微软出的ajax.net 工具使用教程二十三 DropDownExtender(下拉对话框)控件的使用
- AjaxControlToolkit 微软出的ajax.net 工具使用教程二十二 ConfirmButtonExtender (确认对话框)控件的使用
- AjaxControlToolkit 微软出的ajax.net 工具使用教程二十四 MaskedEditValidator 控件的使用
- AjaxControlToolkit 微软出的ajax.net 工具使用教程七 使用UpdatePanel控件(二)
- AjaxControlToolkit 微软出的ajax.net 工具使用教程四 CollapsiblePanelExtender(隐藏)控件的使用
- AjaxControlToolkit 微软出的ajax.net 工具使用教程十五 RoundedCornersExtender(圆角) 控件的使用