一个项目中包含两个相对独立的部分,这两个部分开发时各自建立了自己的 git,现在需要合并到一起

2014-07-22 17:26:30 +08:00
 yingluck
想把git历史也合并到一起,有办法吗?
3862 次点击
所在节点    git
13 条回复
lotem
2014-07-22 18:36:52 +08:00
有。
msg7086
2014-07-22 19:49:53 +08:00
直接merge分支就行。

如果要放进子目录里,需要重写历史。
akfish
2014-07-22 21:11:36 +08:00
4个小时过去了,lz不会还在解决merge conflict吧,233。
HackerOO7
2014-07-22 22:55:55 +08:00
看楼主说的不会是两个仓储吧。
nilennoct
2014-07-22 23:00:37 +08:00
@akfish 相对独立的两个部分不应该产生 conflict 吧。
pyKun
2014-07-22 23:03:19 +08:00
可以

参考1,用submodule
参考2,目录隔离也可以
参考3,kernel那么多source tree不是还要往一个git里去“合”?累了那么年都没喊过苦
GoRuby
2014-07-22 23:04:01 +08:00
应该没法合并历史,如果本身就是两个部分,干嘛要合并呢?这个需求真是比较少见。通常都是能拆则拆啊
yingluck
2014-07-22 23:18:46 +08:00
@lotem 请讲!
yingluck
2014-07-22 23:19:18 +08:00
@akfish 还没下手 正在想办法
yingluck
2014-07-22 23:20:00 +08:00
@HackerOO7 对 是这样的 两个仓储 两个git
nicai000
2014-07-22 23:29:32 +08:00
@pyKun kernel是因为都是子模块在各自维护各自的部分, 最后"合"到Linus的tree而已

另外回LZ, submodule
bsbgong
2014-07-23 11:15:40 +08:00
我们用的是submodule
当作两个应用来对待,可继续保持分离开发,只是在主应用上注意自动更新submodule。这个参考:
http://stackoverflow.com/questions/4611512/is-there-a-way-to-make-git-pull-automatically-update-submodules/4611550#4611550
headwindx
2014-07-31 10:47:06 +08:00
@GoRuby 对啊,原本就是两个不同的仓库,这种情况是不能合并的。合并应该是针对同一个仓库的不同分支而言的。我理解的没错吧?

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

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

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

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

© 2021 V2EX