checkout
v4.2.2
此操作将您的存储库在$GITHUB_WORKSPACE
下删除,因此您的工作流可以访问它。
对于触发工作流的参考/sha,默认情况下仅获取一个提交。设置fetch-depth: 0
以获取所有分支和标签的所有历史记录。请参阅此处了解哪个$GITHUB_SHA
指向不同事件的指向。
验证令牌在本地git配置中持续存在。这使您的脚本可以运行已验证的git命令。在工作后清理期间,将其删除。设置persist-credentials: false
到选择退出。
当Git 2.18或更高版本不在您的路径中时,落回到REST API下载文件。
请参阅发布页面以获取最新发行说明。
- uses : actions/checkout@v4
with :
# Repository name with owner. For example, actions/checkout
# Default: ${{ github.repository }}
repository : ' '
# The branch, tag or SHA to checkout. When checking out the repository that
# triggered a workflow, this defaults to the reference or SHA for that event.
# Otherwise, uses the default branch.
ref : ' '
# Personal access token (PAT) used to fetch the repository. The PAT is configured
# with the local git config, which enables your scripts to run authenticated git
# commands. The post-job step removes the PAT.
#
# We recommend using a service account with the least permissions necessary. Also
# when generating a new PAT, select the least scopes necessary.
#
# [Learn more about creating and using encrypted secrets](https://help.github.com/en/actions/automating-your-workflow-with-github-actions/creating-and-using-encrypted-secrets)
#
# Default: ${{ github.token }}
token : ' '
# SSH key used to fetch the repository. The SSH key is configured with the local
# git config, which enables your scripts to run authenticated git commands. The
# post-job step removes the SSH key.
#
# We recommend using a service account with the least permissions necessary.
#
# [Learn more about creating and using encrypted secrets](https://help.github.com/en/actions/automating-your-workflow-with-github-actions/creating-and-using-encrypted-secrets)
ssh-key : ' '
# Known hosts in addition to the user and global host key database. The public SSH
# keys for a host may be obtained using the utility `ssh-keyscan`. For example,
# `ssh-keyscan github.com`. The public key for github.com is always implicitly
# added.
ssh-known-hosts : ' '
# Whether to perform strict host key checking. When true, adds the options
# `StrictHostKeyChecking=yes` and `CheckHostIP=no` to the SSH command line. Use
# the input `ssh-known-hosts` to configure additional hosts.
# Default: true
ssh-strict : ' '
# The user to use when connecting to the remote SSH host. By default 'git' is
# used.
# Default: git
ssh-user : ' '
# Whether to configure the token or SSH key with the local git config
# Default: true
persist-credentials : ' '
# Relative path under $GITHUB_WORKSPACE to place the repository
path : ' '
# Whether to execute `git clean -ffdx && git reset --hard HEAD` before fetching
# Default: true
clean : ' '
# Partially clone against a given filter. Overrides sparse-checkout if set.
# Default: null
filter : ' '
# Do a sparse checkout on given patterns. Each pattern should be separated with
# new lines.
# Default: null
sparse-checkout : ' '
# Specifies whether to use cone-mode when doing a sparse checkout.
# Default: true
sparse-checkout-cone-mode : ' '
# Number of commits to fetch. 0 indicates all history for all branches and tags.
# Default: 1
fetch-depth : ' '
# Whether to fetch tags, even if fetch-depth > 0.
# Default: false
fetch-tags : ' '
# Whether to show progress status output when fetching.
# Default: true
show-progress : ' '
# Whether to download Git-LFS files
# Default: false
lfs : ' '
# Whether to checkout submodules: `true` to checkout submodules or `recursive` to
# recursively checkout submodules.
#
# When the `ssh-key` input is not provided, SSH URLs beginning with
# `[email protected]:` are converted to HTTPS.
#
# Default: false
submodules : ' '
# Add repository path as safe.directory for Git global config by running `git
# config --global --add safe.directory <path>`
# Default: true
set-safe-directory : ' '
# The base URL for the GitHub instance that you are trying to clone from, will use
# environment defaults to fetch from the same instance that the workflow is
# running from unless specified. Example URLs are https://github.com or
# https://my-ghes-server.example.com
github-server-url : ' '
.github
和src
文件夹- uses : actions/checkout@v4
with :
sparse-checkout : .
.github
和src
文件夹- uses : actions/checkout@v4
with :
sparse-checkout : |
.github
src
- uses : actions/checkout@v4
with :
sparse-checkout : |
README.md
sparse-checkout-cone-mode : false
- uses : actions/checkout@v4
with :
fetch-depth : 0
- uses : actions/checkout@v4
with :
ref : my-branch
- uses : actions/checkout@v4
with :
fetch-depth : 2
- run : git checkout HEAD^
- name : Checkout
uses : actions/checkout@v4
with :
path : main
- name : Checkout tools repo
uses : actions/checkout@v4
with :
repository : my-org/my-tools
path : my-tools
- 如果您的次要存储库是私有的或内部的,则需要在结帐多个存储库中添加选项(私有)
- name : Checkout
uses : actions/checkout@v4
- name : Checkout tools repo
uses : actions/checkout@v4
with :
repository : my-org/my-tools
path : my-tools
- 如果您的次要存储库是私有的或内部的,则需要在结帐多个存储库中添加选项(私有)
- name : Checkout
uses : actions/checkout@v4
with :
path : main
- name : Checkout private tools
uses : actions/checkout@v4
with :
repository : my-org/my-private-tools
token : ${{ secrets.GH_PAT }} # `GH_PAT` is a secret that contains your PAT
path : my-tools
${{ github.token }}
范围范围为当前存储库,因此,如果您想结帐另一个私有存储库,您将需要提供自己的pat。
- uses : actions/checkout@v4
with :
ref : ${{ github.event.pull_request.head.sha }}
on :
pull_request :
branches : [main]
types : [opened, synchronize, closed]
jobs :
build :
runs-on : ubuntu-latest
steps :
- uses : actions/checkout@v4
on : push
jobs :
build :
runs-on : ubuntu-latest
steps :
- uses : actions/checkout@v4
- run : |
date > generated.txt
# Note: the following account information will not work on GHES
git config user.name "github-actions[bot]"
git config user.email "41898282+github-actions[bot]@users.noreply.github.com"
git add .
git commit -m "generated"
git push
注意:用户电子邮件为{user.id}+{user.login}@users.noreply.github.com
。请参阅用户API:https://api.github.com/users/github-actions%5bbot%5D
在拉动请求触发器中,需要ref
,因为GITHUB操作在独立的头模式下检查出去,这意味着它默认情况下不会检查您的分支。
on : pull_request
jobs :
build :
runs-on : ubuntu-latest
steps :
- uses : actions/checkout@v4
with :
ref : ${{ github.head_ref }}
- run : |
date > generated.txt
# Note: the following account information will not work on GHES
git config user.name "github-actions[bot]"
git config user.email "41898282+github-actions[bot]@users.noreply.github.com"
git add .
git commit -m "generated"
git push
注意:用户电子邮件为{user.id}+{user.login}@users.noreply.github.com
。请参阅用户API:https://api.github.com/users/github-actions%5bbot%5D
该项目中的脚本和文档是根据MIT许可证发布的