Get started with GitHub ActionsDiscover the possibilities of GitHub Actions by creating your first workflow.Start path
Introduction to GitHub ActionsLearn about the core concepts and various components of GitHub Actions, and see an example that shows you how to add automation to your repository.
Finding and customizing actionsActions are the building blocks that power your workflow. A workflow can contain actions created by the community, or you can create your own actions directly within your application's repository. This guide will show you how to discover, use, and customize actions.
Essential featuresGitHub Actions are designed to help you build robust and dynamic automations. This guide will show you how to craft GitHub Actions workflows that include environment variables, customized scripts, and more.
Managing complex workflowsThis guide shows you how to use the advanced features of GitHub Actions, with secret management, dependent jobs, caching, build matrices, environments, and labels.
Security hardeningGood security practices for using GitHub Actions features.
Build and test code
You can create custom continuous integration (CI) workflows right in your repository.
About continuous integration
Setting up CI using templates
About service containers
Building and testing Node.js
Building and testing PowerShell
Building and testing Python
Building and testing Ruby
Building and testing Java with Maven
Building and testing Java with Gradle
Building and testing Java with Ant
Automate your deployments
Learn how to automate release publishing for your project with a custom continuous deployment (CD) workflow in GitHub Actions.
About packaging with GitHub Actions
Publishing Node.js packages
Publishing Java packages with Maven
Publishing Java packages with Gradle
Publishing Docker images
Host your own runners
You can create self-hosted runners to run workflows in a highly customizable environment.
About self-hosted runners
Adding self-hosted runners
Configuring the self-hosted runner application as a service
Using a proxy server with self-hosted runners
Using labels with self-hosted runners
Using self-hosted runners in a workflow
Managing access to self-hosted runners using groups
Monitoring and troubleshooting self-hosted runners
Create an action
Do you have an idea for a new action? Have you built something custom for your project? Learn how to build shareable actions and publish them to GitHub Marketplace.