This action checks-out your repository under `$GITHUB_WORKSPACE`, so your workflow can access it.
This action checks-out your repository under `$GITHUB_WORKSPACE`, so your workflow can access it.
@ -14,27 +14,14 @@ When Git 2.18 or higher is not in your PATH, falls back to the REST API to downl
# What's new
# What's new
- Improved performance
- Updated to the node16 runtime by default
- Fetches only a single commit by default
- This requires a minimum [Actions Runner](https://github.com/actions/runner/releases/tag/v2.285.0) version of v2.285.0 to run, which is by default available in GHES 3.4 or later.
- Script authenticated git commands
- Auth token persisted in the local git config
- Supports SSH
- Creates a local branch
- No longer detached HEAD when checking out a branch
- Improved layout
- The input `path` is always relative to $GITHUB_WORKSPACE
- Aligns better with container actions, where $GITHUB_WORKSPACE gets mapped in
- Fallback to REST API download
- When Git 2.18 or higher is not in the PATH, the REST API will be used to download the files
- When using a job container, the container's PATH is used
Refer [here](https://github.com/actions/checkout/blob/v1/README.md) for previous versions.
# Usage
# Usage
<!-- start usage -->
<!-- start usage -->
```yaml
```yaml
- uses: actions/checkout@v2
- uses: actions/checkout@v3
with:
with:
# Repository name with owner. For example, actions/checkout
# Repository name with owner. For example, actions/checkout
# Default: ${{ github.repository }}
# Default: ${{ github.repository }}
@ -123,7 +110,7 @@ Refer [here](https://github.com/actions/checkout/blob/v1/README.md) for previous
## Fetch all history for all tags and branches
## Fetch all history for all tags and branches
```yaml
```yaml
- uses: actions/checkout@v2
- uses: actions/checkout@v3
with:
with:
fetch-depth: 0
fetch-depth: 0
```
```
@ -131,7 +118,7 @@ Refer [here](https://github.com/actions/checkout/blob/v1/README.md) for previous
## Checkout a different branch
## Checkout a different branch
```yaml
```yaml
- uses: actions/checkout@v2
- uses: actions/checkout@v3
with:
with:
ref: my-branch
ref: my-branch
```
```
@ -139,7 +126,7 @@ Refer [here](https://github.com/actions/checkout/blob/v1/README.md) for previous
## Checkout HEAD^
## Checkout HEAD^
```yaml
```yaml
- uses: actions/checkout@v2
- uses: actions/checkout@v3
with:
with:
fetch-depth: 2
fetch-depth: 2
- run: git checkout HEAD^
- run: git checkout HEAD^
@ -149,12 +136,12 @@ Refer [here](https://github.com/actions/checkout/blob/v1/README.md) for previous
```yaml
```yaml
- name: Checkout
- name: Checkout
uses: actions/checkout@v2
uses: actions/checkout@v3
with:
with:
path: main
path: main
- name: Checkout tools repo
- name: Checkout tools repo
uses: actions/checkout@v2
uses: actions/checkout@v3
with:
with:
repository: my-org/my-tools
repository: my-org/my-tools
path: my-tools
path: my-tools
@ -164,10 +151,10 @@ Refer [here](https://github.com/actions/checkout/blob/v1/README.md) for previous
```yaml
```yaml
- name: Checkout
- name: Checkout
uses: actions/checkout@v2
uses: actions/checkout@v3
- name: Checkout tools repo
- name: Checkout tools repo
uses: actions/checkout@v2
uses: actions/checkout@v3
with:
with:
repository: my-org/my-tools
repository: my-org/my-tools
path: my-tools
path: my-tools
@ -177,12 +164,12 @@ Refer [here](https://github.com/actions/checkout/blob/v1/README.md) for previous
```yaml
```yaml
- name: Checkout
- name: Checkout
uses: actions/checkout@v2
uses: actions/checkout@v3
with:
with:
path: main
path: main
- name: Checkout private tools
- name: Checkout private tools
uses: actions/checkout@v2
uses: actions/checkout@v3
with:
with:
repository: my-org/my-private-tools
repository: my-org/my-private-tools
token: ${{ secrets.GH_PAT }} # `GH_PAT` is a secret that contains your PAT
token: ${{ secrets.GH_PAT }} # `GH_PAT` is a secret that contains your PAT
@ -195,7 +182,7 @@ Refer [here](https://github.com/actions/checkout/blob/v1/README.md) for previous
## Checkout pull request HEAD commit instead of merge commit
## Checkout pull request HEAD commit instead of merge commit