git

package
v0.0.0-...-caebf8a Latest Latest
Warning

This package is not in the latest version of its module.

Go to latest
Published: Apr 16, 2025 License: Apache-2.0 Imports: 9 Imported by: 0

Documentation

Overview

Package git defines an adapter for git commands natively within Butler.

Licensed under the Apache License, Version 2.0 (the "License"); you may not use this file except in compliance with the License. You may obtain a copy of the License at

http://www.apache.org/licenses/LICENSE-2.0

Unless required by applicable law or agreed to in writing, software distributed under the License is distributed on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the License for the specific language governing permissions and limitations under the License.

Package git defines an adapter for git commands natively within Butler.

Licensed under the Apache License, Version 2.0 (the "License"); you may not use this file except in compliance with the License. You may obtain a copy of the License at

http://www.apache.org/licenses/LICENSE-2.0

Unless required by applicable law or agreed to in writing, software distributed under the License is distributed on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the License for the specific language governing permissions and limitations under the License.

Index

Constants

This section is empty.

Variables

This section is empty.

Functions

This section is empty.

Types

type GitAdapter

type GitAdapter interface {
	CloneRepo(ctx context.Context, localPath string) error
	CommitAndPush(ctx context.Context, localPath, commitMessage string) error
}

GitAdapter defines methods for interacting with Git repositories

type GitClient

type GitClient struct {
	RepoURL  string
	Username string
	Token    string
	Logger   *zap.Logger
}

GitClient implements the GitAdapter interface

func NewGitClient

func NewGitClient(repoURL, username, token string, logger *zap.Logger) *GitClient

NewGitClient initializes a Git client

func (*GitClient) CloneRepo

func (g *GitClient) CloneRepo(ctx context.Context, localPath string) error

CloneRepo clones a Git repository to the specified local path

func (*GitClient) CommitAndPush

func (g *GitClient) CommitAndPush(ctx context.Context, localPath, commitMessage string) error

CommitAndPush stages, commits, and pushes changes

Jump to

Keyboard shortcuts

? : This menu
/ : Search site
f or F : Jump to
y or Y : Canonical URL