繁体   English   中英

如何将一个git的master分支提交添加到另一个git中?

[英]How to add master branch commits of one git into another git?

我有一个git存储库,其主分支位于xxx commit。 这也包括一些分支。

主分支源(带有xxx commit)是从2年前互联网上的一些git repo中提取的。 但是现在,该开源软件包的代码已更新。 因此,我想使用最新的master分支代码。

但是不想影响我在现有源上的现有分支。

所以,请让我知道,我如何才能将这些最新提交提交到现有的主服务器中。 我还需要所有最新的master提交。

这是git rebase的完美用例。

如果我理解正确,那么您在提交A处分叉/丢失了源代码。然后添加了提交BCD。 同时,添加的原始源代码提交XYZ,现在看起来像A - X - Y - Z (master) 您看起来像A - B(branch1) - C - D (master) 您想保留旧的工作,但要使用新的源代码。

首先,将您要保存的所有工作放入特定的命名分支。 (还请记住,如果您具有提交的引用(分支),则无论如何都可以始终恢复该状态。以下过程将移动分支,因此您可能希望创建“备份分支”):

# A - B(branch1, backup1) - C - D (master, branch2, backup2)
git checkout master && git reset --hard A 
# A(master) - B(branch1, backup1) - C - D (branch2, backup2)
git pull source # The remote corresponding to the open source repo
# A - B - C - D (branch2, backup2)
#   - X - Y - Z (master)
git rebase master branch1
git rebase branch1 branch2
# A - X - Y - Z (master) - B' (branch1) - C' - D' (branch2)

如果这不是您想要的,请在下面评论。

此处此处的 GitHub帮助页面说明了如何使叉式存储库与源存储库保持同步。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM