git 有两个分支 a、a->b, a 有更新以后用什么语句更新到 b?

2015-09-07 11:28:50 +08:00
 zioc

a :当前线上版本,需要不断修复 bug
b :来源于 a ,在 b 上面开发新模块

两个分支都要保留,不能删除。

在 a 上面更新代码以后,怎么也更新到 b ?

4917 次点击
所在节点    git
27 条回复
markowitz73
2015-09-07 11:32:20 +08:00
git checkout a & git pull & git checkout b & git rebase a
orvice
2015-09-07 11:33:58 +08:00
线上分支不应该直接在上面更新代码吧
ifconfig
2015-09-07 11:40:09 +08:00
看看 git flow 流程, A 分支有 bug 应该新开一个 /hotfix 分支,修改上线后合并到 B 的 feature 分支
zioc
2015-09-07 11:43:29 +08:00
@markowitz73 你是不是看错需求了?

@orvice 啥意思?
markowitz73
2015-09-07 11:45:08 +08:00
@zioc 我觉得我写的满足了你的需求。
malcolmyu
2015-09-07 11:45:26 +08:00
似乎只能使用 rebase 了
laucie
2015-09-07 11:48:25 +08:00
merge/rebase 有问题吗? 一楼的说的应该没问题吧
ivyshark
2015-09-07 11:50:21 +08:00
切到 b 然后 rebase a
adrianzhang
2015-09-07 11:52:53 +08:00
这种开发模式是非常典型可以用 Git 最佳实践的。请参考: http://jiongks.name/blog/a-successful-git-branching-model/
muteZephyr
2015-09-07 11:55:39 +08:00
一楼可行,不想切分支的话可以这么搞,效果相同: 在 b 上 git pull --rebase origin a
otakustay
2015-09-07 11:59:14 +08:00
一种做法是走 rebase
git checkout b
git rebase a

我觉得更好的做法是每一个 BUG 都从 a 拉出一个分支,这个分支开发完后同时 merge 到 a 和 b
zioc
2015-09-07 12:09:55 +08:00
@otakustay
@markowitz73
@ivyshark
先谢谢回复

rebase 或 merge 会删除分支吗? 我的需求是 a 、 b 分支都不能消失
woshifyz
2015-09-07 12:12:32 +08:00
cherry-pick 看是不是你想要的
RoshanWu
2015-09-07 12:23:17 +08:00
如果不是“同步”分支,建议 cherry-pick
otakustay
2015-09-07 12:34:12 +08:00
@zioc 不会,分支只有你手动才删得掉,其它任何操作都不会删除分支
young
2015-09-07 12:48:22 +08:00
难道 不是 git checkout a -> git merge b 吗?
pyKun
2015-09-07 12:49:16 +08:00
cherry-pick
cherry-pick
cherry-pick
hyq
2015-09-07 12:49:39 +08:00
少量提交可以用 cherry-pick
多一点的提交,看看能不能用 rebase
TankyWoo
2015-09-07 12:53:48 +08:00
如果能 merge --ff-only, 也可以这样
coolzilj
2015-09-07 12:55:36 +08:00
建议楼主先熟悉一下 git 基础和 git-flow ,
楼上说的 rebase/merge/cherry-pick 都可以,
用哪种方法完全取决去个人爱好,
洁癖用 rebase
强迫症用 merge
爱折腾用 cherry-pick

这是一个专为移动设备优化的页面(即为了让你能够在 Google 搜索结果里秒开这个页面),如果你希望参与 V2EX 社区的讨论,你可以继续到 V2EX 上打开本讨论主题的完整版本。

https://www.v2ex.com/t/218802

V2EX 是创意工作者们的社区,是一个分享自己正在做的有趣事物、交流想法,可以遇见新朋友甚至新机会的地方。

V2EX is a community of developers, designers and creative people.

© 2021 V2EX