package gitutil

import "github.com/moby/buildkit/util/gitutil"

Index

Constants

const (
	HTTPProtocol = iota + 1
	HTTPSProtocol
	SSHProtocol
	GitProtocol
	UnknownProtocol
)

Functions

func ParseProtocol

func ParseProtocol(remote string) (string, int)

ParseProtocol parses a git URL and returns the remote url and protocol type

Types

type GitRef

type GitRef struct {
	// Remote is the remote repository path.
	Remote string

	// ShortName is the directory name of the repo.
	// e.g., "bar" for "https://github.com/foo/bar.git"
	ShortName string

	// Commit is a commit hash, a tag, or branch name.
	// Commit is optional.
	Commit string

	// SubDir is a directory path inside the repo.
	// SubDir is optional.
	SubDir string

	// IndistinguishableFromLocal is true for a ref that is indistinguishable from a local file path,
	// e.g., "github.com/foo/bar".
	//
	// Deprecated.
	// Instead, use a distinguishable form such as "https://github.com/foo/bar.git".
	//
	// The dockerfile frontend still accepts this form only for build contexts.
	IndistinguishableFromLocal bool

	// UnencryptedTCP is true for a ref that needs an unencrypted TCP connection,
	// e.g., "git://..." and "http://..." .
	//
	// Discouraged, although not deprecated.
	// Instead, consider using an encrypted TCP connection such as "git@github.com/foo/bar.git" or "https://github.com/foo/bar.git".
	UnencryptedTCP bool
}

GitRef represents a git ref.

Examples:

func ParseGitRef

func ParseGitRef(ref string) (*GitRef, error)

ParseGitRef parses a git ref.

Source Files

git_protocol.go git_ref.go

Version
v0.11.0-rc3
Published
Dec 16, 2022
Platform
js/wasm
Imports
4 packages
Last checked
12 hours ago

Tools for package owners.