Ce contenu n'est pas disponible dans la langue sélectionnée.

Chapter 57. Git


Git Component

Available as of Camel 2.16
The Git component allows you to work with a generic Git repository.
<dependency>
    <groupId>org.apache.camel</groupId>
    <artifactId>camel-git</artifactId>
    <version>2.17.0.redhat-630xxx</version>
    <!-- use the same version as your Camel core version -->
</dependency>
URI Format
git://localRepositoryPath[?options]

URI Options

The producer allows to do operations on a specific repository. The consumer allows consuming commits, tags and branches on a specific repository.
Name
Default Value
Type
Context
Description
localPath
null
String
Shared
The path to the local Git repository
remotePath
null
String
Shared
The path to the remote Git repository
operation
null
String
Producer
The operation to perform. Currently supports the following values: clone, init, add, remove, commit, commitAll, createBranch, deleteBranch, createTag, deleteTag, status, log, push, pull, showBranches, cherryPick.
branchName
null
String
Producer
The name of the branch to work on
tagName
null
String
Producer
The tag of the branch to work on
username
null
String
Producer
The username to use in authentication phase to the git repository
password
null
String
Producer
The password to use in authentication phase to the git repository
type
null
String
Consumer
The type of consumer. Currently supports the following values: commit, tag, branch

Message Headers

Name
Default Value
Type
Context
Description
CamelGitOperation
null
String
Producer
The operation to do on a repository, if not specified as endpoint option
CamelGitFilename
null
String
Producer
The file name in an add operation
CamelGitCommitMessage
null
String
Producer
The commit message related in a commit operation
CamelGitCommitUsername
null
String
Producer
The commit username in a commit operation
CamelGitCommitEmail
null
String
Producer
The commit email in a commit operation
CamelGitCommitId
null
String
Producer
The commit id

Producer Example

Below is an example route of a producer that add a file test.java to a local repository, commit it with a specific message on master branch and then push it to remote repository.
from("direct:start")
        .setHeader(GitConstants.GIT_FILE_NAME, constant("test.java"))
        .to("git:///tmp/testRepo?operation=add")
        .setHeader(GitConstants.GIT_COMMIT_MESSAGE, constant("first commit"))
        .to("git:///tmp/testRepo?operation=commit")
        .to("git:///tmp/testRepo?operation=push&remotePath=https://foo.com/test/test.git&username=xxx&password=xxx")

Consumer Example

Below is an example route of a consumer that consumes commit:
from("git:///tmp/testRepo?type=commit")
                        .to(....)
Red Hat logoGithubRedditYoutubeTwitter

Apprendre

Essayez, achetez et vendez

Communautés

À propos de la documentation Red Hat

Nous aidons les utilisateurs de Red Hat à innover et à atteindre leurs objectifs grâce à nos produits et services avec un contenu auquel ils peuvent faire confiance.

Rendre l’open source plus inclusif

Red Hat s'engage à remplacer le langage problématique dans notre code, notre documentation et nos propriétés Web. Pour plus de détails, consultez leBlog Red Hat.

À propos de Red Hat

Nous proposons des solutions renforcées qui facilitent le travail des entreprises sur plusieurs plates-formes et environnements, du centre de données central à la périphérie du réseau.

© 2024 Red Hat, Inc.