git
Pro Git
Atlassian Git Tutorial
Pro Git 简体中文翻译
GitX
goofansu
V2EX  ›  git

master是发布版本,hotfix是一个bug分支,在hotfix中,为了测试而修改了文件a,而后修改了文件b解决了bug,现在要把文件b合并回master,但是不要合并文件a,该怎么做?

  •  
  •   goofansu · Oct 17, 2012 · 4378 views
    This topic created in 4983 days ago, the information mentioned may be changed or developed.
    12 replies    1970-01-01 08:00:00 +08:00
    yyfearth
        1
    yyfearth  
       Oct 17, 2012
    用patch? 我也不是很清楚,我自己就是这么做的。
    goofansu
        2
    goofansu  
    OP
       Oct 17, 2012
    @yyfearth 不太清楚
    我现在是:
    在hotfix分支
    git add . (把a和b加入stage)
    git commit b (提交b,不提交a)
    git stash (暂存)
    git checkout master
    git merge hotfix

    这样好像是行的,但是总觉得哪里不对。
    bearice
        4
    bearice  
       Oct 17, 2012
    cherry-pick 只合并你需要的commit
    laihj
        5
    laihj  
       Oct 17, 2012
    http://git-scm.com/book/zh/ch2-4.html

    放弃a文件的修改就行了
    peizh2006
        7
    peizh2006  
       Oct 17, 2012
    commit之前只git add b,a文件checkout掉。
    goofansu
        8
    goofansu  
    OP
       Oct 17, 2012
    多谢大家,我一个个看
    jjgod
        9
    jjgod  
       Oct 18, 2012
    这位同学还是看看基本的 git 教程,了解什么叫做 add 再说。
    rrrrutdk
        10
    rrrrutdk  
       Oct 18, 2012   ❤️ 1
    "为测试而修改a"

    如果是你自己调试,那你就不应该提交a到服务器上。
    如果是测试部门测试,那你应该新建一个分支,再在上面修改a。

    现在的话,你可以git revert掉修改a的那个再合并。
    Mooooon
        11
    Mooooon  
       Oct 18, 2012   ❤️ 1
    @bearice cherry-pick +1,其实理解了git是保存的修改文件副本就很容易操作了。
    anyforever
        12
    anyforever  
       Oct 18, 2012
    修改A的操作,应该在Dev分支来干,bugfix分支只用来改bug
    建议你看一下这篇: http://weibo.com/1670385350/yCc7Ohyfg
    About   ·   Help   ·   Advertise   ·   Blog   ·   API   ·   FAQ   ·   Solana   ·   3253 Online   Highest 6679   ·     Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 · 67ms · UTC 00:30 · PVG 08:30 · LAX 17:30 · JFK 20:30
    ♥ Do have faith in what you're doing.