Nutstone.GitHub.Service.Provider 1.1.9

There is a newer version of this package available.
See the version list below for details.
dotnet add package Nutstone.GitHub.Service.Provider --version 1.1.9
                    
NuGet\Install-Package Nutstone.GitHub.Service.Provider -Version 1.1.9
                    
This command is intended to be used within the Package Manager Console in Visual Studio, as it uses the NuGet module's version of Install-Package.
<PackageReference Include="Nutstone.GitHub.Service.Provider" Version="1.1.9" />
                    
For projects that support PackageReference, copy this XML node into the project file to reference the package.
<PackageVersion Include="Nutstone.GitHub.Service.Provider" Version="1.1.9" />
                    
Directory.Packages.props
<PackageReference Include="Nutstone.GitHub.Service.Provider" />
                    
Project file
For projects that support Central Package Management (CPM), copy this XML node into the solution Directory.Packages.props file to version the package.
paket add Nutstone.GitHub.Service.Provider --version 1.1.9
                    
#r "nuget: Nutstone.GitHub.Service.Provider, 1.1.9"
                    
#r directive can be used in F# Interactive and Polyglot Notebooks. Copy this into the interactive tool or source code of the script to reference the package.
#addin nuget:?package=Nutstone.GitHub.Service.Provider&version=1.1.9
                    
Install as a Cake Addin
#tool nuget:?package=Nutstone.GitHub.Service.Provider&version=1.1.9
                    
Install as a Cake Tool

GitHub.Service.Provider

Provides a library of methods to interact with local and remote git repositories. It uses the GTIHUB http api for remote repositories and LIB2GITSHARP for local repositories

It supports win-x64 and ubuntu 2.X

written in c# .net 8.0 (C) David Nuttall

Authentication

To access GITHUB methods it expects a GITHUB PAT token to be supplied (which is normally held in a local USER environmentvariable which , by default, is called 'GitToken'). OAuth is not currently supported

Usage

Virtualually all methods require a GitRequest object to be passed in as a parameter an example of which is :-

    gitRequest = GitRequest.Create()
                           .WithRepositoryName("remote repository name") // used for both remote and local repo names
                           .WithTokenFromEnvironmentVariable() // uses 'GitToken' en var by default 
                           .WithUser(testOwner) // or WithOrganisation 
                           .WithLocalRepositoryPath("root path to the local repository");
    
    var repoList = await GetRepositoryListAsync(gitRequest, (err, httpError) => {//do something}, (m) => {//verbose msg handler});                        

The library supports dependency injection and a static ServiceProvider method is supplied for registration.

      var serviceCollection = new ServiceCollection()
                                      .RegisterGitHub() // register github
                                      .yourregistrations

Class VisualStudioService (IVisualStudioService)

Manipuates visual studio csproj files c# only

Category Visual Studio

Method Description
GetInstalledTools Returns a [DotNetToolLocalCollection]. A collection of dot net tools installed in the local user store
InstallDotnetTool Installs the given packid as a dot net tool to the local user store
GetTools Gets a [DotNetToolCollection]. of nuget dotnet tools with an optional Filter
GetProject Returns [VisualStudioProjectCollection]. A collection of visual studio projects
GetProjectGroupByName Gets the type associated with a group name
GetAvailableGroups Gets a list of labels associated with a projectgroup
UninstallDotNetTool Uninstalls the given package from the dot net tool local tool store
GetProjectsFromDocument Returns [VisualStudioProjectCollection]. A collection of visual studio projects from a .csproj

GetInstalledTools

Returns a [DotNetToolLocalCollection]. A collection of dot net tools installed in the local user store

Returns DotNetToolLocalCollection

var DotNetToolLocalCollectionResult = GetInstalledTools(msgHandler);

** Parameters **

msgHandler

Type: [Action<IEnumerable`1>] Default: Not Applicable


InstallDotnetTool

Installs the given packid as a dot net tool to the local user store

Returns Int32

var Int32Result = InstallDotnetTool(packageId, msgHandler);

** Parameters **

packageId

Type: [String] Default: Not Applicable

msgHandler

Type: [Action<IEnumerable`1>] Default: Not Applicable


GetTools

Gets a [DotNetToolCollection]. of nuget dotnet tools with an optional Filter

Returns DotNetToolCollection

var DotNetToolCollectionResult = GetTools(filter);

** Parameters **

filter

Type: [String?] Default:


GetProject

Returns [VisualStudioProjectCollection]. A collection of visual studio projects

Returns VisualStudioProjectCollection

var VisualStudioProjectCollectionResult = GetProject(projectPath);

** Parameters **

projectPath

Type: [String] Default: Not Applicable


GetProjectGroupByName

Gets the type associated with a group name

Returns Type

var TypeResult = GetProjectGroupByName(name);

** Parameters **

name

Type: [String] Default: Not Applicable


GetAvailableGroups

Gets a list of labels associated with a projectgroup

Returns IEnumerable`1

var IEnumerable`1Result = GetAvailableGroups();

** Parameters **


UninstallDotNetTool

Uninstalls the given package from the dot net tool local tool store

Returns Int32

var Int32Result = UninstallDotNetTool(packageId, msgHandler);

** Parameters **

packageId

Type: [String] Default: Not Applicable

msgHandler

Type: [Action<IEnumerable`1>] Default: Not Applicable


GetProjectsFromDocument

Returns [VisualStudioProjectCollection]. A collection of visual studio projects from a .csproj

Returns VisualStudioProjectCollection

var VisualStudioProjectCollectionResult = GetProjectsFromDocument(document, projectPath);

** Parameters **

document

Type: [XDocument] Default: Not Applicable

projectPath

Type: [String] Default: Not Applicable


Class GitClient (IGitClient)

Single entry point to GitHub and Local Git operations

Category GitHub

Method Description
GetRepositoryList Returns a list of Repositories GitRepositoryListCollection
GetRepositoryListAsync Returns a list of Repositories GitRepositoryListCollection
GetGitRepositoryInfoAsync Retirieves a GitRepositoryInfo object of the specified repository
GetGitRepositoryInfo Retirieves a GitRepositoryInfo object of the specified repository
CreatePullRequestAsync Creates a remote repository Pull request and returns GitPullResponse object of the result
CreatePullRequest Creates a remote repository Pull request and returns GitPullResponse object of the result
GetPullRequestsAsync Returns a collection GitPullRequestCollection of pull requests for the given repository
GetPullRequests Returns a collection GitPullRequestCollection of pull requests for the given repository
AuthorisePullRequestAsync Authorises a remote pull request using the given GitAuthorisePullRequest object
AuthorisePullRequest Authorises a remote pull request using the given GitAuthorisePullRequest object
MergePullRequestAsync Megres pull request changes (that has been authorised) into the target origin branch
MergePullRequest Megres pull request changes (that has been authorised) into the target origin branch
CreateReleaseAsync Creates a github release using the given GitRelease object
CreateRelease Creates a github release using the given GitRelease object
AddAssetToReleaseAsync Adds a asset to an existing release using the given release id
AddAssetToRelease Adds a asset to an existing release using the given release id
GetReleaseCollectionAsync Returns a GitReleaseCollection if releases for the specified remote repository
GetLatestReleaseAsync Returns a GitReleaseItem object of the latest release of the specified remote repository
GetReleaseCollection Returns a GitReleaseCollection if releases for the specified remote repository
GetLatestRelease Returns a GitReleaseItem object of the latest release of the specified remote repository
DeleteReleaseAsync Permanently deletes a release from a remote repository
DeleteRelease Permanently deletes a release from a remote repository
DowloadReleaseAsync Dowloads the content of a release locally using the given GitDownloadReleaseRequest object
DowloadRelease Dowloads the content of a release locally using the given GitDownloadReleaseRequest object
TestConnectionAsync Tests the given GitRequest to ensure it is a valid connection
TestConnection Tests the given GitRequest to ensure it is a valid connection
GetWorkFlowsAsync Returns a GitWorkFlowCollection object of current defined workflows (Actions) of the specified remote repository
GetWorkFlows Returns a GitWorkFlowCollection object of current defined workflows (Actions) of the specified remote repository
GetRepositoryInfoAsync Returns a GitRepositoryInfo object of the specified remote repository
GetWorkFlowYamlAsync Returns a GitFileContent object of the specified workflow path
GetWorkFlowYaml Returns a GitFileContent object of the specified workflow path
GetGitWorkFlowByNameAsync Returns a [GitWorkFlow] object from the given workflow name
GetGitWorkFlowByName Returns a [GitWorkFlow] object from the given workflow name
GetRepositoryInfo Returns a GitRepositoryInfo object of the specified remote repository
RunWorkFlowAsync Runs the specified workflow/action using the given GitWorkFlowRequest and returns a GitWorkFlowResponse object
RunWorkFlow Runs the specified workflow/action using the given GitWorkFlowRequest and returns a GitWorkFlowResponse object
GetWorkFlowRunLogsAsBytesAsync Returns a Workflow log as a byte[] stream
GetWorkFlowRunLogsAsBytes Returns a Workflow log as a byte[] stream
GetWorkFlowRunLogsAsync Downloads the logs from a workflow using the given GitWorkFlowResponse object and to the directory speficied in the targetDirectory parameter
GetWorkFlowRunLogs Downloads the logs from a workflow using the given GitWorkFlowResponse object and to the directory speficied in the targetDirectory parameter
GetWorkFlowRunsAsync Returns a GitWorkFlowRunsResponseCollection object collection using the given workflowId id
PollWorkFlowAsync Returns a GitWorkFlowResponse object of the current state of a workflow using the given workFlowId
GetWorkFlowRuns Returns a GitWorkFlowRunsResponseCollection object collection of workflow runs
PollWorkFlow Returns a GitWorkFlowResponse object of the current state of a workflow using the given workFlowId
CreateRespositoryAsync Creates a remote repository using the given GitRepositoryRequest object
CreateRespository Creates a remote repository using the given GitRepositoryRequest object
DeleteRepositoryAsync Deletes a Remote repository using the GitRequest object
DeleteRepository Deletes a Remote repository using the given GitRequest object
MergeRemoteAsync Merges a remote branch into a remote origin using the given GitMergeRemoteRequest object
MergeRemote Merges a remote branch into a remote origin using the given GitMergeRemoteRequest object
ConfigureBranchProtectionAsync Configures a remote repository branch protection using the given GitBranchProtectionRequest object
ConfigureBranchProtection Configures a remote repository branch protection using the given GitBranchProtectionRequest object
GetPullRequestAsync Returns a GitPullRequestDetail object for the given pull request pull number
GetPullRequest Returns a GitPullRequestDetail object for the given pull request pull number
GetWorkFlowJobsAsync Returns a [YamlJobsCollection] object collection of the given workflow name
GetWorkFlowJobs Returns a [YamlJobsCollection] object collection of the given workflow name
GetUserInformationAsync Returns a GitUserInformation object containing information about the user who owns the repository
GetUserInformation Returns a GitUserInformation object containing information about the user who owns the repository

Category Local Git

Method Description
Clone Clones a remote repository
CreateBranch Creates a new branch
Pull Pulls latest from remote
CreateTag Creates a tag
GetCommitsAsync Returns a list of commits GitCommitCollection
GetCommits Returns a list of commits GitCommitCollection
GetLatestCommitAsync Returns the last commit
GetLatestCommit Returns the last commit
IsLocalRepoLatestCommitAsync Compares the local last connit with the remote
CheckoutBranch Checks out a branch. If the branch does not exist - it is created
IsLocalRepoLatestCommit Compares the local last connit with the remote
GetRepo If the specified local repository does not exist it is cloned. If it exosts the current branch is checked
AddFileToLocalRepo Add's the specified file to the local repository
GetLocalSemanticTags Returns a [SemanticVersionCollection] object of the specified local git repository (A list of tags)
Commit Commits current changes to the local git repository
CommitWithTag Commits current changes to the local git repository and adds a Tag to that commit with the given tag name
CommitWithNextSemanticTag Commis current changes to the local git repository with the next version of the semantic tag. Essentially incrementing the current tag value
Push Pushed any commited changes to the remote repository
GetLocalBranches Returns a [LocalBranchCollection] collection of all local and remote branches
DeleteLocalBranch Deletes a local branch
GetTags Returns a GitTagCollection object of all tags defined in the repository
GetCurrentBranch Returns a [String] representing the current branch of a local repository
GetOriginBranch Returns a [string] that represents the current origin branch of the given local repository
DeleteLocalRepository Deletes a local repository using the given GitRequest object
HaveUncommitedChanges Returns a [bool] indicating whether there are outstanding changes for the given local repository
UndoChanges Removes any uncommited chages for a local repository
RemoteBranchExists Returns a [bool] indicating if the remote branch specified exists
RemoveTag Removes the given tag locally and remotely
IsGitRepo Returns a [bool] indication as to whether the supplied source path is a local git repository

GetRepositoryList

Returns a list of Repositories GitRepositoryListCollection

Returns GitRepositoryListCollection

var GitRepositoryListCollectionResult = GetRepositoryList(gitRequest, errorResponse, msgHandler);

** Parameters **

gitRequest

Type: GitRequest Default: Not Applicable

errorResponse

Type: [Action<String, HttpResponseMessage>] Default: Not Applicable

msgHandler

Type: [Action<String>?] Default:


GetRepositoryListAsync

Returns a list of Repositories GitRepositoryListCollection

Returns GitRepositoryListCollection

var GitRepositoryListCollectionResult = await GetRepositoryListAsync(gitRequest, errorResponse, msgHandler);

** Parameters **

gitRequest

Type: GitRequest Default: Not Applicable

errorResponse

Type: [Action<String, HttpResponseMessage>] Default: Not Applicable

msgHandler

Type: [Action<String>?] Default:


GetGitRepositoryInfoAsync

Retirieves a GitRepositoryInfo object of the specified repository

Returns GitRepositoryInfo

var GitRepositoryInfoResult = await GetGitRepositoryInfoAsync(request, errorResponse, msgHandler);

** Parameters **

request

Type: GitRequest Default: Not Applicable

errorResponse

Type: [Action<String, HttpResponseMessage>] Default: Not Applicable

msgHandler

Type: [Action<String>?] Default:


GetGitRepositoryInfo

Retirieves a GitRepositoryInfo object of the specified repository

Returns GitRepositoryInfo

var GitRepositoryInfoResult = GetGitRepositoryInfo(request, errorResponse, msgHandler);

** Parameters **

request

Type: GitRequest Default: Not Applicable

errorResponse

Type: [Action<String, HttpResponseMessage>] Default: Not Applicable

msgHandler

Type: [Action<String>?] Default:


CreatePullRequestAsync

Creates a remote repository Pull request and returns GitPullResponse object of the result

Returns GitPullResponse

var GitPullResponseResult = await CreatePullRequestAsync(gitRequest, gitPullRequest, errorResponse, msgHandler);

** Parameters **

gitRequest

Type: GitRequest Default: Not Applicable

gitPullRequest

Type: GitPullRequest Default: Not Applicable

errorResponse

Type: [Action<String, HttpResponseMessage>] Default: Not Applicable

msgHandler

Type: [Action<String>?] Default:


CreatePullRequest

Creates a remote repository Pull request and returns GitPullResponse object of the result

Returns GitPullResponse

var GitPullResponseResult = CreatePullRequest(gitRequest, gitPullRequest, errorResponse, msgHandler);

** Parameters **

gitRequest

Type: GitRequest Default: Not Applicable

gitPullRequest

Type: GitPullRequest Default: Not Applicable

errorResponse

Type: [Action<String, HttpResponseMessage>] Default: Not Applicable

msgHandler

Type: [Action<String>?] Default:


GetPullRequestsAsync

Returns a collection GitPullRequestCollection of pull requests for the given repository

Returns GitPullRequestCollection

var GitPullRequestCollectionResult = await GetPullRequestsAsync(gitRequest, errorResponse, msgHandler);

** Parameters **

gitRequest

Type: GitRequest Default: Not Applicable

errorResponse

Type: [Action<String, HttpResponseMessage>] Default: Not Applicable

msgHandler

Type: [Action<String>?] Default:


GetPullRequests

Returns a collection GitPullRequestCollection of pull requests for the given repository

Returns GitPullRequestCollection

var GitPullRequestCollectionResult = GetPullRequests(gitRequest, errorResponse, msgHandler);

** Parameters **

gitRequest

Type: GitRequest Default: Not Applicable

errorResponse

Type: [Action<String, HttpResponseMessage>] Default: Not Applicable

msgHandler

Type: [Action<String>?] Default:


AuthorisePullRequestAsync

Authorises a remote pull request using the given GitAuthorisePullRequest object

Returns GitAuthorisePullResponse

var GitAuthorisePullResponseResult = await AuthorisePullRequestAsync(gitRequest, gitAuthorisePullRequest, errorResponse, msgHandler);

** Parameters **

gitRequest

Type: GitRequest Default: Not Applicable

gitAuthorisePullRequest

Type: GitAuthorisePullRequest Default: Not Applicable

errorResponse

Type: [Action<String, HttpResponseMessage>] Default: Not Applicable

msgHandler

Type: [Action<String>?] Default:


AuthorisePullRequest

Authorises a remote pull request using the given GitAuthorisePullRequest object

Returns GitAuthorisePullResponse

var GitAuthorisePullResponseResult = AuthorisePullRequest(gitRequest, gitAuthorisePullRequest, errorResponse, msgHandler);

** Parameters **

gitRequest

Type: GitRequest Default: Not Applicable

gitAuthorisePullRequest

Type: GitAuthorisePullRequest Default: Not Applicable

errorResponse

Type: [Action<String, HttpResponseMessage>] Default: Not Applicable

msgHandler

Type: [Action<String>?] Default:


MergePullRequestAsync

Megres pull request changes (that has been authorised) into the target origin branch

Returns GitMergeResponse

var GitMergeResponseResult = await MergePullRequestAsync(gitRequest, comment, pullRequestNumber, errorResponse, msgHandler, deleteBranchOnSuccess);

** Parameters **

gitRequest

Type: GitRequest Default: Not Applicable

comment

Type: [String] Default: Not Applicable

pullRequestNumber

Type: [Int64] Default: Not Applicable

errorResponse

Type: [Action<String, HttpResponseMessage>] Default: Not Applicable

msgHandler

Type: [Action<String>?] Default:

deleteBranchOnSuccess

Type: [Boolean] Default: True


MergePullRequest

Megres pull request changes (that has been authorised) into the target origin branch

Returns GitMergeResponse

var GitMergeResponseResult = MergePullRequest(gitRequest, comment, pullRequestNumber, errorResponse, msgHandler, deleteBranchOnSuccess);

** Parameters **

gitRequest

Type: GitRequest Default: Not Applicable

comment

Type: [String] Default: Not Applicable

pullRequestNumber

Type: [Int32] Default: Not Applicable

errorResponse

Type: [Action<String, HttpResponseMessage>] Default: Not Applicable

msgHandler

Type: [Action<String>?] Default:

deleteBranchOnSuccess

Type: [Boolean] Default: True


CreateReleaseAsync

Creates a github release using the given GitRelease object

Returns GitReleaseResponse

var GitReleaseResponseResult = await CreateReleaseAsync(gitRequest, release, errorResponse, msgHandler);

** Parameters **

gitRequest

Type: GitRequest Default: Not Applicable

release

Type: GitRelease Default: Not Applicable

errorResponse

Type: [Action<String, HttpResponseMessage>] Default: Not Applicable

msgHandler

Type: [Action<String>?] Default:


CreateRelease

Creates a github release using the given GitRelease object

Returns GitReleaseResponse

var GitReleaseResponseResult = CreateRelease(gitRequest, release, errorResponse, msgHandler);

** Parameters **

gitRequest

Type: GitRequest Default: Not Applicable

release

Type: GitRelease Default: Not Applicable

errorResponse

Type: [Action<String, HttpResponseMessage>] Default: Not Applicable

msgHandler

Type: [Action<String>?] Default:


AddAssetToReleaseAsync

Adds a asset to an existing release using the given release id

Returns List`1

var List`1Result = await AddAssetToReleaseAsync(gitRequest, assets, releaseId, errorResponse, msgHandler);

** Parameters **

gitRequest

Type: GitRequest Default: Not Applicable

assets

Type: [List<String>] Default: Not Applicable

releaseId

Type: [Int32] Default: Not Applicable

errorResponse

Type: [Action<String, HttpResponseMessage>] Default: Not Applicable

msgHandler

Type: [Action<String>?] Default:


AddAssetToRelease

Adds a asset to an existing release using the given release id

Returns List`1

var List`1Result = AddAssetToRelease(gitRequest, assets, releaseId, errorResponse, msgHandler);

** Parameters **

gitRequest

Type: GitRequest Default: Not Applicable

assets

Type: [List<String>] Default: Not Applicable

releaseId

Type: [Int32] Default: Not Applicable

errorResponse

Type: [Action<String, HttpResponseMessage>] Default: Not Applicable

msgHandler

Type: [Action<String>?] Default:


GetReleaseCollectionAsync

Returns a GitReleaseCollection if releases for the specified remote repository

Returns GitReleaseCollection

var GitReleaseCollectionResult = await GetReleaseCollectionAsync(gitRequest, errorResponse, msgHandler);

** Parameters **

gitRequest

Type: GitRequest Default: Not Applicable

errorResponse

Type: [Action<String, HttpResponseMessage>] Default: Not Applicable

msgHandler

Type: [Action<String>?] Default:


GetLatestReleaseAsync

Returns a GitReleaseItem object of the latest release of the specified remote repository

Returns GitReleaseItem

var GitReleaseItemResult = await GetLatestReleaseAsync(gitRequest, errorResponse, msgHandler);

** Parameters **

gitRequest

Type: GitRequest Default: Not Applicable

errorResponse

Type: [Action<String, HttpResponseMessage>] Default: Not Applicable

msgHandler

Type: [Action<String>?] Default:


GetReleaseCollection

Returns a GitReleaseCollection if releases for the specified remote repository

Returns GitReleaseCollection

var GitReleaseCollectionResult = GetReleaseCollection(gitRequest, errorResponse, msgHandler);

** Parameters **

gitRequest

Type: GitRequest Default: Not Applicable

errorResponse

Type: [Action<String, HttpResponseMessage>] Default: Not Applicable

msgHandler

Type: [Action<String>?] Default:


GetLatestRelease

Returns a GitReleaseItem object of the latest release of the specified remote repository

Returns GitReleaseItem

var GitReleaseItemResult = GetLatestRelease(gitRequest, errorResponse, msgHandler);

** Parameters **

gitRequest

Type: GitRequest Default: Not Applicable

errorResponse

Type: [Action<String, HttpResponseMessage>] Default: Not Applicable

msgHandler

Type: [Action<String>?] Default:


DeleteReleaseAsync

Permanently deletes a release from a remote repository

Returns Boolean

var BooleanResult = await DeleteReleaseAsync(gitRequest, releaseId);

** Parameters **

gitRequest

Type: GitRequest Default: Not Applicable

releaseId

Type: [Int32] Default: Not Applicable


DeleteRelease

Permanently deletes a release from a remote repository

Returns Boolean

var BooleanResult = DeleteRelease(gitRequest, releaseId);

** Parameters **

gitRequest

Type: GitRequest Default: Not Applicable

releaseId

Type: [Int32] Default: Not Applicable


DowloadReleaseAsync

Dowloads the content of a release locally using the given GitDownloadReleaseRequest object

Returns GitDownloadReleaseResponse

var GitDownloadReleaseResponseResult = await DowloadReleaseAsync(gitRequest, downloadRelease, errorResponse, msgHandler);

** Parameters **

gitRequest

Type: GitRequest Default: Not Applicable

downloadRelease

Type: GitDownloadReleaseRequest Default: Not Applicable

errorResponse

Type: [Action<String, HttpResponseMessage>] Default: Not Applicable

msgHandler

Type: [Action<String>?] Default:


DowloadRelease

Dowloads the content of a release locally using the given GitDownloadReleaseRequest object

Returns GitDownloadReleaseResponse

var GitDownloadReleaseResponseResult = DowloadRelease(gitRequest, downloadRelease, errorResponse, msgHandler);

** Parameters **

gitRequest

Type: GitRequest Default: Not Applicable

downloadRelease

Type: GitDownloadReleaseRequest Default: Not Applicable

errorResponse

Type: [Action<String, HttpResponseMessage>] Default: Not Applicable

msgHandler

Type: [Action<String>?] Default:


TestConnectionAsync

Tests the given GitRequest to ensure it is a valid connection

Returns Boolean

var BooleanResult = await TestConnectionAsync(gitRequest, errorResponse, msgHandler);

** Parameters **

gitRequest

Type: GitRequest Default: Not Applicable

errorResponse

Type: [Action<String, HttpResponseMessage>] Default: Not Applicable

msgHandler

Type: [Action<String>?] Default:


TestConnection

Tests the given GitRequest to ensure it is a valid connection

Returns Boolean

var BooleanResult = TestConnection(gitRequest, errorResponse, msgHandler);

** Parameters **

gitRequest

Type: GitRequest Default: Not Applicable

errorResponse

Type: [Action<String, HttpResponseMessage>] Default: Not Applicable

msgHandler

Type: [Action<String>?] Default:


GetWorkFlowsAsync

Returns a GitWorkFlowCollection object of current defined workflows (Actions) of the specified remote repository

Returns GitWorkFlowCollection

var GitWorkFlowCollectionResult = await GetWorkFlowsAsync(gitRequest, errorResponse, msgHandler);

** Parameters **

gitRequest

Type: GitRequest Default: Not Applicable

errorResponse

Type: [Action<String, HttpResponseMessage>] Default: Not Applicable

msgHandler

Type: [Action<String>?] Default:


GetWorkFlows

Returns a GitWorkFlowCollection object of current defined workflows (Actions) of the specified remote repository

Returns GitWorkFlowCollection

var GitWorkFlowCollectionResult = GetWorkFlows(gitRequest, errorResponse, msgHandler);

** Parameters **

gitRequest

Type: GitRequest Default: Not Applicable

errorResponse

Type: [Action<String, HttpResponseMessage>] Default: Not Applicable

msgHandler

Type: [Action<String>?] Default:


GetRepositoryInfoAsync

Returns a GitRepositoryInfo object of the specified remote repository

Returns GitRepositoryInfo

var GitRepositoryInfoResult = await GetRepositoryInfoAsync(gitRequest, errorResponse, msgHandler);

** Parameters **

gitRequest

Type: GitRequest Default: Not Applicable

errorResponse

Type: [Action<String, HttpResponseMessage>] Default: Not Applicable

msgHandler

Type: [Action<String>?] Default:


GetWorkFlowYamlAsync

Returns a GitFileContent object of the specified workflow path

Returns GitFileContent

var GitFileContentResult = await GetWorkFlowYamlAsync(gitRequest, workFlowYamlPath, errorResponse, msgHandler);

** Parameters **

gitRequest

Type: GitRequest Default: Not Applicable

workFlowYamlPath

Type: [String] Default: Not Applicable

errorResponse

Type: [Action<String, HttpResponseMessage>] Default: Not Applicable

msgHandler

Type: [Action<String>?] Default:


GetWorkFlowYaml

Returns a GitFileContent object of the specified workflow path

Returns GitFileContent

var GitFileContentResult = GetWorkFlowYaml(gitRequest, workFlowYamlPath, errorResponse, msgHandler);

** Parameters **

gitRequest

Type: GitRequest Default: Not Applicable

workFlowYamlPath

Type: [String] Default: Not Applicable

errorResponse

Type: [Action<String, HttpResponseMessage>] Default: Not Applicable

msgHandler

Type: [Action<String>?] Default:


GetGitWorkFlowByNameAsync

Returns a [GitWorkFlow] object from the given workflow name

Returns GitWorkFlow

var GitWorkFlowResult = await GetGitWorkFlowByNameAsync(gitRequest, workFlowName, errorResponse, msgHandler);

** Parameters **

gitRequest

Type: GitRequest Default: Not Applicable

workFlowName

Type: [String] Default: Not Applicable

errorResponse

Type: [Action<String, HttpResponseMessage>] Default: Not Applicable

msgHandler

Type: [Action<String>?] Default:


GetGitWorkFlowByName

Returns a [GitWorkFlow] object from the given workflow name

Returns GitWorkFlow

var GitWorkFlowResult = GetGitWorkFlowByName(gitRequest, workFlowName, errorResponse, msgHandler);

** Parameters **

gitRequest

Type: GitRequest Default: Not Applicable

workFlowName

Type: [String] Default: Not Applicable

errorResponse

Type: [Action<String, HttpResponseMessage>] Default: Not Applicable

msgHandler

Type: [Action<String>?] Default:


GetRepositoryInfo

Returns a GitRepositoryInfo object of the specified remote repository

Returns GitRepositoryInfo

var GitRepositoryInfoResult = GetRepositoryInfo(gitRequest, errorResponse, msgHandler);

** Parameters **

gitRequest

Type: GitRequest Default: Not Applicable

errorResponse

Type: [Action<String, HttpResponseMessage>] Default: Not Applicable

msgHandler

Type: [Action<String>?] Default:


RunWorkFlowAsync

Runs the specified workflow/action using the given GitWorkFlowRequest and returns a GitWorkFlowResponse object

Returns GitWorkFlowResponse

var GitWorkFlowResponseResult = await RunWorkFlowAsync(gitRequest, gitWorkFlowRequest, errorResponse, msgHandler);

** Parameters **

gitRequest

Type: GitRequest Default: Not Applicable

gitWorkFlowRequest

Type: GitWorkFlowRequest Default: Not Applicable

errorResponse

Type: [Action<String, HttpResponseMessage>] Default: Not Applicable

msgHandler

Type: [Action<String>?] Default:


RunWorkFlow

Runs the specified workflow/action using the given GitWorkFlowRequest and returns a GitWorkFlowResponse object

Returns GitWorkFlowResponse

var GitWorkFlowResponseResult = RunWorkFlow(gitRequest, gitWorkFlowRequest, errorResponse, msgHandler);

** Parameters **

gitRequest

Type: GitRequest Default: Not Applicable

gitWorkFlowRequest

Type: GitWorkFlowRequest Default: Not Applicable

errorResponse

Type: [Action<String, HttpResponseMessage>] Default: Not Applicable

msgHandler

Type: [Action<String>?] Default:


GetWorkFlowRunLogsAsBytesAsync

Returns a Workflow log as a byte[] stream

Returns Byte[]

var Byte[]Result = await GetWorkFlowRunLogsAsBytesAsync(gitRequest, runId, errorResponse, msgHandler);

** Parameters **

gitRequest

Type: GitRequest Default: Not Applicable

runId

Type: [Int64] Default: Not Applicable

errorResponse

Type: [Action<String, HttpResponseMessage>] Default: Not Applicable

msgHandler

Type: [Action<String>?] Default:


GetWorkFlowRunLogsAsBytes

Returns a Workflow log as a byte[] stream

Returns Byte[]

var Byte[]Result = GetWorkFlowRunLogsAsBytes(gitRequest, runId, errorResponse, msgHandler);

** Parameters **

gitRequest

Type: GitRequest Default: Not Applicable

runId

Type: [Int64] Default: Not Applicable

errorResponse

Type: [Action<String, HttpResponseMessage>] Default: Not Applicable

msgHandler

Type: [Action<String>?] Default:


GetWorkFlowRunLogsAsync

Downloads the logs from a workflow using the given GitWorkFlowResponse object and to the directory speficied in the targetDirectory parameter

Returns String

var StringResult = await GetWorkFlowRunLogsAsync(gitRequest, workflowResponse, targetDirectory, errorResponse, msgHandler);

** Parameters **

gitRequest

Type: GitRequest Default: Not Applicable

workflowResponse

Type: GitWorkFlowResponse Default: Not Applicable

targetDirectory

Type: [String] Default: Not Applicable

errorResponse

Type: [Action<String, HttpResponseMessage>] Default: Not Applicable

msgHandler

Type: [Action<String>?] Default:


GetWorkFlowRunLogs

Downloads the logs from a workflow using the given GitWorkFlowResponse object and to the directory speficied in the targetDirectory parameter

Returns String

var StringResult = GetWorkFlowRunLogs(gitRequest, workflowResponse, targetDirectory, errorResponse, msgHandler);

** Parameters **

gitRequest

Type: GitRequest Default: Not Applicable

workflowResponse

Type: GitWorkFlowResponse Default: Not Applicable

targetDirectory

Type: [String] Default: Not Applicable

errorResponse

Type: [Action<String, HttpResponseMessage>] Default: Not Applicable

msgHandler

Type: [Action<String>?] Default:


GetWorkFlowRunsAsync

Returns a GitWorkFlowRunsResponseCollection object collection using the given workflowId id

Returns GitWorkFlowRunsResponseCollection

var GitWorkFlowRunsResponseCollectionResult = await GetWorkFlowRunsAsync(gitRequest, workflowId, dispatched, count, errorResponse, msgHandler);

** Parameters **

gitRequest

Type: GitRequest Default: Not Applicable

workflowId

Type: [Int64] Default: Not Applicable

dispatched

Type: [Nullable<DateTime>?] Default: Not Applicable

count

Type: [Int32] Default: Not Applicable

errorResponse

Type: [Action<String, HttpResponseMessage>] Default: Not Applicable

msgHandler

Type: [Action<String>?] Default:


PollWorkFlowAsync

Returns a GitWorkFlowResponse object of the current state of a workflow using the given workFlowId

Returns GitWorkFlowResponse

var GitWorkFlowResponseResult = await PollWorkFlowAsync(gitRequest, workFlowId, gitWorkFlowRequest, errorResponse, msgHandler);

** Parameters **

gitRequest

Type: GitRequest Default: Not Applicable

workFlowId

Type: [Int64] Default: Not Applicable

gitWorkFlowRequest

Type: GitWorkFlowRequest Default: Not Applicable

errorResponse

Type: [Action<String, HttpResponseMessage>] Default: Not Applicable

msgHandler

Type: [Action<String>?] Default:


GetWorkFlowRuns

Returns a GitWorkFlowRunsResponseCollection object collection of workflow runs

Returns GitWorkFlowRunsResponseCollection

var GitWorkFlowRunsResponseCollectionResult = GetWorkFlowRuns(gitRequest, workflowId, dispatched, count, errorResponse, msgHandler);

** Parameters **

gitRequest

Type: GitRequest Default: Not Applicable

workflowId

Type: [Int64] Default: Not Applicable

dispatched

Type: [Nullable<DateTime>?] Default: Not Applicable

count

Type: [Int32] Default: Not Applicable

errorResponse

Type: [Action<String, HttpResponseMessage>] Default: Not Applicable

msgHandler

Type: [Action<String>?] Default:


PollWorkFlow

Returns a GitWorkFlowResponse object of the current state of a workflow using the given workFlowId

Returns GitWorkFlowResponse

var GitWorkFlowResponseResult = PollWorkFlow(gitRequest, workFlowId, gitWorkFlowRequest, errorResponse, msgHandler);

** Parameters **

gitRequest

Type: GitRequest Default: Not Applicable

workFlowId

Type: [Int64] Default: Not Applicable

gitWorkFlowRequest

Type: GitWorkFlowRequest Default: Not Applicable

errorResponse

Type: [Action<String, HttpResponseMessage>] Default: Not Applicable

msgHandler

Type: [Action<String>?] Default:


CreateRespositoryAsync

Creates a remote repository using the given GitRepositoryRequest object

Returns GitRepositoryResponse

var GitRepositoryResponseResult = await CreateRespositoryAsync(gitRequest, gitRepositoryRequest, errorResponse, msgHandler);

** Parameters **

gitRequest

Type: GitRequest Default: Not Applicable

gitRepositoryRequest

Type: GitRepositoryRequest Default: Not Applicable

errorResponse

Type: [Action<String, HttpResponseMessage>] Default: Not Applicable

msgHandler

Type: [Action<String>?] Default:


CreateRespository

Creates a remote repository using the given GitRepositoryRequest object

Returns GitRepositoryResponse

var GitRepositoryResponseResult = CreateRespository(gitRequest, gitRepositoryRequest, errorResponse, msgHandler);

** Parameters **

gitRequest

Type: GitRequest Default: Not Applicable

gitRepositoryRequest

Type: GitRepositoryRequest Default: Not Applicable

errorResponse

Type: [Action<String, HttpResponseMessage>] Default: Not Applicable

msgHandler

Type: [Action<String>?] Default:


DeleteRepositoryAsync

Deletes a Remote repository using the GitRequest object

Returns GitDeleteRepositoryResponse

var GitDeleteRepositoryResponseResult = await DeleteRepositoryAsync(gitRequest, errorResponse, msgHandler);

** Parameters **

gitRequest

Type: GitRequest Default: Not Applicable

errorResponse

Type: [Action<String, HttpResponseMessage>] Default: Not Applicable

msgHandler

Type: [Action<String>?] Default:


DeleteRepository

Deletes a Remote repository using the given GitRequest object

Returns GitDeleteRepositoryResponse

var GitDeleteRepositoryResponseResult = DeleteRepository(gitRequest, errorResponse, msgHandler);

** Parameters **

gitRequest

Type: GitRequest Default: Not Applicable

errorResponse

Type: [Action<String, HttpResponseMessage>] Default: Not Applicable

msgHandler

Type: [Action<String>?] Default:


MergeRemoteAsync

Merges a remote branch into a remote origin using the given GitMergeRemoteRequest object

Returns GitMergeRemoteResponse

var GitMergeRemoteResponseResult = await MergeRemoteAsync(gitRequest, gitMergeRemoteRequest, errorResponse, msgHandler);

** Parameters **

gitRequest

Type: GitRequest Default: Not Applicable

gitMergeRemoteRequest

Type: GitMergeRemoteRequest Default: Not Applicable

errorResponse

Type: [Action<String, HttpResponseMessage>] Default: Not Applicable

msgHandler

Type: [Action<String>?] Default:


MergeRemote

Merges a remote branch into a remote origin using the given GitMergeRemoteRequest object

Returns GitMergeRemoteResponse

var GitMergeRemoteResponseResult = MergeRemote(gitRequest, gitMergeRemoteRequest, errorResponse, msgHandler);

** Parameters **

gitRequest

Type: GitRequest Default: Not Applicable

gitMergeRemoteRequest

Type: GitMergeRemoteRequest Default: Not Applicable

errorResponse

Type: [Action<String, HttpResponseMessage>] Default: Not Applicable

msgHandler

Type: [Action<String>?] Default:


ConfigureBranchProtectionAsync

Configures a remote repository branch protection using the given GitBranchProtectionRequest object

Returns GitBranchProtectionResult

var GitBranchProtectionResultResult = await ConfigureBranchProtectionAsync(gitRequest, gitBranchProtectionRequest, errorResponse, msgHandler);

** Parameters **

gitRequest

Type: GitRequest Default: Not Applicable

gitBranchProtectionRequest

Type: GitBranchProtectionRequest Default: Not Applicable

errorResponse

Type: [Action<String, HttpResponseMessage>] Default: Not Applicable

msgHandler

Type: [Action<String>?] Default:


ConfigureBranchProtection

Configures a remote repository branch protection using the given GitBranchProtectionRequest object

Returns GitBranchProtectionResult

var GitBranchProtectionResultResult = ConfigureBranchProtection(gitRequest, gitBranchProtectionRequest, errorResponse, msgHandler);

** Parameters **

gitRequest

Type: GitRequest Default: Not Applicable

gitBranchProtectionRequest

Type: GitBranchProtectionRequest Default: Not Applicable

errorResponse

Type: [Action<String, HttpResponseMessage>] Default: Not Applicable

msgHandler

Type: [Action<String>?] Default:


GetPullRequestAsync

Returns a GitPullRequestDetail object for the given pull request pull number

Returns GitPullRequestDetail

var GitPullRequestDetailResult = await GetPullRequestAsync(gitRequest, pullNumber, errorResponse, msgHandler);

** Parameters **

gitRequest

Type: GitRequest Default: Not Applicable

pullNumber

Type: [Int64] Default: Not Applicable

errorResponse

Type: [Action<String, HttpResponseMessage>] Default: Not Applicable

msgHandler

Type: [Action<String>?] Default:


GetPullRequest

Returns a GitPullRequestDetail object for the given pull request pull number

Returns GitPullRequestDetail

var GitPullRequestDetailResult = GetPullRequest(gitRequest, pullNumber, errorResponse, msgHandler);

** Parameters **

gitRequest

Type: GitRequest Default: Not Applicable

pullNumber

Type: [Int64] Default: Not Applicable

errorResponse

Type: [Action<String, HttpResponseMessage>] Default: Not Applicable

msgHandler

Type: [Action<String>?] Default:


GetWorkFlowJobsAsync

Returns a [YamlJobsCollection] object collection of the given workflow name

Returns YamlJobsCollection

var YamlJobsCollectionResult = await GetWorkFlowJobsAsync(gitRequest, workFlowName, errorResponse, msgHandler);

** Parameters **

gitRequest

Type: GitRequest Default: Not Applicable

workFlowName

Type: [String] Default: Not Applicable

errorResponse

Type: [Action<String, HttpResponseMessage>] Default: Not Applicable

msgHandler

Type: [Action<String>?] Default:


GetWorkFlowJobs

Returns a [YamlJobsCollection] object collection of the given workflow name

Returns YamlJobsCollection

var YamlJobsCollectionResult = GetWorkFlowJobs(gitRequest, workFlowName, errorResponse, msgHandler);

** Parameters **

gitRequest

Type: GitRequest Default: Not Applicable

workFlowName

Type: [String] Default: Not Applicable

errorResponse

Type: [Action<String, HttpResponseMessage>] Default: Not Applicable

msgHandler

Type: [Action<String>?] Default:


GetUserInformationAsync

Returns a GitUserInformation object containing information about the user who owns the repository

Returns GitUserInformation

var GitUserInformationResult = await GetUserInformationAsync(gitRequest, orgOrUser, errorResponse, msgHandler);

** Parameters **

gitRequest

Type: GitRequest Default: Not Applicable

orgOrUser

Type: [String] Default: Not Applicable

errorResponse

Type: [Action<String, HttpResponseMessage>] Default: Not Applicable

msgHandler

Type: [Action<String>?] Default:


GetUserInformation

Returns a GitUserInformation object containing information about the user who owns the repository

Returns GitUserInformation

var GitUserInformationResult = GetUserInformation(gitRequest, orgOrUser, errorResponse, msgHandler);

** Parameters **

gitRequest

Type: GitRequest Default: Not Applicable

orgOrUser

Type: [String] Default: Not Applicable

errorResponse

Type: [Action<String, HttpResponseMessage>] Default: Not Applicable

msgHandler

Type: [Action<String>?] Default:


Clone

Clones a remote repository

Returns Boolean

var BooleanResult = Clone(request, progressHandler, errorHandler, msgHandler);

** Parameters **

request

Type: GitRequest Default: Not Applicable

progressHandler

Type: [Action<CloneProgress>] Default: Not Applicable

errorHandler

Type: [Action<Exception>] Default: Not Applicable

msgHandler

Type: [Action<String>?] Default:


CreateBranch

Creates a new branch

Returns Boolean

var BooleanResult = CreateBranch(request, errorHandler, msgHandler);

** Parameters **

request

Type: GitRequest Default: Not Applicable

errorHandler

Type: [Action<String>] Default: Not Applicable

msgHandler

Type: [Action<String>?] Default:


Pull

Pulls latest from remote

Returns MergeStatus

var MergeStatusResult = Pull(request, errorHAndler, msgHandler);

** Parameters **

request

Type: GitRequest Default: Not Applicable

errorHAndler

Type: [Action<String>] Default: Not Applicable

msgHandler

Type: [Action<String>?] Default:


CreateTag

Creates a tag

Returns Boolean

var BooleanResult = CreateTag(request, tagName, releaseNote, errorHandler, msgHandler);

** Parameters **

request

Type: GitRequest Default: Not Applicable

tagName

Type: [String] Default: Not Applicable

releaseNote

Type: [String] Default: Not Applicable

errorHandler

Type: [Action<String>] Default: Not Applicable

msgHandler

Type: [Action<String>?] Default:


GetCommitsAsync

Returns a list of commits GitCommitCollection

Returns GitCommitCollection

var GitCommitCollectionResult = await GetCommitsAsync(gitRequest, errorResponse, msgHandler);

** Parameters **

gitRequest

Type: GitRequest Default: Not Applicable

errorResponse

Type: [Action<String, HttpResponseMessage>] Default: Not Applicable

msgHandler

Type: [Action<String>?] Default:


GetCommits

Returns a list of commits GitCommitCollection

Returns GitCommitCollection

var GitCommitCollectionResult = GetCommits(gitRequest, errorResponse, msgHandler);

** Parameters **

gitRequest

Type: GitRequest Default: Not Applicable

errorResponse

Type: [Action<String, HttpResponseMessage>] Default: Not Applicable

msgHandler

Type: [Action<String>?] Default:


GetLatestCommitAsync

Returns the last commit

Returns String

var StringResult = await GetLatestCommitAsync(gitRequest, errorResponse, msgHandler);

** Parameters **

gitRequest

Type: GitRequest Default: Not Applicable

errorResponse

Type: [Action<String, HttpResponseMessage>] Default: Not Applicable

msgHandler

Type: [Action<String>?] Default:


GetLatestCommit

Returns the last commit

Returns String

var StringResult = GetLatestCommit(gitRequest, errorResponse, msgHandler);

** Parameters **

gitRequest

Type: GitRequest Default: Not Applicable

errorResponse

Type: [Action<String, HttpResponseMessage>] Default: Not Applicable

msgHandler

Type: [Action<String>?] Default:


IsLocalRepoLatestCommitAsync

Compares the local last connit with the remote

Returns Boolean

var BooleanResult = await IsLocalRepoLatestCommitAsync(request, errorResponse, msgHandler);

** Parameters **

request

Type: GitRequest Default: Not Applicable

errorResponse

Type: [Action<String, HttpResponseMessage>] Default: Not Applicable

msgHandler

Type: [Action<String>?] Default:


CheckoutBranch

Checks out a branch. If the branch does not exist - it is created

Returns Boolean

var BooleanResult = CheckoutBranch(gitRequest, errorHandler, msgHandler);

** Parameters **

gitRequest

Type: GitRequest Default: Not Applicable

errorHandler

Type: [Action<String>] Default: Not Applicable

msgHandler

Type: [Action<String>?] Default:


IsLocalRepoLatestCommit

Compares the local last connit with the remote

Returns Boolean

var BooleanResult = IsLocalRepoLatestCommit(request, errorResponse, msgHandler);

** Parameters **

request

Type: GitRequest Default: Not Applicable

errorResponse

Type: [Action<String, HttpResponseMessage>] Default: Not Applicable

msgHandler

Type: [Action<String>?] Default:


GetRepo

If the specified local repository does not exist it is cloned. If it exosts the current branch is checked

Returns Boolean

var BooleanResult = GetRepo(gitRequest, errorHandler, msgHandler);

** Parameters **

gitRequest

Type: GitRequest Default: Not Applicable

errorHandler

Type: [Action<String>] Default: Not Applicable

msgHandler

Type: [Action<String>?] Default:


AddFileToLocalRepo

Add's the specified file to the local repository

Returns Boolean

var BooleanResult = AddFileToLocalRepo(gitRequest, filePath);

** Parameters **

gitRequest

Type: GitRequest Default: Not Applicable

filePath

Type: [String] Default: Not Applicable


GetLocalSemanticTags

Returns a [SemanticVersionCollection] object of the specified local git repository (A list of tags)

Returns SemanticVersionCollection

var SemanticVersionCollectionResult = GetLocalSemanticTags(request, msgHandler);

** Parameters **

request

Type: GitRequest Default: Not Applicable

msgHandler

Type: [Action<String>?] Default: Not Applicable


Commit

Commits current changes to the local git repository

Returns Boolean

var BooleanResult = Commit(gitRequest, commitMessage, errorHandler, msgHandler);

** Parameters **

gitRequest

Type: GitRequest Default: Not Applicable

commitMessage

Type: [String] Default: Not Applicable

errorHandler

Type: [Action<String>] Default: Not Applicable

msgHandler

Type: [Action<String>?] Default:


CommitWithTag

Commits current changes to the local git repository and adds a Tag to that commit with the given tag name

Returns Boolean

var BooleanResult = CommitWithTag(gitRequest, tag, commitMessage, errorHandler, msgHandler);

** Parameters **

gitRequest

Type: GitRequest Default: Not Applicable

tag

Type: [String] Default: Not Applicable

commitMessage

Type: [String] Default: Not Applicable

errorHandler

Type: [Action<String>] Default: Not Applicable

msgHandler

Type: [Action<String>?] Default:


CommitWithNextSemanticTag

Commis current changes to the local git repository with the next version of the semantic tag. Essentially incrementing the current tag value

Returns Boolean

var BooleanResult = CommitWithNextSemanticTag(gitRequest, commitMessage, errorHandler, msgHandler);

** Parameters **

gitRequest

Type: GitRequest Default: Not Applicable

commitMessage

Type: [String] Default: Not Applicable

errorHandler

Type: [Action<String>] Default: Not Applicable

msgHandler

Type: [Action<String>?] Default:


Push

Pushed any commited changes to the remote repository

Returns Boolean

var BooleanResult = Push(request, pushProgressHandler, errorHandler, msgHandler);

** Parameters **

request

Type: GitRequest Default: Not Applicable

pushProgressHandler

Type: [Action<PushProgress>?] Default: Not Applicable

errorHandler

Type: [Action<String>] Default: Not Applicable

msgHandler

Type: [Action<String>?] Default:


GetLocalBranches

Returns a [LocalBranchCollection] collection of all local and remote branches

Returns LocalBranchCollection

var LocalBranchCollectionResult = GetLocalBranches(request, msgHandler);

** Parameters **

request

Type: GitRequest Default: Not Applicable

msgHandler

Type: [Action<String>?] Default: Not Applicable


DeleteLocalBranch

Deletes a local branch

Returns Boolean

var BooleanResult = DeleteLocalBranch(gitRequest, msgHandler);

** Parameters **

gitRequest

Type: GitRequest Default: Not Applicable

msgHandler

Type: [Action<String>?] Default:


GetTags

Returns a GitTagCollection object of all tags defined in the repository

Returns GitTagCollection

var GitTagCollectionResult = GetTags(gitRequest, msgHandler);

** Parameters **

gitRequest

Type: GitRequest Default: Not Applicable

msgHandler

Type: [Action<String>?] Default: Not Applicable


GetCurrentBranch

Returns a [String] representing the current branch of a local repository

Returns String

var StringResult = GetCurrentBranch(gitRequest, errorResponse, msgHandler);

** Parameters **

gitRequest

Type: GitRequest Default: Not Applicable

errorResponse

Type: [Action<String>] Default: Not Applicable

msgHandler

Type: [Action<String>?] Default:


GetOriginBranch

Returns a [string] that represents the current origin branch of the given local repository

Returns String

var StringResult = GetOriginBranch(request, errorHandler, msgHandler);

** Parameters **

request

Type: GitRequest Default: Not Applicable

errorHandler

Type: [Action<String>] Default: Not Applicable

msgHandler

Type: [Action<String>?] Default:


DeleteLocalRepository

Deletes a local repository using the given GitRequest object

Returns GitDeleteRepositoryResponse

var GitDeleteRepositoryResponseResult = DeleteLocalRepository(gitRequest, errorResponse, msgHandler);

** Parameters **

gitRequest

Type: GitRequest Default: Not Applicable

errorResponse

Type: [Action<String, HttpResponseMessage>] Default: Not Applicable

msgHandler

Type: [Action<String>?] Default:


HaveUncommitedChanges

Returns a [bool] indicating whether there are outstanding changes for the given local repository

Returns Boolean

var BooleanResult = HaveUncommitedChanges(request, errorHandler, msgHandler);

** Parameters **

request

Type: GitRequest Default: Not Applicable

errorHandler

Type: [Action<String>] Default: Not Applicable

msgHandler

Type: [Action<String>?] Default:


UndoChanges

Removes any uncommited chages for a local repository

Returns Boolean

var BooleanResult = UndoChanges(request, errorHandler, msgHandler);

** Parameters **

request

Type: GitRequest Default: Not Applicable

errorHandler

Type: [Action<String>] Default: Not Applicable

msgHandler

Type: [Action<String>?] Default:


RemoteBranchExists

Returns a [bool] indicating if the remote branch specified exists

Returns Boolean

var BooleanResult = RemoteBranchExists(request, errorHandler, msgHandler);

** Parameters **

request

Type: GitRequest Default: Not Applicable

errorHandler

Type: [Action<String>] Default: Not Applicable

msgHandler

Type: [Action<String>?] Default:


RemoveTag

Removes the given tag locally and remotely

Returns Boolean

var BooleanResult = RemoveTag(request, tagName, errorHandler, msgHandler);

** Parameters **

request

Type: GitRequest Default: Not Applicable

tagName

Type: [String] Default: Not Applicable

errorHandler

Type: [Action<String>?] Default: Not Applicable

msgHandler

Type: [Action<String>?] Default: Not Applicable


IsGitRepo

Returns a [bool] indication as to whether the supplied source path is a local git repository

Returns Boolean

var BooleanResult = IsGitRepo(sourcePath);

** Parameters **

sourcePath

Type: [String] Default: Not Applicable


Models

CloneProgress

public class CloneProgress
{ 
 
    Public  Path { get; set; }
 
    Public  CompletedSteps { get; set; }
 
    Public  TotalSteps { get; set; }
 
    Public  PercentComplete { get; set; }
}

GitAssetResponse

public class GitAssetResponse
{ 
 
    Public  Id { get; set; }
 
    Public ? Name { get; set; }
 
    Public ? Label { get; set; }
 
    Public ? State { get; set; }
}

GitAuthorisePullRequest

public class GitAuthorisePullRequest
{ 
 
    Public  Approve { get; }
 
    Public ? Comment { get; set; }
 
    Public  PullRequestNumber { get; set; }
}

GitBranchProtectionRequest

public class GitBranchProtectionRequest
{ 
 
    Public  RequiredPullRequestReviews { get; set; }
 
    Public Nullable<Boolean>? EnforceAdmins { get; set; }
 
    Public  RequiredStatusChecks { get; set; }
 
    Public  Restrictions { get; set; }
 
    Public  Branch { get; set; }
}

GitBranchProtectionResult

public class GitBranchProtectionResult
{ 
 
    Public  IsSuccess { get; set; }
}

GitCommitCollection

public class GitCommitCollection
{ 
 
    Public  Capacity { get; set; }
 
    Public  Count { get; }
 
    Public  Item { get; set; }
}

GitDeleteRepositoryResponse

public class GitDeleteRepositoryResponse
{ 
 
    Public  IsSuccess { get; set; }
 
    Public  Message { get; set; }
}

GitDownloadReleaseRequest

public class GitDownloadReleaseRequest
{ 
 
    Public  ReleaseType { get; set; }
 
    Public ? TargetPath { get; set; }
 
    Public  ExtractZip { get; set; }
 
    Public  ReleaseId { get; set; }
 
    Public ? Tag { get; set; }
}

GitDownloadReleaseResponse

public class GitDownloadReleaseResponse
{ 
 
    Public  Success { get; set; }
 
    Public ? Files { get; set; }
}

GitFileContent

public class GitFileContent
{ 
 
    Public  Name { get; set; }
 
    Public  Path { get; set; }
 
    Public  Sha { get; set; }
 
    Public  Size { get; set; }
 
    Public  Url { get; set; }
 
    Public  HtmlUrl { get; set; }
 
    Public  GitUrl { get; set; }
 
    Public  DownloadUrl { get; set; }
 
    Public  Type { get; set; }
 
    Public  Content { get; set; }
 
    Public  Encoding { get; set; }
}

GitLocalTag

public class GitLocalTag
{ 
 
    Public ? TagName { get; set; }
 
    Public ? Commiter { get; set; }
 
    Public  Commited { get; set; }
 
    Public ? Title { get; set; }
 
    Public  VersionAsInt { get; set; }
}

GitMergeRemoteRequest

public class GitMergeRemoteRequest
{ 
 
    Public  Comment { get; set; }
 
    Public  DestinationBranch { get; set; }
 
    Public  SourceBranch { get; set; }
 
    Public  DeleteBranchOnSuccessFullMerge { get; set; }
}

GitMergeRemoteResponse

public class GitMergeRemoteResponse
{ 
 
    Public  IsSuccess { get; set; }
}

GitMergeRequest

public class GitMergeRequest
{ 
 
    Public ? Comment { get; set; }
 
    Public  MergeMethod { get; }
}

GitMergeResponse

public class GitMergeResponse
{ 
 
    Public ? CommitRef { get; set; }
 
    Public  Merged { get; set; }
 
    Public ? Message { get; set; }
}

GitPollWorkflowResponse

public class GitPollWorkflowResponse
{ 
 
    Public  Id { get; set; }
 
    Public  Status { get; set; }
 
    Public  Conclusion { get; set; }
}

GitPullRequest

public class GitPullRequest
{ 
 
    Public ? Title { get; set; }
 
    Public ? Description { get; set; }
 
    Public ? Branch { get; set; }
 
    Public ? OriginBranch { get; set; }
 
    Public List<String> Reviewers { get; set; }
 
    Public List<String> TeamReviewers { get; set; }
}

GitPullRequestCollection

public class GitPullRequestCollection
{ 
 
    Public  Capacity { get; set; }
 
    Public  Count { get; }
 
    Public  Item { get; set; }
}

GitPullRequestDetail

public class GitPullRequestDetail
{ 
 
    Public  Id { get; set; }
 
    Public  Number { get; set; }
 
    Public ? StateString { get; set; }
 
    Public ? Title { get; set; }
 
    Public ? User { get; set; }
 
    Public ? RequestedReviewers { get; set; }
 
    Public  IsMerged { get; set; }
 
    Public  IsMergeable { get; set; }
 
    Public  MergableStateString { get; set; }
 
    Public  CanMerge { get; }
 
    Public List<String> Reviewers { get; }
 
    Public  IsBlocked { get; }
 
    Public  MergeState { get; }
}

GitPullRequestReviewersRequest

public class GitPullRequestReviewersRequest
{ 
 
    Public List<String> Reviewers { get; set; }
 
    Public List<String> TeamReviewers { get; set; }
 
    Public  PullRequestNumber { get; set; }
}

GitPullResponse

public class GitPullResponse
{ 
 
    Public  Id { get; set; }
 
    Public  Number { get; set; }
 
    Public ? StateString { get; set; }
 
    Public ? Title { get; set; }
 
    Public ? User { get; set; }
 
    Public  SourceBranch { get; set; }
 
    Public  TargetBranch { get; set; }
 
    Public  Reviews { get; set; }
 
    Public  State { get; }
}

GitRelease

public class GitRelease
{ 
 
    Public ? Tag { get; set; }
 
    Public ? ReleaseName { get; set; }
 
    Public ? Description { get; set; }
 
    Public  Draft { get; set; }
 
    Public  PreRelease { get; set; }
 
    Public  IsLatestString { get; set; }
 
    Public  RemoveDefaultFiles { get; set; }
 
    Public List<String> Assets { get; set; }
 
    Public ? AssetDirectory { get; set; }
 
    Public ? AssetZipName { get; set; }
}

GitReleaseCollection

public class GitReleaseCollection
{ 
 
    Public  Capacity { get; set; }
 
    Public  Count { get; }
 
    Public  Item { get; set; }
}

GitReleaseItem

public class GitReleaseItem
{ 
 
    Public ? Url { get; set; }
 
    Public ? TarBall { get; set; }
 
    Public ? ZipBall { get; set; }
 
    Public  Id { get; set; }
 
    Public ? Tag { get; set; }
 
    Public ? Name { get; set; }
 
    Public ? Description { get; set; }
 
    Public  Draft { get; set; }
 
    Public  PreRelease { get; set; }
 
    Public  Created { get; set; }
 
    Public  Published { get; set; }
 
    Public List<GitReleaseAsset> Assets { get; set; }
}

GitReleaseDownloadAssetReponse

public class GitReleaseDownloadAssetReponse
{ 
 
    Public  Success { get; set; }
}

GitReleaseResponse

public class GitReleaseResponse
{ 
 
    Public ? Url { get; set; }
 
    Public  Id { get; set; }
 
    Public ? UploadUrl { get; set; }
}

GitRepositoryFileContent

public class GitRepositoryFileContent
{ 
 
    Public ? Name { get; set; }
 
    Public ? Path { get; set; }
 
    Public ? Sha { get; set; }
 
    Public  Size { get; set; }
 
    Public ? Content { get; set; }
}

GitRepositoryFileListCollection

public class GitRepositoryFileListCollection
{ 
 
    Public  Capacity { get; set; }
 
    Public  Count { get; }
 
    Public  Item { get; set; }
}

GitRepositoryInfo

public class GitRepositoryInfo
{ 
 
    Public ? Name { get; set; }
 
    Public ? Path { get; set; }
 
    Public ? Sha { get; set; }
 
    Public  Size { get; set; }
 
    Public ? Url { get; set; }
 
    Public ? GitUrl { get; set; }
 
    Public ? DefaultBranch { get; set; }
}

GitRepositoryListCollection

public class GitRepositoryListCollection
{ 
 
    Public  Capacity { get; set; }
 
    Public  Count { get; }
 
    Public  Item { get; set; }
}

GitRepositoryList

public class GitRepositoryList
{ 
 
    Public  Id { get; set; }
 
    Public ? Name { get; set; }
 
    Public ? NodeId { get; set; }
 
    Public ? Url { get; set; }
}

GitRepositoryRequest

public class GitRepositoryRequest
{ 
 
    Public  Name { get; set; }
 
    Public  Private { get; set; }
 
    Public  Description { get; set; }
 
    Public  AutoInit { get; }
 
    Public  BranchReviewers { get; set; }
 
    Public List<String> Users { get; set; }
 
    Public List<String> Teams { get; set; }
}

GitRepositoryResponse

public class GitRepositoryResponse
{ 
 
    Public  IsSuccess { get; set; }
 
    Public  Message { get; set; }
 
    Public  Id { get; set; }
 
    Public  Name { get; set; }
 
    Public  Private { get; set; }
 
    Public  DefaultBranch { get; set; }
 
    Public ? Path { get; set; }
 
    Public ? Sha { get; set; }
 
    Public  Size { get; set; }
 
    Public ? Url { get; set; }
 
    Public ? GitUrl { get; set; }
}

GitReviewResponseCollection

public class GitReviewResponseCollection
{ 
 
    Public  Capacity { get; set; }
 
    Public  Count { get; }
 
    Public  Item { get; set; }
}

GitReviewResponse

public class GitReviewResponse
{ 
 
    Public  Id { get; set; }
 
    Public  User { get; set; }
 
    Public  Body { get; set; }
 
    Public  State { get; set; }
 
    Public  SubmittedAt { get; set; }
 
    Public  CommitId { get; set; }
}

GitTagCollection

public class GitTagCollection
{ 
 
    Public  Capacity { get; set; }
 
    Public  Count { get; }
 
    Public  Item { get; set; }
}

GitTag

public class GitTag
{ 
 
    Public ? TagName { get; set; }
 
    Public ? Author { get; set; }
 
    Public  DateCreated { get; set; }
 
    Public ? Title { get; set; }
 
    Public ? SemanticTag { get; set; }
}

GitUserInformation

public class GitUserInformation
{ 
 
    Public  Id { get; set; }
 
    Public  TypeAsString { get; set; }
 
    Public  PublicRepositoryCount { get; set; }
 
    Public  PrivateRepositoryCount { get; set; }
 
    Public  CollaboratorsCount { get; set; }
 
    Public  FollowersCount { get; set; }
 
    Public  OwnerType { get; }
}

GitWorkFlowCollectionResult

public class GitWorkFlowCollectionResult
{ 
 
    Public  Count { get; set; }
 
    Public List<GitWorkFlow> WorkFlows { get; set; }
}

GitWorkFlowCollection

public class GitWorkFlowCollection
{ 
 
    Public  Capacity { get; set; }
 
    Public  Count { get; }
 
    Public  Item { get; set; }
}

GitWorkFlowRequest

public class GitWorkFlowRequest
{ 
 
    Public  Branch { get; set; }
 
    Public  Variables { get; set; }
 
    Public  Wait { get; set; }
 
    Public List<WorkFlowVariable> WorkFlowVariables { get; set; }
 
    Public  WorkFlowName { get; set; }
 
    Public  WorkFlowId { get; set; }
}

GitWorkFlowResponse

public class GitWorkFlowResponse
{ 
 
    Public  IsSuccess { get; set; }
 
    Public  Message { get; set; }
 
    Public  RunId { get; set; }
 
    Public  State { get; set; }
 
    Public  Conclusion { get; set; }
 
    Public  StateString { get; set; }
 
    Public  WorkFlowName { get; set; }
 
    Public  ConclusionString { get; set; }
 
    Public  RawResponse { get; set; }
}

GitWorkFlowRunsResponseCollection

public class GitWorkFlowRunsResponseCollection
{ 
 
    Public  Count { get; set; }
 
    Public List<GitWorkFlowRunsResponse> WorkFlowRuns { get; set; }
}

GitWorkFlowRunsResponse

public class GitWorkFlowRunsResponse
{ 
 
    Public  Id { get; set; }
 
    Public  Status { get; set; }
 
    Public  Conclusion { get; set; }
 
    Public  CreatedAt { get; set; }
}
Product Compatible and additional computed target framework versions.
.NET net8.0 is compatible.  net8.0-android was computed.  net8.0-browser was computed.  net8.0-ios was computed.  net8.0-maccatalyst was computed.  net8.0-macos was computed.  net8.0-tvos was computed.  net8.0-windows was computed.  net9.0 was computed.  net9.0-android was computed.  net9.0-browser was computed.  net9.0-ios was computed.  net9.0-maccatalyst was computed.  net9.0-macos was computed.  net9.0-tvos was computed.  net9.0-windows was computed.  net10.0 was computed.  net10.0-android was computed.  net10.0-browser was computed.  net10.0-ios was computed.  net10.0-maccatalyst was computed.  net10.0-macos was computed.  net10.0-tvos was computed.  net10.0-windows was computed. 
Compatible target framework(s)
Included target framework(s) (in package)
Learn more about Target Frameworks and .NET Standard.

NuGet packages

This package is not used by any NuGet packages.

GitHub repositories

This package is not used by any popular GitHub repositories.

Version Downloads Last Updated
1.1.11 140 5/22/2025
1.1.10 140 5/21/2025
1.1.9 139 5/20/2025
1.1.8 138 5/19/2025
1.1.7 94 5/18/2025
1.1.6 100 5/18/2025
1.1.5 97 5/18/2025
1.1.4 197 5/16/2025
1.1.3 186 5/12/2025
1.1.2 131 5/11/2025
1.1.1 134 5/11/2025
1.1.0 72 5/10/2025
1.0.99 159 5/7/2025
1.0.98 140 5/7/2025
1.0.97 144 5/7/2025
1.0.96 142 5/5/2025
1.0.95 143 5/5/2025
1.0.94 142 5/4/2025
1.0.92 147 5/4/2025
1.0.13 98 5/4/2025
1.0.12 103 5/4/2025
1.0.11 74 5/3/2025
1.0.10 71 5/3/2025
1.0.9 71 5/3/2025
1.0.8 69 5/3/2025
1.0.7 121 5/2/2025
1.0.6 118 5/2/2025
1.0.5 124 5/2/2025
1.0.4 118 5/2/2025
1.0.3 119 5/2/2025
1.0.2 131 5/2/2025
1.0.1 154 4/23/2025