Git错误将存储库的子文件夹合并到不同存储库的个子文件夹时,对象名称无效



我正在尝试将repository2master分支的子文件夹合并到repository1master分支,使用@VonC的答案中的步骤-如何在git中合并子目录?

我成功地执行了前两个步骤(在repository1master分支中添加repository2远程,然后执行从repository2repository1的"空"合并(。我的存储库结构如下:

repository2/master
DataLib
MessagingLib.V2
.... files I want to merge into my repository1 branch
repository1/master
MessagingLib
.... files I want to merge the repository2 changes into

我已经签出了repository1master分支。因此,对于git read-tree,我使用以下命令:

git read-tree --prefix=MessagingLib.V2/ -u repository2/master:repository1/MessagingLib

但是我得到错误

fatal: Not a valid object name repository2/master:repository1/MessagingLib

我需要什么read-tree命令?

更新

这些也不起作用:

git read-tree --prefix=DataLib/MessagingLib.V2/ -u repository2/master:repository1/MessagingLib

git read-tree --prefix=DataLib/MessagingLib.V2/ -u repository2/master:repository1/master

由于我试图将repository2中的子文件夹合并到repository1中不同名称的子文件夹中,所以这一过程变得复杂起来。我将repository1中的子文件夹重命名为MessagingLib.V2(以匹配repository2上的名称(,然后我可以使用:

git read-tree --prefix=MessagingLib.V2/ -u repository2/master:DataLib/MessagingLib.V2

最新更新