zoukankan      html  css  js  c++  java
  • Git merge

    Git merge 不同的branch

    Git的优势是可以创建不同的branch,然后在每个branch上开发。那么问题是:如果不同的branch之间需要做同步,比如sourceBranch上做的修改也需要同步到targetBranch,改怎么做?
    1. 如果一个branch是有远程Git server管理的,另一个branch是自己本地的
        cd <your workspace>
        git branch  //假定现在所在的branch是targetBranch,并最好保证没有未提交的修改,并且已经更新到最新
        git checkout -b sourceBranch  //创建一个本地的sourceBranch并切换到sourceBranch
        git commit  //把sourceBranch上做的修改先提交
        git checkout targetBranch  //切换回targetBranch
        git merge --no-ff sourceBranch  //把sourceBranch的修改merge到targetBranch。注意:建议merge的时候总是用 --no-ff 选项
        git status  //保证现在workspace是干净的
        git push   //push到远程,如果远程有新的修改,先做一下git pull
     
    2. 如果两个branch都是远程管理的,想把branchB的内容同步到branchA上
       cd <your workspace>
       git branch  //假定现在所在的branch是branchA,并最好保证没有未提交的修改,并且已经更新到最新
       git checkout sourceBranch  //确保同一个workspace能在不同的branch直接切换,即保证 .git/config里 [remote "origin"] 的内容是 fetch = +refs/heads/*:refs/remotes/origin/*
       git merge targetBranch
       解决conflicts如果merge的结果里有显示conflicts
       git commit  //解决冲突后先commit到sourceBranch
       git checkout targetBranch  //切换到targetBranch
       git merge --no-ff sourceBranch  //建议merge的时候总是用 --no-ff 选项
       git push origin targetBranch   //把sourceBranch的修改merge到targetBranch之后,push到远程的targetBranch

  • 相关阅读:
    spring mvc之DispatcherServlet类分析
    python根据操作系统类型调用特定模块
    C#编写windows服务程序
    写在开始前---多端小系统结构
    写在开始前---web异常处理
    java反射
    写在开始前---简单业务分层
    写在开始前---ajax中的会话过期与重新登录
    一个简易的netty udp服务端
    google的python语言规范
  • 原文地址:https://www.cnblogs.com/luoxiaoxiao102/p/14866780.html
Copyright © 2011-2022 走看看