การกระทำของ GitHub เพื่อสร้างการเปลี่ยนแปลงโดยอัตโนมัติตามการกระทำทั่วไป
อย่าลังเลที่จะส่งคำขอดึงหรือปัญหา แต่ตรวจสอบให้แน่ใจว่าได้ติดตามเทมเพลต
ยินดีต้อนรับผู้มีส่วนร่วมในการปรับปรุงโครงการนี้ด้วยกัน!
ถ้าคุณชอบสิ่งนี้โปรดให้ดาวฉัน !
สร้างไฟล์เวิร์กโฟลว์เช่น .github/workflows/changelog.yml (คุณสามารถค้นหาได้ใน repo นี้)
name : Generate changelog
on :
release :
types : [created, edited]
jobs :
generate-changelog :
runs-on : ubuntu-latest
steps :
- uses : actions/checkout@v2
with :
fetch-depth : 0
- uses : BobAnkh/[email protected]
with :
REPO_NAME : ' <YourUserName>/<YourRepoName> '
ACCESS_TOKEN : ${{secrets.GITHUB_TOKEN}}
PATH : ' CHANGELOG.md '
COMMIT_MESSAGE : ' docs(CHANGELOG): update release notes '
TYPE : ' feat:Feature,fix:Bug Fixes,docs:Documentation,refactor:Refactor,perf:Performance Improvements 'หมายเหตุ: การสร้าง changelog ต้องการประวัติการกระทำทั้งหมดดังนั้นคุณควรตั้งค่า
fetch-depth: 0ด้วยactions/checkoutหมายเหตุ: การกระทำเริ่มต้นด้วย
docs(changelog)หรือdoc(CHANGELOG)จะไม่ถูกเพิ่มลงใน changelog
โปรดดูหมายเหตุด้านล่างตารางสำหรับวิธีการตั้งค่าพารามิเตอร์
| อินพุต | คำอธิบาย | ที่จำเป็น | ค่าเริ่มต้น |
|---|---|---|---|
| repo_name | ชื่อที่เก็บ | เลขที่ | '' ซึ่งหมายถึงที่เก็บปัจจุบัน |
| access_token | โทเค็นการเข้าถึง GitHub ดู หมายเหตุ 1 | ใช่ | คุณสามารถผ่าน ${{secrets.GITHUB_TOKEN}} |
| เส้นทาง | พา ธ ไปยังไฟล์ของคุณ | เลขที่ | CHANGELOG.md |
| สาขา | สาขาเพื่ออัปเดตไฟล์ที่ระบุในพา ธ | เลขที่ | '' ซึ่งหมายถึงสาขาเริ่มต้น |
| pull_request | เปิดคำขอดึงใหม่หากตั้งค่าเป็นชื่อสาขาเป้าหมาย ดู หมายเหตุ 2 | เลขที่ | '' ซึ่งหมายความว่าไม่เปิดคำขอดึงตามค่าเริ่มต้น |
| commit_message | ส่งข้อความ | เลขที่ | docs(CHANGELOG): update release notes |
| พิมพ์ | ประเภทของการกระทำที่คุณต้องการเพิ่มในการเปลี่ยนแปลง ดู หมายเหตุ 3 | เลขที่ | 'feat:Feature,fix:Fix' |
| ผู้เข้าร่วม | ผู้เข้าร่วมที่คุณต้องการใช้เพื่ออัปเดตไฟล์ ดู หมายเหตุ 4 | เลขที่ | '' ซึ่งหมายถึงค่าเริ่มต้น |
| default_scope | ขอบเขตเริ่มต้นที่จะถือ Commits ที่ไม่ผ่านการคัดเลือกทั้งหมด | เลขที่ | general |
| ปราบปราม _unscoped | ไม่ว่าจะยกเว้นการกระทำที่ยังไม่ผ่านการเจรจา | เลขที่ | เท็จ |
| unreleased_commits | ไม่ว่าจะรวมการกระทำที่ยังไม่เผยแพร่ในการเปลี่ยนแปลง | เลขที่ | เท็จ |
| regenerate_count | regenerate n changelog 'releases ล่าสุด ดู หมายเหตุ 5 | เลขที่ | 0 |
| แทนที่ _empty_release_info | แทนที่ข้อมูลปล่อยว่างเปล่าด้วยคำบางคำ | เลขที่ | เท็จ |
หมายเหตุ 1 : ${{secrets.GITHUB_TOKEN}} มีขีด จำกัด อัตราที่เล็กกว่าโทเค็นการเข้าถึงส่วนบุคคล (PAT) ดังนั้นหากคุณมีคำขอมากขึ้น (commits, PRS ฯลฯ ) หรือเผชิญกับ 403 อัตรา จำกัด ใช้ PAT แทน
หมายเหตุ 2 : ต้องใช้ PULL_REQUEST กับ BRANCH ร่วมกันทั้งสอง ควรได้รับ ชื่อสาขาที่ถูกต้องหากคุณต้องการ เปิดคำขอดึง GA จะเปิดคำขอดึงจาก BRANCH (สาขาหัว) ไปยัง PULL_REQUEST (สาขาฐาน) ปล่อยให้ PULL_REQUEST ว่างเปล่าหากคุณไม่ต้องการเปิดคำขอดึง
หมายเหตุ 3 : คุณสามารถกำหนดคำหลักที่ตรวจพบจากข้อความ commit และคำที่เกี่ยวข้องที่นำเสนอใน changelog ใน TYPE อินพุต ตัวอย่างเช่นกำหนด feat:Feature,fix:Bug Fixes จะมีข้อความที่กระทำเช่น feat(main): add new option ที่จะนำเสนอในการเปลี่ยนแปลงภายใต้ Feature ส่วนหนึ่งและมีข้อความเช่น fix(server): adjust rendering ที่จะแสดงในการเปลี่ยนแปลงภายใต้ Bug Fixes
หมายเหตุ 4 : COMMITTER ควรอยู่ในรูปแบบ: 'author <author@email>'
หมายเหตุ 5 : แน่นอนว่าการเผยแพร่ทั้งหมดที่ไม่มีอยู่ในการเปลี่ยนแปลงจะถูกเพิ่มเข้าไปใน Changelog ใช้พารามิเตอร์นี้เพื่อสร้าง Changelog 'ล่าสุดของ N Releases ค่าเริ่มต้นตั้งค่าเป็น 0 หมายถึงเฉพาะการสร้างสำหรับรุ่นใหม่เท่านั้น คุณสามารถตั้งค่าเป็น -1 เพื่อสร้างใหม่ทั้งหมด
หมายเหตุ 6 : คุณสามารถใช้รูปแบบด้านล่างเพื่อหลีกเลี่ยงบางบรรทัดในคำอธิบายการเปิดตัวเพื่อปรากฏใน Changelog:
<!-- HIDE IN CHANGELOG BEGIN --> See CHANGELOG for more details. This line will be hided when changelog is generated. <!-- HIDE IN CHANGELOG END -->
@bobankh
คุณควรปฏิบัติตามจรรยาบรรณของเรา
ดูแนวทางที่มีส่วนร่วมสำหรับการประชุมที่มีส่วนร่วม
ตรวจสอบให้แน่ใจว่าได้ผ่านการทดสอบทั้งหมดก่อนส่งรหัสของคุณ คุณสามารถดำเนินการ pytest -ra ที่ไดเรกทอรีรากเพื่อเรียกใช้การทดสอบทั้งหมด
คุณสามารถใช้โหมดท้องถิ่นเมื่อพัฒนามันบนเครื่องในพื้นที่ของคุณนี่คือข้อมูลช่วยเหลือบรรทัดคำสั่ง:
usage: main.py [-h] [-m MODE] [-f FILE] [-o OUTPUT] [-t TOKEN]
optional arguments:
-h, --help show this help message and exit
-m MODE, --mode MODE choose to use local-dev mode or on github action mode.
Valid values are 'local' or 'github'
-f FILE, --file FILE configuration file to read from when running local-dev
mode
-o OUTPUT, --output OUTPUT
output file when running local-dev mode
-t TOKEN, --token TOKEN
Github Access TokenYixin Shen | Jonathan Mang | เซบาสเตียนRühl |
Apache-2.0 © Bobankh