V2EX = way to explore
V2EX 是一个关于分享和探索的地方
现在注册
已注册用户请  登录
git
Pro Git
Atlassian Git Tutorial
Pro Git 简体中文翻译
GitX
goofansu
V2EX  ›  git

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

  •  
  •   goofansu · 2012 年 10 月 17 日 · 4167 次点击
    这是一个创建于 4848 天前的主题,其中的信息可能已经有所发展或是发生改变。
    12 条回复    1970-01-01 08:00:00 +08:00
    yyfearth
        1
    yyfearth  
       2012 年 10 月 17 日
    用patch? 我也不是很清楚,我自己就是这么做的。
    goofansu
        2
    goofansu  
    OP
       2012 年 10 月 17 日
    @yyfearth 不太清楚
    我现在是:
    在hotfix分支
    git add . (把a和b加入stage)
    git commit b (提交b,不提交a)
    git stash (暂存)
    git checkout master
    git merge hotfix

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

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

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

    现在的话,你可以git revert掉修改a的那个再合并。
    Mooooon
        11
    Mooooon  
       2012 年 10 月 18 日   ❤️ 1
    @bearice cherry-pick +1,其实理解了git是保存的修改文件副本就很容易操作了。
    anyforever
        12
    anyforever  
       2012 年 10 月 18 日
    修改A的操作,应该在Dev分支来干,bugfix分支只用来改bug
    建议你看一下这篇: http://weibo.com/1670385350/yCc7Ohyfg
    关于   ·   帮助文档   ·   自助推广系统   ·   博客   ·   API   ·   FAQ   ·   Solana   ·   5471 人在线   最高记录 6679   ·     Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 · 37ms · UTC 06:43 · PVG 14:43 · LAX 22:43 · JFK 01:43
    ♥ Do have faith in what you're doing.