Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/git/20.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
如何将GIT存储库导入另一个具有历史记录的存储库?_Git - Fatal编程技术网

如何将GIT存储库导入另一个具有历史记录的存储库?

如何将GIT存储库导入另一个具有历史记录的存储库?,git,Git,我想将一个存储库嵌入到另一个存储库中,方式类似于github处理项目页面的方式 基本思想是创建孤立分支(没有父级): 要创建github项目页面,只需命名孤立分支gh页面,并开始提交它。现在我想在这个州包括另一个git跟踪的项目,有历史记录 预期结果将是: git clone mymultipleprojects folder cd folder git co master # Master project git co second # Completely different, or j

我想将一个存储库嵌入到另一个存储库中,方式类似于github处理项目页面的方式

基本思想是创建孤立分支(没有父级):

要创建github项目页面,只需命名孤立分支
gh页面
,并开始提交它。现在我想在这个州包括另一个git跟踪的项目,有历史记录

预期结果将是:

git clone mymultipleprojects folder
cd folder
git co master  # Master project
git co second  # Completely different, or just related project

我知道我可以复制其他项目文件并提交此文件,但这样我会丢失历史记录,我可以以某种方式保留历史记录吗?

您可以添加另一个存储库作为附加源:

git remote add branch-to-merge URL
并将其拉入您的
master
分支:

git pull branch-to-merge master
或者,在GIT的新版本中,可以(从要将更改拉入的分支)按如下方式运行上一个命令:

git merge branch-to-merge --allow-unrelated-histories

很好很简单,做了我需要的。谢谢你简单明了的回答!自git 2.9以来,这个答案不再有效,但可以通过将
--allow unrelated histories
参数添加到pull语句中,使其
git pull分支合并master--allow unrelated histories
来轻松解决。
git merge branch-to-merge --allow-unrelated-histories