{"id":22979,"date":"2026-11-06T16:02:56","date_gmt":"2026-11-06T09:02:56","guid":{"rendered":"https:\/\/blogdee.com\/?p=22979"},"modified":"2026-11-06T16:02:56","modified_gmt":"2026-11-06T09:02:56","slug":"github-actions-lockfiles-%e0%b9%80%e0%b8%9b%e0%b8%b4%e0%b8%94%e0%b8%95%e0%b8%b1%e0%b8%a7-ga-%e0%b8%8a%e0%b9%88%e0%b8%a7%e0%b8%a2%e0%b8%a3%e0%b8%b1%e0%b8%81%e0%b8%a9%e0%b8%b2%e0%b8%84%e0%b8%a7%e0%b8%b2","status":"publish","type":"post","link":"https:\/\/blogdee.com\/?p=22979","title":{"rendered":"GitHub Actions Lockfiles \u0e40\u0e1b\u0e34\u0e14\u0e15\u0e31\u0e27 GA \u0e0a\u0e48\u0e27\u0e22\u0e23\u0e31\u0e01\u0e29\u0e32\u0e04\u0e27\u0e32\u0e21\u0e40\u0e2a\u0e16\u0e35\u0e22\u0e23\u0e02\u0e2d\u0e07 Workflow"},"content":{"rendered":"<p>GitHub \u0e44\u0e14\u0e49\u0e17\u0e33\u0e43\u0e2b\u0e49 workflow dependency lockfiles \u0e2a\u0e33\u0e2b\u0e23\u0e31\u0e1a GitHub Actions \u0e1e\u0e23\u0e49\u0e2d\u0e21\u0e43\u0e0a\u0e49\u0e07\u0e32\u0e19\u0e17\u0e31\u0e48\u0e27\u0e44\u0e1b (GA) \u0e40\u0e21\u0e37\u0e48\u0e2d\u0e27\u0e31\u0e19\u0e17\u0e35\u0e48 28 \u0e15\u0e38\u0e25\u0e32\u0e04\u0e21 2026 \u0e2b\u0e25\u0e31\u0e07\u0e08\u0e32\u0e01\u0e17\u0e35\u0e48\u0e40\u0e02\u0e49\u0e32\u0e2a\u0e39\u0e48\u0e0a\u0e48\u0e27\u0e07 Public Preview \u0e44\u0e1b\u0e2a\u0e2d\u0e07\u0e2a\u0e31\u0e1b\u0e14\u0e32\u0e2b\u0e4c\u0e41\u0e25\u0e49\u0e27<\/p>\n<p>\u0e40\u0e21\u0e37\u0e48\u0e2d\u0e21\u0e35\u0e01\u0e32\u0e23\u0e43\u0e0a\u0e49\u0e07\u0e32\u0e19 \u0e44\u0e1f\u0e25\u0e4c .github\/workflows\/actions.lock \u0e08\u0e30\u0e2a\u0e31\u0e48\u0e07\u0e43\u0e2b\u0e49 runner \u0e17\u0e33\u0e07\u0e32\u0e19\u0e15\u0e32\u0e21 commit \u0e17\u0e35\u0e48\u0e23\u0e30\u0e1a\u0e38\u0e44\u0e27\u0e49 \u0e41\u0e21\u0e49\u0e27\u0e48\u0e32\u0e01\u0e32\u0e23\u0e2d\u0e49\u0e32\u0e07\u0e2d\u0e34\u0e07\u0e40\u0e2b\u0e25\u0e48\u0e32\u0e19\u0e31\u0e49\u0e19\u0e08\u0e30\u0e21\u0e35\u0e01\u0e32\u0e23\u0e40\u0e1b\u0e25\u0e35\u0e48\u0e22\u0e19\u0e41\u0e1b\u0e25\u0e07\u0e43\u0e19\u0e20\u0e32\u0e22\u0e2b\u0e25\u0e31\u0e07\u0e01\u0e47\u0e15\u0e32\u0e21 \u0e1f\u0e35\u0e40\u0e08\u0e2d\u0e23\u0e4c\u0e19\u0e35\u0e49\u0e23\u0e2d\u0e07\u0e23\u0e31\u0e1a\u0e43\u0e19 GitHub Enterprise Cloud, Enterprise Cloud with data residency, Team \u0e41\u0e25\u0e30 Free plans<\/p>\n<p>\u0e40\u0e04\u0e23\u0e37\u0e48\u0e2d\u0e07\u0e21\u0e37\u0e2d\u0e2a\u0e33\u0e2b\u0e23\u0e31\u0e1a\u0e08\u0e31\u0e14\u0e01\u0e32\u0e23\u0e1f\u0e35\u0e40\u0e08\u0e2d\u0e23\u0e4c\u0e19\u0e35\u0e49\u0e04\u0e37\u0e2d\u0e2a\u0e48\u0e27\u0e19\u0e02\u0e22\u0e32\u0e22 actions-lock \u0e2a\u0e33\u0e2b\u0e23\u0e31\u0e1a GitHub CLI \u0e0b\u0e36\u0e48\u0e07\u0e2d\u0e22\u0e39\u0e48\u0e43\u0e19 repository gh-actions-lock \u0e41\u0e25\u0e30\u0e17\u0e33\u0e2b\u0e19\u0e49\u0e32\u0e17\u0e35\u0e48\u0e2a\u0e23\u0e49\u0e32\u0e07\u0e41\u0e25\u0e30\u0e14\u0e39\u0e41\u0e25\u0e23\u0e31\u0e01\u0e29\u0e32 lockfile<\/p>\n<p>\u0e2d\u0e22\u0e48\u0e32\u0e07\u0e44\u0e23\u0e01\u0e47\u0e15\u0e32\u0e21 \u0e01\u0e32\u0e23\u0e43\u0e0a\u0e49 lockfile \u0e23\u0e31\u0e1a\u0e1b\u0e23\u0e30\u0e01\u0e31\u0e19\u0e27\u0e48\u0e32\u0e01\u0e32\u0e23\u0e23\u0e31\u0e19\u0e08\u0e30\u0e43\u0e0a\u0e49 commit \u0e17\u0e35\u0e48\u0e16\u0e39\u0e01\u0e25\u0e47\u0e2d\u0e01\u0e44\u0e27\u0e49 \u0e41\u0e15\u0e48\u0e44\u0e21\u0e48\u0e44\u0e14\u0e49\u0e23\u0e31\u0e1a\u0e1b\u0e23\u0e30\u0e01\u0e31\u0e19\u0e27\u0e48\u0e32 commit \u0e40\u0e2b\u0e25\u0e48\u0e32\u0e19\u0e31\u0e49\u0e19\u0e1b\u0e25\u0e2d\u0e14\u0e20\u0e31\u0e22 \u0e14\u0e31\u0e07\u0e19\u0e31\u0e49\u0e19\u0e08\u0e36\u0e07\u0e04\u0e27\u0e23\u0e15\u0e23\u0e27\u0e08\u0e2a\u0e2d\u0e1a dependencies \u0e01\u0e48\u0e2d\u0e19\u0e17\u0e33\u0e01\u0e32\u0e23\u0e25\u0e47\u0e2d\u0e01\u0e40\u0e2a\u0e21\u0e2d<\/p>\n<p>\u0e01\u0e32\u0e23\u0e40\u0e1b\u0e25\u0e35\u0e48\u0e22\u0e19\u0e41\u0e1b\u0e25\u0e07\u0e2a\u0e33\u0e04\u0e31\u0e0d\u0e04\u0e37\u0e2d\u0e01\u0e32\u0e23\u0e17\u0e35\u0e48 pull_request_target \u0e08\u0e30\u0e16\u0e39\u0e01\u0e1a\u0e25\u0e47\u0e2d\u0e01\u0e42\u0e14\u0e22\u0e04\u0e48\u0e32\u0e40\u0e23\u0e34\u0e48\u0e21\u0e15\u0e49\u0e19 \u0e40\u0e23\u0e34\u0e48\u0e21\u0e15\u0e31\u0e49\u0e07\u0e41\u0e15\u0e48 2 \u0e18\u0e31\u0e19\u0e27\u0e32\u0e04\u0e21 \u0e0b\u0e36\u0e48\u0e07\u0e40\u0e1b\u0e47\u0e19\u0e2d\u0e35\u0e01\u0e21\u0e32\u0e15\u0e23\u0e01\u0e32\u0e23\u0e2b\u0e19\u0e36\u0e48\u0e07\u0e43\u0e19\u0e01\u0e32\u0e23\u0e08\u0e33\u0e01\u0e31\u0e14\u0e01\u0e32\u0e23\u0e40\u0e02\u0e49\u0e32\u0e16\u0e36\u0e07\u0e42\u0e04\u0e49\u0e14\u0e17\u0e35\u0e48\u0e44\u0e21\u0e48\u0e19\u0e48\u0e32\u0e40\u0e0a\u0e37\u0e48\u0e2d\u0e16\u0e37\u0e2d\u0e2a\u0e39\u0e48\u0e1a\u0e23\u0e34\u0e1a\u0e17\u0e02\u0e2d\u0e07 workflow \u0e17\u0e35\u0e48\u0e21\u0e35\u0e2a\u0e34\u0e17\u0e18\u0e34\u0e4c\u0e2a\u0e39\u0e07<\/p>\n<p>\u0e2a\u0e33\u0e2b\u0e23\u0e31\u0e1a\u0e2d\u0e07\u0e04\u0e4c\u0e01\u0e23\u0e17\u0e35\u0e48\u0e15\u0e49\u0e2d\u0e07\u0e01\u0e32\u0e23\u0e40\u0e23\u0e34\u0e48\u0e21\u0e15\u0e49\u0e19\u0e43\u0e0a\u0e49\u0e07\u0e32\u0e19 \u0e04\u0e27\u0e23\u0e40\u0e23\u0e34\u0e48\u0e21\u0e08\u0e32\u0e01 workflow \u0e17\u0e35\u0e48\u0e21\u0e35\u0e04\u0e27\u0e32\u0e21\u0e2a\u0e33\u0e04\u0e31\u0e0d\u0e2a\u0e39\u0e07 \u0e40\u0e0a\u0e48\u0e19 release \u0e2b\u0e23\u0e37\u0e2d deployment pipeline, \u0e40\u0e1e\u0e34\u0e48\u0e21 staleness check \u0e43\u0e19 CI \u0e41\u0e25\u0e30\u0e22\u0e37\u0e19\u0e22\u0e31\u0e19\u0e27\u0e48\u0e32\u0e01\u0e32\u0e23\u0e23\u0e27\u0e21 pull request \u0e02\u0e2d\u0e07 Dependabot \u0e19\u0e31\u0e49\u0e19\u0e2a\u0e2d\u0e14\u0e04\u0e25\u0e49\u0e2d\u0e07\u0e01\u0e31\u0e1a\u0e01\u0e23\u0e30\u0e1a\u0e27\u0e19\u0e01\u0e32\u0e23\u0e23\u0e35\u0e27\u0e34\u0e27\u0e17\u0e35\u0e48\u0e21\u0e35\u0e2d\u0e22\u0e39\u0e48 \u0e01\u0e48\u0e2d\u0e19\u0e17\u0e35\u0e48\u0e08\u0e30\u0e40\u0e1b\u0e34\u0e14\u0e43\u0e0a\u0e49\u0e07\u0e32\u0e19\u0e43\u0e19\u0e23\u0e30\u0e14\u0e31\u0e1a\u0e2d\u0e07\u0e04\u0e4c\u0e01\u0e23<\/p>\n<p>\u0e01\u0e48\u0e2d\u0e19\u0e2b\u0e19\u0e49\u0e32\u0e19\u0e35\u0e49 GitLab \u0e44\u0e14\u0e49\u0e19\u0e33\u0e40\u0e2a\u0e19\u0e2d\u0e19\u0e42\u0e22\u0e1a\u0e32\u0e22\u0e01\u0e32\u0e23\u0e23\u0e31\u0e19 pipeline \u0e41\u0e1a\u0e1a open-source \u0e2b\u0e25\u0e31\u0e07\u0e40\u0e2b\u0e15\u0e38\u0e01\u0e32\u0e23\u0e13\u0e4c supply chain \u0e43\u0e19\u0e40\u0e14\u0e37\u0e2d\u0e19\u0e21\u0e35\u0e19\u0e32\u0e04\u0e21 2026 \u0e41\u0e25\u0e30\u0e04\u0e33\u0e41\u0e19\u0e30\u0e19\u0e33 Zero Trust \u0e02\u0e2d\u0e07 Microsoft \u0e2a\u0e33\u0e2b\u0e23\u0e31\u0e1a Azure Pipelines \u0e01\u0e47\u0e41\u0e19\u0e30\u0e19\u0e33\u0e43\u0e2b\u0e49\u0e43\u0e0a\u0e49 SHA pinning \u0e40\u0e0a\u0e48\u0e19\u0e01\u0e31\u0e19<\/p>\n<h3>\u0e28\u0e31\u0e1e\u0e17\u0e4c\u0e17\u0e35\u0e48\u0e04\u0e27\u0e23\u0e23\u0e39\u0e49<\/h3>\n<ul>\n<li>GitHub Actions &#8211; \u0e23\u0e30\u0e1a\u0e1a\u0e2d\u0e31\u0e15\u0e42\u0e19\u0e21\u0e31\u0e15\u0e34\u0e17\u0e35\u0e48\u0e17\u0e33\u0e07\u0e32\u0e19\u0e1a\u0e19 GitHub \u0e2a\u0e33\u0e2b\u0e23\u0e31\u0e1a\u0e01\u0e32\u0e23\u0e17\u0e33\u0e07\u0e32\u0e19\u0e02\u0e2d\u0e07\u0e42\u0e04\u0e49\u0e14 \u0e40\u0e0a\u0e48\u0e19 \u0e01\u0e32\u0e23\u0e17\u0e14\u0e2a\u0e2d\u0e1a\u0e2b\u0e23\u0e37\u0e2d\u0e01\u0e32\u0e23 deploy<\/li>\n<li>Workflow dependency lockfile &#8211; \u0e44\u0e1f\u0e25\u0e4c\u0e17\u0e35\u0e48\u0e23\u0e30\u0e1a\u0e38 commit \u0e17\u0e35\u0e48\u0e41\u0e19\u0e48\u0e19\u0e2d\u0e19 \u0e40\u0e1e\u0e37\u0e48\u0e2d\u0e43\u0e2b\u0e49\u0e01\u0e32\u0e23\u0e23\u0e31\u0e19\u0e17\u0e33\u0e07\u0e32\u0e19\u0e0b\u0e49\u0e33\u0e44\u0e14\u0e49\u0e40\u0e2b\u0e21\u0e37\u0e2d\u0e19\u0e40\u0e14\u0e34\u0e21\u0e40\u0e2a\u0e21\u0e2d<\/li>\n<li>Runner &#8211; \u0e2a\u0e48\u0e27\u0e19\u0e1b\u0e23\u0e30\u0e01\u0e2d\u0e1a\u0e17\u0e35\u0e48\u0e17\u0e33\u0e01\u0e32\u0e23\u0e23\u0e31\u0e19\u0e04\u0e33\u0e2a\u0e31\u0e48\u0e07\u0e02\u0e2d\u0e07 Workflow \u0e15\u0e32\u0e21\u0e17\u0e35\u0e48\u0e01\u0e33\u0e2b\u0e19\u0e14<\/li>\n<li>GitHub CLI &#8211; Command Line Interface \u0e17\u0e35\u0e48\u0e0a\u0e48\u0e27\u0e22\u0e43\u0e2b\u0e49\u0e1c\u0e39\u0e49\u0e43\u0e0a\u0e49\u0e2a\u0e32\u0e21\u0e32\u0e23\u0e16\u0e2a\u0e31\u0e48\u0e07\u0e01\u0e32\u0e23 GitHub \u0e1c\u0e48\u0e32\u0e19 Terminal \u0e44\u0e14\u0e49<\/li>\n<li>SHA pinning &#8211; \u0e01\u0e32\u0e23\u0e15\u0e23\u0e36\u0e07\u0e01\u0e32\u0e23\u0e2d\u0e49\u0e32\u0e07\u0e2d\u0e34\u0e07\u0e14\u0e49\u0e27\u0e22\u0e04\u0e48\u0e32\u0e41\u0e2e\u0e0a (Hash) \u0e40\u0e1e\u0e37\u0e48\u0e2d\u0e43\u0e2b\u0e49\u0e21\u0e31\u0e48\u0e19\u0e43\u0e08\u0e27\u0e48\u0e32\u0e43\u0e0a\u0e49\u0e42\u0e04\u0e49\u0e14\u0e40\u0e27\u0e2d\u0e23\u0e4c\u0e0a\u0e31\u0e19\u0e19\u0e31\u0e49\u0e19\u0e46 \u0e40\u0e2a\u0e21\u0e2d<\/li>\n<\/ul>\n<p>\u0e17\u0e35\u0e48\u0e21\u0e32: <a href=\"https:\/\/www.infoq.com\/news\/2026\/11\/github-actions-lockfiles-ga\/?utm_campaign=infoq_content&#038;utm_source=infoq&#038;utm_medium=feed&#038;utm_term=global\" target=\"_blank\" rel=\"noopener nofollow\">infoq.com<\/a><\/p>\n","protected":false},"excerpt":{"rendered":"<p>GitHub \u0e44\u0e14\u0e49\u0e40\u0e1b\u0e34\u0e14\u0e15\u0e31\u0e27\u0e1f\u0e35\u0e40\u0e08\u0e2d\u0e23\u0e4c workflow dependency lockfiles \u0e2a\u0e33\u0e2b\u0e23\u0e31\u0e1a GitHub Actions \u0e43\u0e2b\u0e49\u0e43\u0e0a\u0e49\u0e07\u0e32\u0e19\u0e17\u0e31\u0e48\u0e27\u0e44\u0e1b (GA) \u0e41\u0e25\u0e49\u0e27\u0e40\u0e21\u0e37\u0e48\u0e2d\u0e27\u0e31\u0e19\u0e17\u0e35\u0e48 28 \u0e15\u0e38\u0e25\u0e32\u0e04\u0e21 2026\u2026<\/p>\n","protected":false},"author":1,"featured_media":22978,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"footnotes":""},"categories":[50],"tags":[2445,4473,2535,55],"class_list":["post-22979","post","type-post","status-publish","format-standard","has-post-thumbnail","hentry","category-cloud-computing","tag-ci-cd","tag-devops","tag-github-actions","tag-security"],"_links":{"self":[{"href":"https:\/\/blogdee.com\/index.php?rest_route=\/wp\/v2\/posts\/22979","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/blogdee.com\/index.php?rest_route=\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/blogdee.com\/index.php?rest_route=\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/blogdee.com\/index.php?rest_route=\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/blogdee.com\/index.php?rest_route=%2Fwp%2Fv2%2Fcomments&post=22979"}],"version-history":[{"count":0,"href":"https:\/\/blogdee.com\/index.php?rest_route=\/wp\/v2\/posts\/22979\/revisions"}],"wp:featuredmedia":[{"embeddable":true,"href":"https:\/\/blogdee.com\/index.php?rest_route=\/wp\/v2\/media\/22978"}],"wp:attachment":[{"href":"https:\/\/blogdee.com\/index.php?rest_route=%2Fwp%2Fv2%2Fmedia&parent=22979"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/blogdee.com\/index.php?rest_route=%2Fwp%2Fv2%2Fcategories&post=22979"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/blogdee.com\/index.php?rest_route=%2Fwp%2Fv2%2Ftags&post=22979"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}