Source version sample with Amazon CodeBuild
This sample demonstrates how to specify a version of your source using a format other than a commit ID (also known as a commit SHA). You can specify the version of your source in the following ways:
- 
            
For an Amazon S3 source provider, use the version ID of the object that represents the build input ZIP file.
 - 
            
For CodeCommit, Bitbucket, GitHub, and GitHub Enterprise Server, use one of the following:
- 
                    
Pull request as a pull request reference (for example,
refs/pull/1/head). - 
                    
Branch as a branch name.
 - 
                    
Commit ID.
 - 
                    
Tag.
 - 
                    
Reference and a commit ID. The reference can be one of the following:
- 
                            
A tag (for example,
refs/tags/mytagv1.0^{full-commit-SHA}). - 
                            
A branch (for example,
refs/heads/mydevbranch^{full-commit-SHA}). - 
                            
A pull request (for example,
refs/pull/1/head^{full-commit-SHA}). 
 - 
                            
 
 - 
                    
 - 
            
For GitLab and GitLab Self Managed, use one of the following:
- 
                    
Branch as a branch name.
 - 
                    
Commit ID.
 - 
                    
Tag.
 
 - 
                    
 
Note
You can specify the version of a pull request source only if your repository is GitHub or GitHub Enterprise Server.
 If you use a reference and a commit ID to specify a version, the
            DOWNLOAD_SOURCE phase of your build is faster than if you provide the
        version only. This is because when you add a reference, CodeBuild does not need to download the
        entire repository to find the commit. 
- 
            
You can specify a source version with only a commit ID, such as
12345678901234567890123467890123456789. If you do this, CodeBuild must download the entire repository to find the version. - 
            
You can specify a source version with a reference and a commit ID in this format:
(for example,refs/heads/branchname^{full-commit-SHA}refs/heads/main^{12345678901234567890123467890123456789}). If you do this, CodeBuild downloads only the specified branch to find the version. . 
Note
To speed up the DOWNLOAD_SOURCE phase of your build, you can also to set
                Git clone depth to a low number. CodeBuild downloads fewer versions
            of your repository.