Giter VIP home page Giter VIP logo

git-client-plugin's Introduction

Git Client Plugin

Build Contributors Jenkins Plugin Installs GitHub release

Introduction

Jenkins logo plus Git logo

The git client plugin provides git application programming interfaces (APIs) for Jenkins plugins. It can fetch, checkout, branch, list, merge, and tag repositories. Refer to the API documentation for specific API details.

The GitClient interface provides the primary entry points for git access. It supports username / password credentials and private key credentials using the Jenkins credentials plugin.

Changelog in GitHub Releases

Release notes are recorded in GitHub beginning with git client plugin 2.8.1. Prior release notes are recorded in the git client plugin repository change log.

Implementations

The git client plugin default implementation requires that command line git is installed on the master and on every agent that will use git. Command line git implementations working with large files should also install git LFS. The command line git implementation is the canonical implementation of the git interfaces provided by the git client plugin.

Command line git is enabled by default when the git client plugin is installed.

JGit

The git client plugin also includes two optional implementations that use Eclipse JGit. Eclipse JGit is a pure Java implementation of git. The JGit implementation in the git client plugin provides most of the functionality of the command line git implementation. When the JGit implementation is incomplete, the gap is noted in console logs.

JGit is disabled by default when the git client plugin is installed.

Enabling JGit

Click the "Add Git" button in the "Global Tool Configuration" section under "Manage Jenkins" to add JGit or JGit with Apache HTTP Client as a git implementation.

Enable JGit or JGit with Apache HTTP Client

JGit with Apache HTTP Client

The original JGit implementation inside the git client plugin had issues with active directory authentication. A workaround was implemented to provide JGit but use Apache HTTP client for authentication. The issue in JGit has now been resolved and delivered in git client plugin releases. JGit with Apache HTTP Client continues to delivered to assure compatibility.

Windows Credentials Manager

Git for Windows is able to integrate with the Windows Credentials Manager for secure storage of credentials. Windows Credentials Manager works very well for interactive users on the Windows desktop. Windows Credentials Manager does not work as well for batch processing in the git client plugin. It is best to disable Windows Credentials Manager when installing Git on Jenkins agents running Windows.

Bug Reports

Report issues and enhancements with the Jenkins issue tracker.

Contributing to the Plugin

Refer to contributing to the plugin for contribution guidelines.

git-client-plugin's People

Contributors

alxsap avatar bmleite avatar creste avatar darxriggs avatar dbroady1 avatar dependabot-preview[bot] avatar emanuelez avatar gjabouley-invn avatar imod avatar jacob-keller avatar jetersen avatar jglick avatar joseblas avatar kohsuke avatar kostyasha avatar markewaite avatar martinda avatar mshibuya avatar ndeloof avatar nre-ableton avatar oleg-nenashev avatar olivierdagenais avatar pauxus avatar pphillips-techphob avatar prespetkov avatar roguishmountain avatar rsandell avatar stephenc avatar vlatombe avatar wannessels avatar

Watchers

 avatar

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.