GiitHub CLI의 1인 팟캐스트
8493 단어 GitHub CLIidea
!
2022-04-26
gh run rerun
의 기술은 --failed
로 변경되었다.초대 요청 작성
지점 제출 후
gh pr create
제작.제목 등은 옵션을 사용하지 않고 메뉴로 지정되어 있지만, 탭은 대부분 'Addmetadata' 가 아니라 -l
[2] 를 사용합니다.$ gh pr create -l dependencies
? Where should we push the 'topic/update-parse5' branch? hankei6km/gas-feed2notion
Creating pull request for topic/update-parse5 into main in hankei6km/gas-feed2notion
? Title Update `parse5` to 7.0.0
? Body <Received>
? What's next? [Use arrows to move, type to filter]
> Submit
Add metadata
Cancel
요청한 검사 확인
pull request의 검사 상황
gh pr checks
은 확인할 수 있지만, 검사가 끝나기 전에 몇 번의 명령을 실행하는 것은 매우 번거롭다.이 옵션--watch
은 대부분 검사 완료를 모니터링하는 데 사용됩니다.$ gh pr checks --watch
Refreshing checks status every 10 seconds. Press Ctrl+C to quit.
Some checks are still pending
0 failing, 2 successful, 0 skipped, and 1 pending checks
* push... https://github.com/hankei6km/gas-feed2notion/runs/6059983820?check_suite_focus=true
✓ Anal... 1m44s https://github.com/hankei6km/gas-feed2notion/runs/6059912448?check_suite_focus=true
✓ CodeQL 2s https://github.com/hankei6km/gas-feed2notion/runs/6059926888
All checks were successful
0 failing, 3 successful, 0 skipped, and 0 pending checks
✓ Anal... 1m44s https://github.com/hankei6km/gas-feed2notion/runs/6059912448?check_suite_focus=true
✓ CodeQL 2s https://github.com/hankei6km/gas-feed2notion/runs/6059926888
✓ push... 53s https://github.com/hankei6km/gas-feed2notion/runs/6059983820?check_suite_focus=true
워크플로우 실행 확인
종료 요청을 작성하지 않은 경우 이러한 작업을 수행할 수 없지만 다른 상황에서 시작된 워크플로우
gh run wath
에서는 종료를 모니터링할 수 있습니다(선택 사항이 아닌 하위 명령).명령을 입력하면 저장소에서 실행 중인 워크플로우가 표시되고 선택됩니다.JOB와 STEP 단위의 진행 상황을 표시하는 워크플로우를 하나만 선택할 수 있습니다[3].
STEP이 많을 때나
.yml
의 내용이 변경될 때 사용한다.$ gh run watch
? Select a workflow run [Use arrows to move, type to filter]
> * Edit description of `pacakge.json`, CodeQL (topic/edit-description) 6s ago
* Edit description of `pacakge.json`, Push to GAS project (topic/edit-description) 7s ago
Refreshing run status every 3 seconds. Press Ctrl+C to quit.
* topic/edit-description Push to GAS project #11 · 2182045135
Triggered via push less than a minute ago
JOBS
* push-to-gas (ID 6058216405)
✓ Set up job
✓ Run actions/checkout@v2
✓ Use Node.js 14.x
✓ Cache node modules
* Install clasp
* Install modules
* Run tests
* Build files to push gas project
* Setup files for clasp
* Push source files to gas project
* Cleanup files for clasp
* Post Cache node modules
* Post Run actions/checkout@v2
실행에 실패한 STEP 로그를 표시합니다.
단계 오류에 대한 로그를 표시하려면
gh run view --log-failed
를 사용합니다.run-id나job-id를 지정하지 않으면 목록에서 선택할 수 있습니다.STEP에서 많이 출력하면 스크롤되지만, 터미널에서 잘못된 부분은 색상으로 구분되기 때문에 잘못된 부분은 판별하기 쉽다.
$ gh run view --log-failed
? Select a workflow run [Use arrows to move, type to filter]
✓ Bump parse5 from 6.0.1 to 7.0.0, CodeQL (dependabot/npm_and_yarn/parse5-7.0.0) 1h39m13s ago
> X Bump parse5 from 6.0.1 to 7.0.0, Push to GAS project (dependabot/npm_and_yarn/parse5-7.0.0) 1h39m14s ago
✓ Merge pull request #14 from hankei6km/dependabot/npm_and_yarn/rollup/plugin-node-resolve-13.2.1, CodeQL (main) 70h41m48s ago
push-to-gas Run tests 2022-04-21T04:47:46.5716882Z ##[group]Run npm run test:build
push-to-gas Run tests 2022-04-21T04:47:46.5717171Z npm run test:build
push-to-gas Run tests 2022-04-21T04:47:46.5766639Z shell: /usr/bin/bash -e {0}
push-to-gas Run tests 2022-04-21T04:47:46.5766877Z ##[endgroup]
push-to-gas Run tests 2022-04-21T04:47:46.7748273Z
<snip>
push-to-gas Run tests 2022-04-21T04:47:47.9152997Z
push-to-gas Run tests 2022-04-21T04:47:47.9154872Z ./src/main.ts → build...
push-to-gas Run tests 2022-04-21T04:47:52.0783098Z (!) Circular dependency
push-to-gas Run tests 2022-04-21T04:47:52.0784254Z node_modules/hast-util-select/lib/any.js -> node_modules/hast-util-select/lib/pseudo.js -> node_modules/hast-util-select/lib/any.js
push-to-gas Run tests 2022-04-21T04:47:52.0785244Z [!] Error: 'default' is not exported by node_modules/parse5/dist/index.js, imported by src/util.ts
<snip>
실행에 실패한 JOB 다시 실행
만약 실패한 원인이push코드가 아니라 다른 원인이라면 원인을 배제한 후에 실행하고 싶은 일이 있습니다.
이 경우,run-id를 지정하지 않은 상태에서 사용하면
gh run rerun --failed
실행에 실패한 작업 흐름 목록에서 다시 실행됩니다.이때--failed
실행된 것은 가짜 JOB(웹 UI에 있는 Re-run failed jobs와 동일)였다.환경 설정이 잘못되었거나 dependabotbump가 시크릿 연결에 실패했을 때 사용합니다.
$ gh run rerun
? Select a workflow run [Use arrows to move, type to filter]
> X Bump @rollup/plugin-node-resolve from 13.2.0 to 13.2.1, Push to GAS project (dependabot/npm_and_yarn/rollup/plugin-node-resolve-13.2.1) 4m6s ago
X Bump rollup-plugin-license from 2.6.1 to 2.7.0, Push to GAS project (dependabot/npm_and_yarn/rollup-plugin-license-2.7.0) 124h30m36s ago
병합 요청
gh pr merge
에서는 할 수 있지만 지점을 취소하고 싶어 집행gh pr merge -m -d
후 git fetch origin --prune
한다.dependabet의 bump
여기도 자동화 등이 잘 이뤄지지 않아
gh pr comment -b '@dependabot merge'
처럼 주석으로 조작되고 있다.그러나 여러 개의 버프가 있을 때는'한 개 병합 후 다른 자동 회신'의 조건을 모르기 때문에 웹 UI 또는 GitHub Mobile를 사용하는 경우도 있다.
GitHub CLI에서 그림7-1의force-pusihed가 보여준 부분[4]을 얻으면 확인하기 쉬우나 아직 방법을 모른다.
▶ 그림 7-1 리베이스 자동 조작
끝말
사실 얼마 전에야'
rerun
등 일람에서 대상을 선택할 수 있다'는 것을 알아차렸다.그래서 재집행을 포함한 일련의 조작이 쉬워져서 글을 써 보았다.각주
이번에는 독단적으로 이걸 1인 팟캐스트라고 해요.↩︎
'GiitHub CLI를 통해 태그 이름 입력 완성'를 살짝 홍보한다.↩︎
명령을 여러 개 실행하면 동시에 여러 개의 실행 상황을 확인할 수 있다.↩︎
이 부분의 이름을 모르기 때문에 검색하기 어렵다.↩︎
Reference
이 문제에 관하여(GiitHub CLI의 1인 팟캐스트), 우리는 이곳에서 더 많은 자료를 발견하고 링크를 클릭하여 보았다 https://zenn.dev/hankei6km/articles/pull-request-with-github-cli텍스트를 자유롭게 공유하거나 복사할 수 있습니다.하지만 이 문서의 URL은 참조 URL로 남겨 두십시오.
우수한 개발자 콘텐츠 발견에 전념 (Collection and Share based on the CC Protocol.)