mirror of
https://github.com/actions/checkout.git
synced 2026-04-16 19:15:38 +02:00
Compare commits
16 Commits
| Author | SHA1 | Date | |
|---|---|---|---|
| 50fbc622fc | |||
| e8bd1dffb6 | |||
| 0b496e91ec | |||
| f6ce2afa70 | |||
| 94d077c249 | |||
| 0963d3b35f | |||
| a14471d838 | |||
| 7f0669ca1f | |||
| cacfc4155d | |||
| 6e6328ef28 | |||
| 53bed0742e | |||
| b4b537b06a | |||
| af513c7a01 | |||
| bf4af63534 | |||
| 3df79e0276 | |||
| 44679f67d2 |
@@ -0,0 +1,19 @@
|
||||
name: "test-local"
|
||||
on:
|
||||
pull_request:
|
||||
push:
|
||||
branches:
|
||||
- master
|
||||
- 'releases/*'
|
||||
|
||||
jobs:
|
||||
test:
|
||||
strategy:
|
||||
matrix:
|
||||
os: [windows-latest, ubuntu-latest, macOS-latest]
|
||||
runs-on: ${{ matrix.os }}
|
||||
steps:
|
||||
- uses: actions/checkout@master
|
||||
- uses: ./
|
||||
with:
|
||||
ref: master
|
||||
@@ -1,4 +0,0 @@
|
||||
[submodule "submodule-level-1"]
|
||||
path = submodule-level-1
|
||||
url = git@github.com:actions/checkout.git
|
||||
branch = test-data/v2/submodule-ssh-url-level-1
|
||||
@@ -0,0 +1,13 @@
|
||||
# Changelog
|
||||
|
||||
## Unreleased Changes
|
||||
- N/A
|
||||
|
||||
## v1.2.0
|
||||
- Reverted the breaking behavior change in v1.1.0 that broke custom authentication flows
|
||||
|
||||
## v1.1.0 (Not reccomended for use, this functionality will be ported to the 2.0 update)
|
||||
- Persist `with.token` or `${{ github.token }}` into checkout repository's git config as `http.https://github.com/.extraheader=AUTHORIZATION: basic ***` to better support scripting git
|
||||
|
||||
## v1.0.0
|
||||
- Initial Release of the checkout action
|
||||
@@ -0,0 +1,22 @@
|
||||
|
||||
The MIT License (MIT)
|
||||
|
||||
Copyright (c) 2018 GitHub, Inc. and contributors
|
||||
|
||||
Permission is hereby granted, free of charge, to any person obtaining a copy
|
||||
of this software and associated documentation files (the "Software"), to deal
|
||||
in the Software without restriction, including without limitation the rights
|
||||
to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
|
||||
copies of the Software, and to permit persons to whom the Software is
|
||||
furnished to do so, subject to the following conditions:
|
||||
|
||||
The above copyright notice and this permission notice shall be included in
|
||||
all copies or substantial portions of the Software.
|
||||
|
||||
THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
|
||||
IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
|
||||
FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
|
||||
AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
|
||||
LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
|
||||
OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN
|
||||
THE SOFTWARE.
|
||||
@@ -0,0 +1,61 @@
|
||||
<p align="center">
|
||||
<a href="https://github.com/actions/checkout"><img alt="GitHub Actions status" src="https://github.com/actions/checkout/workflows/test-local/badge.svg"></a>
|
||||
</p>
|
||||
|
||||
# Checkout
|
||||
|
||||
This action checks out your repository to `$GITHUB_WORKSPACE`, so that your workflow can access the contents of your repository.
|
||||
|
||||
By default, this is equivalent to running `git fetch` and `git checkout $GITHUB_SHA`, so that you'll always have your repo contents at the version that triggered the workflow.
|
||||
See [here](https://help.github.com/en/articles/events-that-trigger-workflows) to learn what `$GITHUB_SHA` is for different kinds of events.
|
||||
|
||||
# Usage
|
||||
|
||||
See [action.yml](action.yml)
|
||||
|
||||
Basic:
|
||||
|
||||
```yaml
|
||||
steps:
|
||||
- uses: actions/checkout@v1
|
||||
- uses: actions/setup-node@v1
|
||||
with:
|
||||
node-version: 10.x
|
||||
- run: npm install
|
||||
- run: npm test
|
||||
```
|
||||
|
||||
By default, the branch or tag ref that triggered the workflow will be checked out. If you wish to check out a different branch, a different repository or use different token to checkout, specify that using `with.ref`, `with.repository` and `with.token`.
|
||||
|
||||
## Checkout different branch from the workflow repository
|
||||
```yaml
|
||||
- uses: actions/checkout@v1
|
||||
with:
|
||||
ref: some-branch
|
||||
```
|
||||
|
||||
## Checkout different private repository
|
||||
```yaml
|
||||
- uses: actions/checkout@v1
|
||||
with:
|
||||
repository: myAccount/myRepository
|
||||
ref: refs/heads/master
|
||||
token: ${{ secrets.GitHub_PAT }} # `GitHub_PAT` is a secret contains your PAT.
|
||||
```
|
||||
> - `${{ github.token }}` is scoped to the current repository, so if you want to checkout another repository that is private you will need to provide your own [PAT](https://help.github.com/en/github/authenticating-to-github/creating-a-personal-access-token-for-the-command-line).
|
||||
|
||||
## Checkout private submodules
|
||||
```yaml
|
||||
- uses: actions/checkout@v1
|
||||
with:
|
||||
submodules: true # 'recursive' 'true' or 'false'
|
||||
token: ${{ secrets.GitHub_PAT }} # `GitHub_PAT` is a secret contains your PAT.
|
||||
```
|
||||
> - Private submodules must be configured via `https` not `ssh`.
|
||||
> - `${{ github.token }}` only has permission to the workflow triggering repository. If the repository contains any submodules that come from private repositories, you will need to add your [PAT](https://help.github.com/en/github/authenticating-to-github/creating-a-personal-access-token-for-the-command-line) as secret and use the secret in `with.token` to make the `checkout` action work.
|
||||
|
||||
For more details, see [Contexts and expression syntax for GitHub Actions](https://help.github.com/en/articles/contexts-and-expression-syntax-for-github-actions) and [Creating and using encrypted secrets](https://help.github.com/actions/automating-your-workflow-with-github-actions/creating-and-using-encrypted-secrets)
|
||||
|
||||
# License
|
||||
|
||||
The scripts and documentation in this project are released under the [MIT License](LICENSE)
|
||||
+23
@@ -0,0 +1,23 @@
|
||||
name: 'Checkout'
|
||||
description: 'Checkout a Git repository.'
|
||||
inputs:
|
||||
repository:
|
||||
description: 'Repository name'
|
||||
ref:
|
||||
description: 'Ref to checkout (SHA, branch, tag)'
|
||||
token:
|
||||
description: 'Access token for clone repository'
|
||||
clean:
|
||||
description: 'If true, execute `execute git clean -ffdx && git reset --hard HEAD` before fetching'
|
||||
default: true
|
||||
submodules:
|
||||
description: 'Whether to include submodules: false to exclude submodules, true to include only one level of submodules, or recursive to recursively clone submodules; defaults to false'
|
||||
lfs:
|
||||
description: 'Whether to download Git-LFS files; defaults to false'
|
||||
fetch-depth:
|
||||
description: 'The depth of commits to ask Git to fetch; defaults to no limit'
|
||||
path:
|
||||
description: 'Optional path to check out source code'
|
||||
runs:
|
||||
# Plugins live on the runner and are only available to a certain set of first party actions.
|
||||
plugin: 'checkout'
|
||||
Submodule submodule-level-1 deleted from fdabad6f0e
Reference in New Issue
Block a user