将原始存储库更新合并到私有克隆/分叉存储库 [重复]

Posted

技术标签:

【中文标题】将原始存储库更新合并到私有克隆/分叉存储库 [重复]【英文标题】:Merge original repo updates into a private cloned/forked repo [duplicate] 【发布时间】:2021-11-04 02:29:21 【问题描述】:

我的目标是克隆或分叉一个项目以对其进行修改,但我想继续受益于对原始项目所做的更新(来自主分支或其他分支)并将它们合并到我自己的私人仓库中。

创建一个分叉会强制 repo 公开,这不是一个选项

最好的做法是什么?合并来自同一项目的其他分支的更新怎么样?

现在我所做的是下载源代码并使用它设置一个新的 repo。这当然意味着每当我想应用更新时,我都必须下载更新的文件并用这些文件覆盖我的文件,这并不理想,因为如果我在我的仓库中修改相同的文件,我必须对每个文件进行相同的修改我想更新。一定有办法做到这一点,但经过几个小时的谷歌搜索,我还没有找到我要找的东西

【问题讨论】:

***.com/search?q=%5Bgit%5D+update+forked+repository 【参考方案1】:

我的方法如下(对于分叉的存储库):

git remote add upstream upstream-url # Point to the original repo

git merge --no-commit upstream # Merge changes from upstream with no auto commit

# Review changes...

git commit # Commit changes (no comment required)

【讨论】:

如何将文件“合并”在一起?说,我有一个从原始项目修改的文件。对项目的提交会更新该文件。合并提交会覆盖我的文件,但我想要的是保留我的更改和原始更改(假设它们不会引起冲突) 如果有一些本地更改,Git 不会合并任何内容。在这种情况下,您必须隐藏或提交它们才能继续合并。 啊当然,我怎么能忘记那个:facepalm: 让我知道我的解决方案是否有效。问候 遇到了一些麻烦,但我终于设法让它完全按照我的意愿工作。我必须使用 --allow-unrelated-histories 来使其工作

以上是关于将原始存储库更新合并到私有克隆/分叉存储库 [重复]的主要内容,如果未能解决你的问题,请参考以下文章

将原始 GitHub 存储库中的新更新拉入分叉的 GitHub 存储库

如何将我的分叉回购返回到原始回购

bitbucket:分叉与克隆?

分叉存储库上的原始存储库问题

您将如何将 AWS CodeCommit 存储库分叉到另一个 CodeCommit 存储库?

从 Dockerfile 克隆私有 git 存储库