我有一个checkout/v3操作,它从远程存储库中提取
- uses: actions/checkout@v3
with:
repository: myorg/myrepo
ref: mybranch
token: ${{ secrets.ACCESS_TOKEN }}
然后尝试合并远程分支
- run: |
git config --global user.email "me@myorg.com"
git config --global user.name "me"
git fetch
git merge mybranch origin/${{ env.ANOTHER_BRANCH}}
我遇到的第一个问题是,此操作失败并出现意外错误
fatal: refusing to merge unrelated histories
这两个分支都是main的分支,仅对ANOTHER_BRANCH进行了1个单字母更改测试提交。
添加设置--allow-unrelated-histores可以让我忽略这个错误,但是随后我会遇到合并冲突。
问题是这是我唯一遇到冲突的地方,所以我无法解决它。如果我在ANOTHER_BRANCH -〉mybranch之间创建一个pull请求,则没有报告冲突。如果我在本地拉下这些分支并进行相同的合并,则没有冲突。似乎冲突与我的GH Action用例有关。
有什么想法吗?
2条答案
按热度按时间vmdwslir1#
这两个都是 Backbone.js 的分支
请确保使用
git branch -a --contains main
。他们没有。
0md85ypi2#
GitHub操作默认使用浅层克隆,作为一种优化:如果您不打算使用整个历史记录,那么获取它就没有意义!
然而,在您的用例中,您使用的是历史记录,因此您可以使用
fetch-depth: 0
来请求它,这将获取完整的历史记录。解决方案,在不同的问题中找到相同的修复:
参考:https://stackoverflow.com/a/71819349/3216427