2015-03-16 30 views
8

C'è un modo per configurare egit per usare il tuo git nativo (OS) e non l'implementazione di jgit? In caso contrario, ci sono dei plugin git Eclipse alternativi?Utilizzo di git nativo non jgit in Eclipse git?

EDIT # 1 - Vorrei sottolineare, AWS CodeCommit utilizza un credential helper per autenticazione, da .gitconfig:

[credential] 
    helper = !/usr/local/bin/aws --profile CodeCommitProfile codecommit credential-helper [email protected] 
    UseHttpPath = true 

Sto indovinando questo è qualcosa di specifico per CodeCommit e non ha jgit.

+0

FWIW, Ricevo "git-upload-pack non consentito" durante il tentativo di clonare un repository. Sto usando Amazon codeCommit quindi l'autenticazione non è il nome utente e la password tipici. – javamonkey79

+2

EGit utilizza JGit e non può essere configurato per utilizzare Git nativo. [Aptana Studio] (http://www.aptana.com/products/studio3/download.html) viene fornito con un plug-in che utilizza Git nativo, ma non so se può essere utilizzato al di fuori di Aptana Studio. Altri client Git nativi che conosco non si integrano con l'area di lavoro di Eclipse. Sei sicuro che il pacchetto _git-upload non è permesso_ è una lacuna di JGit che non può essere aggirata e funzionerà in Git nativo? –

+0

@ RüdigerHerrmann "git-upload-pack non consentito" è l'errore che si verifica quando si tenta di clonare un repository. Ottengo altri errori di autenticazione quando provo a premere \ pull. Penso che questo sia dovuto al fatto che il commit del codice amazon utilizza l'autenticazione IAM e jgit non funziona con esso per qualche motivo. – javamonkey79

risposta

7

EGit utilizza rigorosamente JGit, l'implementazione Java di Git.

Il plug-in Git in Aptana Sudio3 sembra essere incorporato nelle origini del prodotto (github.com/aptana/studio3), ma utilizza un Git nativo.

Esiste una classe jgit.transport.AmazonS3, come illustrato in this question e this one (setting IAM).

C'è una discussione interessante in this thread che può offrire un indizio su cosa patch:

aver guardato how JGit access the S3 host, JGit tenta di accedere al secchio utilizzando richieste stile ospitati virtuali - http://bucketname.s3.amazonaws.com/ - questa richiesta opere di stile bene con i bucket nella zona Standard USA, ma per le altre regioni S3 lo reindirizza con il reindirizzamento HTTP 307 alla regione corretta.

Sembra che jgit non gestisca correttamente questo reindirizzamento HTTP 307 e dovrà implementare il comportamento per gestire correttamente redirects by S3.

+0

Interessante. Grazie per i tuoi chiarimenti. Vedi la mia modifica riguardante l'helper delle credenziali. – javamonkey79

+0

@ javamonkey79 Confermo che l'helper delle credenziali non fa parte di EGit/JGit: sarà necessario modificare l'helper delle credenziali (o disattivarlo per il test) per verificare se l'errore persiste. – VonC