name:Latest Newsletter Postson:schedule:# 1pm UTC on Mondays-cron:'013**MON'workflow_dispatch:jobs:update-readme-with-blog:name:Update this repo's README with latest blog postsruns-on:ubuntu-lateststeps:-uses:actions/checkout@v2-uses:gautamkrishnar/blog-post-workflow@masterwith:feed_list:'https://rss.beehiiv.com/feeds/NggVbrRMab.xml'comment_tag_name:'NEWSLETTER-POST-LIST'
Đối với bài viết blog:
name:Latest content I make workflowon:schedule:# Runs every day at midnight UTC-cron:'00***'workflow_dispatch:jobs:update-readme-with-blog:name:Update this repo's README with latest blog postsruns-on:ubuntu-lateststeps:-uses:actions/checkout@v2-uses:gautamkrishnar/blog-post-workflow@masterwith:feed_list:'https://www.nickyt.co/feed'
Đối với video YouTube:
Đối với video YouTube, tôi có một quy trình làm việc tùy chỉnh sử dụng YouTube API, lấy nội dung video mới nhất của tôi và sau đó commit các thay đổi trực tiếp vào nhánh chính.
name:Update readme videoson:schedule:# Runs every Monday at 1pm UTC-cron:'013**1'workflow_dispatch:jobs:update_profile_data:name:Update readme videosruns-on:ubuntu-latestenvironment:allsteps:-uses:actions/checkout@v2-name:Setup Node.jsuses:actions/setup-node@v4with:node-version:'22'-name:Update READMEenv:YOUTUBE_API_KEY:${{ vars.YOUTUBE_API_KEY }}run:|cd scriptsnpm installnode --experimental-transform-types update-readme.ts-name:Commit changesid:commitenv:GITHUB_TOKEN:${{ secrets.GITHUB_TOKEN }}run:|git config user.name "GitHub Actions Bot"git config user.email "<>"git pull origin maingit add .if [[ -n "$(git status --porcelain)" ]];
thengit commit -m "Update README"git push origin mainfi
Mỗi workflow chạy theo một lịch trình khác nhau, nhưng bất cứ khi nào nó chạy, Hồ sơ GitHub của tôi sẽ được cập nhật, nếu có nội dung mới cho loại nội dung cụ thể đó.
Nội dung chính
Tận dụng Hệ sinh thái GitHub Actions
Có một hệ sinh thái GitHub Actions khổng lồ có sẵn trongGitHub Actions Marketplace.
Hành độngblog-post-workflowchỉ là một ví dụ về cách bạn có thể tận dụng các giải pháp có sẵn thay vì viết mọi thứ từ đầu.
Trước khi bạn viết một workflow/script tùy chỉnh, hãy kiểm traGitHub Actions Marketplaceđể xem liệu đã có ai giải quyết vấn đề của bạn chưa.
README như một Mẫu
Chúng tôi kết hợp các tự động hóa của mình với README.md từ repo đặc biệt, nó đóng vai trò như một mẫu với các phần chỗ dành sẵn cụ thể.
Đây là cách README của tôi được cấu trúc:
# Hi!
I'm Nick Taylor.
👋🏻 [Static bio content here...] ## Latest Newsletter Posts## Latest Blog Posts and Talks## Upcoming Live Streams## Latest Videos
Mỗi phần nằm giữa các chú thích HTML sẽ được tự động thay thế bằng nội dung được tạo bởi GitHub Actions.
Hành độngblog-post-workflowtìm kiếm các chú thích mặc địnhvà, nhưng bạn có thể tùy chỉnh điều này với tham sốcomment_tag_namenhư tôi làm cho phần bản tin của mình (NEWSLETTER-POST-LIST).
Nội dung tĩnh (tiểu sử, thông tin liên hệ, v.v.) vẫn giữ nguyên, trong khi các phần động được cập nhật tự động.
Là một người sáng tạo nội dung, tôi xuất bản một số bản tin, video hoặc bài đăng trên blog và bùm!
Hồ sơ GitHub của tôi được cập nhật.
Tôi không bị ràng buộc vào việc duy trì nội dung thủ công ở nhiều nơi.
Tôi tập trung vào việc tạo ra nội dung chất lượng, và tự động hóa xử lý việc phân phối.
Bắt đầu
Nếu bạn muốn xây dựng một thứ gì đó tương tự:
- Tạo kho lưu trữ hồ sơ đặc biệt của bạn.
Tạo một kho lưu trữ công khai có tên chính xác như tên người dùng của bạn, ví dụ:https://github.com/nickytonline/nickytonline - Thêm các phần chỗ dành sẵn vào README của bạn, nơi nội dung động sẽ được đặt
- Bắt đầu với một loại nội dung (bài đăng trên blog thường là dễ nhất)
- Xây dựng một script đơn giản để lấy và định dạng dữ liệu, hoặc sử dụng một hành động có sẵn nhưgautamkrishnar/blog-post-workflow
- Thiết lập một GitHub Action để chạy nó theo lịch trình
Kết luận
Với các tự động hóa được thiết lập, hồ sơ của bạn luôn được cập nhật tự động thay vì chỉ là một ảnh chụp nhanh từ lần cuối cùng bạn nhớ cập nhật nó.
Đã được vài năm và hồ sơ GitHub của tôi luôn luôn cập nhật.
Tôi không bao giờ phải nghĩ về nó.
Nếu bạn đang xuất bản nội dung thường xuyên, loại tự động hóa này rất đáng để thiết lập.
Hãy xemkho lưu trữ đặc biệt của tôinếu bạn muốn sử dụng toàn bộ thiết lập.







![[Tự học C++] Số dấu phẩy động(float, double,…) trong C++](https://cafedev.vn/wp-content/uploads/2019/12/cafedevn_c_develoment-100x70.jpg)

