zoukankan      html  css  js  c++  java
  • git学习--bug分支

    如果你接到一个修复代号为1的任务,那么想创建一个分支issue-1来处理,但是,现在在dev上进行的工作还没完成,无法完成提交。如下图

    则需要用git stash把工作现场先储存起来,等以后恢复现场后继续工作。如下图,执行git stash后工作区为空

    首先确定要在哪个分支修复bug,假设是master,就从master创建临时分支,并在上面修复bug

    修复完成后,切换到master分支,并完成合并,最后删除issue-1分支

    然后,问题来了,因为dev是从原来的master拉下来的,是存在已经修好的那个bug的,如果这里没有将dev与修复好bug的master合并一次,而是直接在dev分支恢复现场工作,这样原来的bug还存在dev中,以后合并可能会出现错误,所以正确的执行步骤是:1.跳转到dev分支 2.将dev分支和修复好bug的master合并 3.再恢复原来的工作现场 这样一来dev原来的bug也被修复了,如下图

    用git log 可以查看分支的合并情况

    命令总结:

    查看分支:git branch

    创建分支:git branch <name>

    切换分支:git checkout <name>

    创建+切换分支:git checkout -b <name>

    合并某分支到当前分支:git merge <name>

    删除分支:git branch -d <name>

    查看分支合并情况:git log --graph --pretty=oneline --abbrev-commit

    将当前工作现场“储藏”起来:git stash

    查看当前工作状态:git status

    恢复上一个工作区内容:git stash pop/git stash apply

    二者的不同是用git stash apply恢复,但是恢复后,stash内容并不删除,你需要用git stash drop来删除;用git stash pop,恢复的同时把stash内容也删了

    查看储藏区内容:git stash list

  • 相关阅读:
    python高级特性和高阶函数
    代理模式及案例
    我的报错错误记录
    摘抄-编码规范
    测试java的Lambda语法
    测试IDEA将新建项目提交到github上
    js处理科学计数法
    测试java操作运算符
    java根据模板生成,导出word和pdf(aspose.words实现word转换pdf)
    sqlserver日期函数
  • 原文地址:https://www.cnblogs.com/shubiao/p/4194818.html
Copyright © 2011-2022 走看看