zoukankan      html  css  js  c++  java
  • git版本分支和分支、分支和主分支切换

    问题描述:

         公司里项目管理使用的是gitLab(收费的), 如果开发人员提交代码,  需要首先创建一个分支, 然后把代码提交到你创建的分支上去(不允许把代码直接提交到主分支上). 在代码提交到已经创建的分支上后, 你要发送一个merger  request的请求 给合并代码的人员,  这个人有权限把你创建的分支合并到主分支上(你自己是没有权限的),  有他做最后代码审核. 如果这个人合并成功后, 自己就可以切换回到主分支, 去更新代码了.   

         现在出现一个很棘手的问题(其实还是git提交操作的流程): 

            目前主分支:  master

            在msater上创建新分支newBranch,  在newBranch上更改代码, 没有提交(commit / push),  此时msater分支上有人更新了代码,  我需要在newBranch上去更新master代码, 其实就是更新创建分支的基线(master).

            如下图: 

      

    把基线移更新到蓝色的线

                      

    我目前的操作:(目前的分支是newBranch)

    git branch  (查看当前分支是否处于newBranch)

    git add <file> (提交newBranch上的更改的文件)   

    git commit -m "comment" (只提交到本地, 不做git push操作, 相当于提交到本地仓库)   

    git checkout master

    (这里是切换到msater分支, 如果不把newBranch上修改的文件提交到本地, 那么这个操作就会提示错误) (切换分支前, 必须保证当前的分支记录全部提交, 简单来说, 执行git status, 如果有显示未提交的修改文件, 那么切换分支就不会成功;这是我们就可以采取把修改的文件提交到本地,不去做git push操作, 然后切分支,做其他事情. 完成之后, 最后切换到之前的分支, 可以通过git reset HARD~1的命令还原.把本地提交的还原回来)   

    git pull origin master(把master的分支新提交的代码更新下来)   

    git checkout newBranch (切换到之前的newBranch分支)  

    git reset HEAD~1 (这里是先reset, 然后merge)

    (上面和下面这两个步骤操作意义是: 把之前提交到本地, 全部还原回来, 即同时更新了master代码, 也把基线移到指定的地方, 这样就相当于(上图)把基线移到蓝线, )

    git merge --no-ff master (是否需要加参数--no-ff, 看需要)

    (git merge –no-ff 可以保存你之前的分支历. 能够更好的查看merge历史, 以及branch状态)
    (git merge 则不会显示 feature,只保留单条分支记录)

    后续的修改提交文件, 和正常的git add / git commit -m "" / git push 等操作完全不影响

    (详细的内容可以查看我的另一篇博客: http://www.cnblogs.com/xumBlog/p/8623736.html)

    (git reset的命令学习: http://www.cnblogs.com/xumBlog/p/8555666.html)     

        

  • 相关阅读:
    序列JSON数据和四种AJAX操作方式
    jquery.validate和jquery.form.js实现表单提交
    JQuery Validate使用总结1:
    HOWTO: Include Base64 Encoded Binary Image Data (data URI scheme) in Inline Cascading Style Sheets (CSS)(转)
    SharePoint 2007 使用4.0 .Net
    动态IP解决方案
    取MS CRM表单的URL
    从Iframe或新开的窗口访问MS CRM 2011(转)
    Toggle or Hidden MS CRM Tab
    Windows 2008下修改域用户密码
  • 原文地址:https://www.cnblogs.com/xumBlog/p/8534912.html
Copyright © 2011-2022 走看看