85 votes

Confusion dans le choix entre JavaGit, JGit et EGit

Je fais une application Java qui utilise Git. J'ai trouvé qu'il y a quelque chose qui s'appelle JavaGit, EGit et JGit.

Je sais que JavaGit et EGit/JGit sont différents. Ce que je ne comprends pas, c'est la différence entre EGit et JGit. Les deux sont hébergés sur des projets Eclipse, mais semble être de l'Éclipse et l'autre pas.

Je n'utilise pas Eclipse et je n'ai pas, donc j'ai vraiment ne se soucient pas beaucoup sur "l'Éclipse de l'intégration".

Est JGit en quelque sorte lié à l'Éclipse? (Il est hébergé sur www.eclipse.org et la documentation de JGit a aussi beaucoup de "eclipse" mots clés à l'intérieur)

Sur les trois, de quoi ai-je besoin pour connecter mon programme Java (pas écrit dans Eclipse) pour travailler avec des dépôts Git?

Je préfère autonome Git de la bibliothèque (c'est à dire, sans dépendre d'un Git local d'installation)

EDIT: encore Une question:

EDIT: j'ai trouvé la réponse, car il n'a (n'ont pas encore essayé). Il est en transport paquet dans une classe appelée BundleWriter

60voto

VonC Points 414372

Vous pouvez utiliser JGit de manière autonome la bibliothèque, mais, comme mentionné dans le JGit page d'Accueil:

JGit peut être trouvé dans un délai de:
* EGit, Eclipse équipe de fournisseur pour Git

En ce sens, JGit est connecté à Eclipse dans ce EGit utilise JGit fonctionnalités à développer l'Eclipse plugin Git.
Compte tenu de tous les projets Eclipse sont désormais versionnée dans Git repos (au lieu de déjà CVS repos), je considère JGit pour votre projet en Java, car il semble que:

  • JavaGit n'est pas à jour depuis un certain temps (2008)
  • Eclipse est engagé à offrir un bon support de Git à travers EGit, ce qui devrait assurer, par extension, le développement de JGit (utilisé par EGit).

Thorbjørn Ravn Andersen commentaires:

Même si vous dites que Egit utilise JGit, il n'est pas très clair dans ce qui précède que EGit est un plugin Eclipse pour git donnant git appui de la même manière que CVS est déjà pris en charge dans Eclipse

La migration des projets Eclipse du dépôt CVS, Git est en cours, et a été signalé ici (par Chris Aniszczyk).

J'ai surveillé les conversations concernant la migration de code du projet de CVS vers Git dans le dev-listes de plusieurs projets.
La plupart des développeurs, il semble, à en comprendre la proposition de valeur de la migration, en dépit de leurs préoccupations avec la migration vient un tas de nouvelles learnin' comme ils sont comment dire productives dans le nouvel environnement.

Inévitablement, la discussion à propos de l'équipe de fournisseur pour Git, développé par les EGit projet devient une partie importante de la conversation. "Est EGit prêt à heure de grande écoute?" est souvent la question que rebondi

L'officiel bug illustré Eclipse engagement à fournir "un outillage adéquat de soutien" pour tous les projets Eclipse maintenant sur le repo Git est le bug 293192.

Afin de déprécier vieux VCS en faveur de git (bug 270854), un outillage adéquat doit être disponible. Ce bug est créé pour suivre.
[...] J'ai ouvert/lien pertinent EGit bugs afin de disposer d'une meilleure visibilité et le suivi de ce qui est absent.

Donc Egit est le seul projet référencé dans ce bug à la fourniture dudit outillage adéquat de soutien pour le nouveau (D)VCS choisi pour tous les projets Eclipse.

(bug 270854 est sur le Dénigrent les vieux VCS outils, qui contient essentiellement des CV.)


Juste dans (17 Mars 2001): L'État de Git à Eclipse – Début 2011 (Chris Aniszczyk):

Je suis heureux que les choses ont bien avancé depuis l'année dernière, basé sur Eclipse Marketplace stats et les contributions de la communauté les projets ont reçu.

EGit installation rate

Alors, quelle est la prochaine? En termes d'outillage, nous nous rapprochons de notre version 1.0 (qui est prévu pour l'Indigo).
Le git de l'outillage à Eclipse est beaucoup mieux ces jours-ci, si vous avez besoin d'aide ou avez des questions, s'il vous plaît commencer avec la plus excellente EGit Guide de l'Utilisateur.

Si vous êtes un eclipse.org projet, veuillez vous envisagez de commencer le processus de déplacement de votre projet de référentiel Git. Il y a beaucoup de eclipse.org les projets déjà sur Git.
Il serait agréable de voir l'ensemble de la eclipse.org les projets ont prévu de passer à Git par l'Indigo.

46voto

Chris Aniszczyk Points 441

Comme l'un des auteurs de JGit et EGit, désolé pour la confusion.

JGit est un EDL (nouveau style BSD), sous licence, léger, pur Java bibliothèque de la mise en œuvre du système de contrôle de version Git. Il peut être utilisé en mode autonome et est intégré dans des applications telles que Gerrit, Eclipse, Netbeans et IntelliJ. EGit intègre JGit de l'utiliser pour travailler avec des dépôts Git et exposer Git constructions au sein d'Eclipse. Pour le moment, JGit ne prend pas en charge le git-module de commande, mais vous êtes les bienvenus pour contribuer soutien, il ne devrait pas être difficile, veuillez consulter notre guide du contributeur.

4voto

Robert Points 1604

Juste à carillon, comme je viens de tombé sur cette question tout à l'heure.

Il y a une différence entre la Fondation Eclipse et de l'IDE Eclipse. La Fondation est l'organisation faîtière, l'IDE est l'un des projets développés par la fondation. Donc, la chose importante à savoir est que, tout comme Apache a commencé avec le serveur web et s'est diversifiée pour devenir une Fondation hébergement d'un certain nombre de projets, la Fondation Eclipse étend désormais au-delà de ses "racines" dans l'IDE.

Donc, dans ce contexte, le JGit code fournit une API Java pour les commandes git, tandis que EGit utilise JGit de fournir git de soutien pour l'IDE Eclipse.

Personnellement, je trouve cela un peu déroutant à la fois, et parfois, il semble presque que le fait d'avoir tellement de choses a, à certains égards, dégradé l'objectif de ces organisations; cependant, je peux aussi voir l'utilité d'en avoir un parapluie organisation au lieu de 20 semblables mais différentes organisations.

3voto

Matthias Sohn Points 156

JGit git est mis en œuvre à partir de zéro comme une bibliothèque Java alors que JavaGit est (était ?) une API Java enveloppant le natif git mise en œuvre (c'est à dire que c'est l'appel de la maternelle git en ligne de commande).

EGit est le Git de l'Éclipse de l'Équipe de Fournisseur de l'intégration JGit dans l'IDE Eclipse et fournit l'INTERFACE utilisateur de travailler avec Git à partir de l'intérieur de l'Éclipse.

Dans l'intervalle, une grande partie de l'Éclipse de la communauté et aussi un grand nombre de développeurs est à l'aide de EGit/JGit (c'est la raison pour laquelle les entreprises de la sauvegarde de ces projets mis de l'argent dans que). Voir les pages du projet et ohloh si vous voulez avoir une idée qui contribuent.

0voto

linquize Points 5418

JGit est une bibliothèque pour manipuler le référentiel git. Vous n’utilisez pas JGit seul, sauf si vous écrivez un programme permettant de manipuler le référentiel git comme vous le souhaitez.

Si vous utilisez Eclipse en tant qu'EDI, vous installez EGit en tant que plug-in de contrôle de version (par défaut dans Indigo). EGit appelle JGit pour que JGit soit également installé si vous installez EGit.

Remarque, pour Netbeans, vous installez NBGit en tant que plug-in de contrôle de version. NBGit appelle également JGit.

JavaGit: pas activement maintenu?

Prograide.com

Prograide est une communauté de développeurs qui cherche à élargir la connaissance de la programmation au-delà de l'anglais.
Pour cela nous avons les plus grands doutes résolus en français et vous pouvez aussi poser vos propres questions ou résoudre celles des autres.

Powered by:

X