V2EX = way to explore
V2EX 是一个关于分享和探索的地方
现在注册
已注册用户请  登录
V2EX 提问指南
nutting
V2EX  ›  问与答

刚用 git,这种情况怎么搞

  •  
  •   nutting · 2019-03-06 20:03:27 +08:00 · 1437 次点击
    这是一个创建于 2095 天前的主题,其中的信息可能已经有所发展或是发生改变。
    有个项目分支 A,有个需求拆成两个分支 A1 和 A2,各负责一个。现在同事提交 A1 了,我切换过来继续搞,中间发现代码少东西呢,需要切到 A 上,提示我有冲突,那我只能按不完整的代码切到 A2 上先提交?
    9 条回复    2019-03-07 09:03:12 +08:00
    TuringGunner
        1
    TuringGunner  
       2019-03-06 20:12:26 +08:00 via Android
    没完全看明白

    我猜需要 rebase A?
    0xABCD
        2
    0xABCD  
       2019-03-06 20:14:42 +08:00 via Android
    冲突一般指的是合并冲突,单纯的切换分支不会有“合并冲突”。你检查一下报错信息贴图出来,估计是本地修改的代码没有提交,不让你切分支,而不是有合并冲突。
    ayase252
        3
    ayase252  
       2019-03-06 20:15:45 +08:00 via iPhone
    没懂,假设 A1 已经合到 A 了,如果你要在 A2 里用 A1 的代码,应该 pull 最新的 A 然后 rebase A
    nutting
        4
    nutting  
    OP
       2019-03-06 20:21:55 +08:00
    @0xABCD 对,不是冲突,就是提示我需要提交,我往哪里提交呢,我不能提到 a1,提到 a2 再切 a1 能行么
    nutting
        5
    nutting  
    OP
       2019-03-06 20:22:27 +08:00
    @ayase252 没合并呢
    hambut
        6
    hambut  
       2019-03-06 20:23:59 +08:00
    git stash save&pop
    ayase252
        7
    ayase252  
       2019-03-06 20:25:47 +08:00 via iPhone
    不是,不让切分支是你有更改没有提交,此时你有两种选择
    1. commit
    2. git stash push,此时你所有的更改会被推到一个栈里,切过去做完事情再切回来 git stash pop
    0xABCD
        8
    0xABCD  
       2019-03-06 20:27:05 +08:00
    @nutting #4 大概了解情况了。像 6 楼说的,在 A1 分支上 git stash,然后切换到 A2 分支上,执行 git stash pop
    nutting
        9
    nutting  
    OP
       2019-03-07 09:03:12 +08:00
    谢谢大家,这个 stash 学会了,可以自由切换了。但是主分支 A 上新增的东西还是拿不到自己的分支上,一切到自己的 A 上的就没了,看来要继续研究一下 rebase 怎么操作了
    关于   ·   帮助文档   ·   博客   ·   API   ·   FAQ   ·   实用小工具   ·   2764 人在线   最高记录 6679   ·     Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 · 27ms · UTC 02:16 · PVG 10:16 · LAX 18:16 · JFK 21:16
    Developed with CodeLauncher
    ♥ Do have faith in what you're doing.