![](/img/trans.png)
[英]Is there a way to checkout a Github repo and branch without setting up a remote?
[英]Github Actions - Checkout another repo and merge a remote branch - strange behavior
我有一個從遠程存儲庫中提取的 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
這些都是主分支的分支,只有 1 個字母更改測試提交給 ANOTHER_BRANCH。
添加設置 --allow-unrelated-histories 使我克服了該錯誤,但隨后我遇到了合並沖突。
問題是這是我唯一遇到沖突的地方,所以我無法解決它。 如果我在 from ANOTHER_BRANCH -> mybranch 之間創建拉取請求,則沒有報告的沖突。 如果我在本地拉下這些分支並進行相同的合並,則不會發生沖突。 似乎沖突與我的 GH Action 用例有關。
有任何想法嗎?
GitHub 操作默認使用淺克隆,作為一種優化:如果你不打算使用它,那么獲取整個歷史是沒有意義的!
但是,在您的用例中,您正在使用歷史記錄,因此您可以使用fetch-depth: 0
請求它。 這將獲取完整的歷史記錄。
解決方案,在具有相同修復的不同問題中找到:
- uses: actions/checkout@v3
with:
fetch-depth: 0
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.