Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/git/21.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 merge-没有提交历史记录,但没有内容_Git_Merge_Gitlab_Git Merge - Fatal编程技术网

Git merge-没有提交历史记录,但没有内容

Git merge-没有提交历史记录,但没有内容,git,merge,gitlab,git-merge,Git,Merge,Gitlab,Git Merge,在GitLab中遇到了一个bug。我的一个项目有50多个模块。因此,当我合并分支时,我使用bash脚本,而不是使用GitLab合并UI。到目前为止,这一切都很顺利。这次我面临一个奇怪的问题。合并提交将提交历史记录从源分支传输到目标分支,但不传输源分支的内容。我试图将branch cr_集成到branch cr_版本中。在当地,我检查了cr_版本 我用于合并的脚本如下所示: git pull git merge --no-ff origin/cr_integrate -s ours git add

在GitLab中遇到了一个bug。我的一个项目有50多个模块。因此,当我合并分支时,我使用bash脚本,而不是使用GitLab合并UI。到目前为止,这一切都很顺利。这次我面临一个奇怪的问题。合并提交将提交历史记录从源分支传输到目标分支,但不传输源分支的内容。我试图将branch cr_集成到branch cr_版本中。在当地,我检查了cr_版本

我用于合并的脚本如下所示:

git pull
git merge --no-ff origin/cr_integrate -s ours
git add *
git commit -m "Integrate merged into Release by script"
git push
该项目包含子模块,并且.gitmodules文件的内容对于不同的分支是不同的,因此我使用-s-ours来避免冲突。脚本是否有问题,或者这是GitLab的一个bug

因此,我使用-s来避免冲突

但是,我们的战略不是解决冲突的战略。这是一种合并策略

我喜欢阅读文档:

我们的合并策略。。。根本不看另一棵树包含什么。它丢弃了其他树所做的一切,声明我们的历史包含其中发生的一切

[我的重点]

那么,现在,你说:

合并提交将提交历史记录从源分支传输到目标分支,但不传输源分支的内容


是的。因为这就是你说的。也许你的意思是-s递归-X我们的?这是一项解决冲突的战略

例如,请参见感谢您的解释。我不知道这件事。