一隻狐狸
1.8
安裝後只需註解/rebase
即可觸發操作:
要設定操作,只需將以下行新增至您的.github/workflows/rebase.yml
工作流程檔案:
name : Automatic Rebase
on :
issue_comment :
types : [created]
jobs :
rebase :
name : Rebase
runs-on : ubuntu-latest
if : >-
github.event.issue.pull_request != '' &&
(
contains(github.event.comment.body, '/rebase') ||
contains(github.event.comment.body, '/autosquash')
)
steps :
- name : Checkout the latest code
uses : actions/checkout@v3
with :
token : ${{ secrets.GITHUB_TOKEN }}
fetch-depth : 0 # otherwise, you will fail to push refs to dest repo
- name : Automatic Rebase
uses : cirrus-actions/[email protected]
with :
autosquash : ${{ contains(github.event.comment.body, '/autosquash') || contains(github.event.comment.body, '/rebase-autosquash') }}
env :
GITHUB_TOKEN : ${{ secrets.GITHUB_TOKEN }}
注意:為確保 GitHub Actions 在成功變基操作後自動重新執行,請使用
actions/checkout@v2
和cirrus-actions/[email protected]
個人存取權杖。有關更多詳細信息,請參閱以下討論。
例子
...
- name : Checkout the latest code
uses : actions/checkout@v3
with :
token : ${{ secrets.PAT_TOKEN }}
fetch-depth : 0 # otherwise, you will fail to push refs to dest repo
- name : Automatic Rebase
uses : cirrus-actions/[email protected]
env :
GITHUB_TOKEN : ${{ secrets.PAT_TOKEN }}
如果您正在執行的操作不會直接引用特定的拉取要求,您也可以選擇指定要變基的分支的 PR 編號:
- name : Automatic Rebase
uses : cirrus-actions/[email protected]
env :
GITHUB_TOKEN : ${{ secrets.PAT_TOKEN }}
PR_NUMBER : 1245
可以使用評論的author_association
欄位來限制誰可以呼叫該操作並跳過其他人的變基。只需將以下表達式加入到工作流程文件中的if
語句中: github.event.comment.author_association == 'MEMBER'
。請參閱文件以取得author_association
的所有可用值的清單。
GitHub 還可以選擇在變基後自動駁回現有審核,因此您需要再次重新批准,這將觸發測試工作流程。在儲存庫中進行設定設定>分支>分支保護規則>合併前需要審查拉取請求>推送新提交時取消過時的拉取請求批准。