Importazione di un progetto GitHub in Eclipse


121

Ho importato un progetto GitHub ma come imposto il progetto nell'area di lavoro del mio progetto Eclipse?

Devo impostare la directory di lavoro di GitHub (c: \ users) sulla mia directory di lavoro Eclipse (c: \ Projects) prima di controllare il progetto?

inserisci qui la descrizione dell'immagine

Modificato :

La mia directory di lavoro ora è c: \ users \ projectname \ .git Quindi provo a importare il progetto usando l'opzione "import" di eclipse. Quando provo a importare selezionando l'opzione "Utilizza la procedura guidata per i nuovi progetti" il codice sorgente non viene importato, se eseguo l'importazione selezionando l'opzione "Importa come progetto generale" il codice sorgente viene importato ma il progetto creato da Eclipse non è java progetto. Quando si seleziona l'opzione "Usa la procedura guidata per i nuovi progetti" e si crea un nuovo progetto Java utilizzando la procedura guidata, il codice non dovrebbe essere importato automaticamente?

inserisci qui la descrizione dell'immagine


7
Avendo più o meno lo stesso problema. Non vedo come sia stato risposto di seguito. Sì, il manuale utente di Egit descrive come clonare il repository. Il manuale utente egit descrive anche i passaggi che apparentemente stanno causando il comportamento che descrivi (e nel mio caso, "Usa la procedura guidata Nuovi progetti" non importa neanche il sorgente). Sono confuso come i passaggi forniti in egit producano un progetto vuoto e questo è un "comportamento normale". Allora dov'è il "comportamento normale" che crea un progetto con sorgente da un repository locale clonato? Ho provato a sincronizzare il mio progetto vuoto con il repository ma non funziona.
s_t_e_v_e

2
La cosa frustrante è che ho trovato il sorgente "estratto" (non so se è il termine git corretto) nel filesystem e non ricordo cosa ho fatto per ottenerlo lì. A un certo punto ho esplorato i rami del repository locale e ho selezionato il checkout. (Non pensavo che fosse successo niente e non sono riuscito a trovare alcun annullamento o annullamento del check out.) Indipendentemente da ciò una volta che il sorgente è lì, è abbastanza facile creare un nuovo progetto java e indirizzarlo a quella directory.
s_t_e_v_e

Risposte:


103

Come accennato in Alain Beauvois s' risposta , e ora (Q4 2013) meglio spiegato nel

Copia l'URL da GitHub e seleziona in Eclipse dal menu il file

File → Import → Git → Projects from Git

http://wiki.eclipse.org/images/5/5a/Egit-0.9-import-projects-select-repository.png


Se il repository Git non è ancora clonato:

Per> eseguire il checkout di un progetto remoto, dovrai prima clonare il suo repository.
Aprire la procedura guidata di importazione di Eclipse (ad esempio File => Import), selezionare Git => Projectsda Git e fare clic Next.
Selezionare " URI" e fare clic Next.
Ora dovrai inserire la posizione del repository e i dati di connessione. L'immissione dell'URI riempirà automaticamente alcuni campi. Completa tutti gli altri campi richiesti e premi Next. Se utilizzi GitHub, puoi copiare l'URI dalla pagina web.

Seleziona tutti i rami che desideri clonare e premi di nuovo Avanti.

Premi il pulsante Clona ... per aprire un'altra procedura guidata per la clonazione dei repository Git.

http://eclipsesource.com/blogs/wp-content/uploads/2012/12/14-282x300.png


Risposta originale (luglio 2011)

Innanzitutto, se la tua "Directory di lavoro" è C:\Users, è strano, poiché significherebbe che hai clonato il repository GitHub direttamente in C: \ Users (cioè hai una .gitdirectory in C:\Users)

Di solito, cloneresti un repository GitHub in " any directory of your choice\theGitHubRepoName".

Come descritto nella pagina del manuale utente di EGit :

In ogni caso (a meno che tu non crei un Repository "nudo", ma questo non è discusso qui), il nuovo Repository è essenzialmente una cartella sul disco rigido locale che contiene la "directory di lavoro" e la cartella dei metadati.
La cartella dei metadati è una cartella secondaria dedicata denominata " .git" e spesso denominata " .git-folder". Contiene il repository effettivo (ovvero i commit, i riferimenti, i log e così via).

La cartella dei metadati è totalmente trasparente al client Git, mentre la directory di lavoro viene utilizzata per esporre il contenuto del repository attualmente estratto come file per strumenti ed editor.

In genere, se questi file devono essere utilizzati in Eclipse, devono essere importati nell'area di lavoro di Eclipse in un modo o nell'altro. Per fare ciò, il modo più semplice sarebbe quello di archiviare i file .project da cui la procedura guidata "Importa progetti esistenti" può creare facilmente i progetti. Pertanto, nella maggior parte dei casi, la struttura di un repository contenente progetti Eclipse sarebbe simile a qualcosa del genere:

Vedi anche la sezione Uso di EGit con Github .


La mia directory di lavoro è adesso c:\users\projectname\.git

Dovresti controllare il contenuto di quel repository c:\users\projectname(in altre parole, dovresti avere più del semplice .git).

Allora provo ad importare il progetto usando l'opzione "import" di eclipse.
Quando provo a importare selezionando l'opzione "Usa la procedura guidata per i nuovi progetti", il codice sorgente non viene importato.

È normale.

Se importa selezionando l'opzione "Importa come progetto generale" il codice sorgente viene importato ma il progetto creato da Eclipse non è un progetto java.

Di nuovo normale.

Quando si seleziona l'opzione "Usa la procedura guidata per i nuovi progetti" e si crea un nuovo progetto Java utilizzando la procedura guidata, il codice non dovrebbe essere importato automaticamente?

No, questo creerebbe solo un progetto vuoto.
Se il progetto viene creato in c:\users\projectname, puoi quindi dichiarare la directory di origine esistente in quel progetto.
Poiché è definito nella stessa directory di lavoro del repository Git, quel progetto dovrebbe quindi apparire come "versioned".

Puoi anche utilizzare l'opzione "Importa progetto esistente", se il tuo repository GitHub aveva la versione del file .projecte .classpath, ma potrebbe non essere il caso qui.


3
"Se il progetto viene creato in c: \ users \ projectname, puoi dichiarare la directory di origine esistente in quel progetto." Ciò non significa che la directory dello spazio di lavoro di Eclipse deve essere la stessa della directory di lavoro di Git?
blue-sky

2
@ user470184: no, uno spazio di lavoro Eclipse può e dovrebbe essere in un luogo indipendente dai progetti stessi.
VonC

2
Ok, quindi come collego un progetto java Eclipse al repository Git? Puoi approfondire "dichiarare la directory dei sorgenti esistenti in quel progetto".
blue-sky

2
@ user470184: dopo stackoverflow.com/questions/251116/... e stackoverflow.com/questions/6396349/... , l'idea è quella di avere o creare la .projecte .classpathnella stessa directory superiore rispetto a quella dei .git, e quindi modificare la sua struttura al fare riferimento alla directory di origine. Il riferimento di quel progetto vivrà nello spazio di lavoro di Eclipse. Ma la directory di lavoro effettiva per quel progetto sarà dove si .gittrova.
VonC

@ user470184: Vedi vogella.de/articles/Eclipse/article.html#firstjava : quando crei un nuovo progetto, puoi specificare quale directory sorgente deve considerare. Se crei quel progetto sulla stessa directory di quella che include il .git, e se lo configuri per fare riferimento alla directory di origine esistente che esce dal repository GitHub clonato, hai un progetto che sarà visto da Eclipse come versionato (a causa del presenza del .git)
VonC

21

Con l'ultimo ADT, puoi importare il progetto Github usando Eclipse:

  1. File -> Importa -> Git -> Progetti da Git> URI

  2. Immettere l'URL del repository Github

  3. Seleziona il ramo


23
E se non vengono trovati progetti?
Anderson

Funziona bene per me .. Semplice e facile da ricordare.
Anirudh

1
importa i progetti in Eclipse, ma non è un progetto Java, ancora in difficoltà, per favore aiutatemi se potete. L'OP ha descritto esattamente la situazione che sto affrontando ora.
Fisher Coder

Ricevo sempre un TransportError…
Asqiir

9

Ho riscontrato lo stesso problema e finalmente ho trovato un modo:

  1. Aggiungi o crea un repository git in git view.
  2. Fare clic sul menu del nuovo progetto Java, deselezionare "usa posizione predefinita", selezionare la posizione del repository git, fare clic su Fine.

Versione Ecplise: versione Mars.2 (4.5.2)


questo è abbastanza semplice e funziona bene per me a meno che non intenda utilizzare una posizione diversa per il mio progetto. Grazie!
Akhil

intendi la prospettiva di Git?
Linea

sì, importa i progetti da esso utilizzando la procedura guidata Nuovo progetto.
bomba zj

8

il problema principale senza risposta persiste:

La mia directory di lavoro ora è c: \ users \ projectname.git Quindi provo a importare il progetto usando l'opzione "import" di eclipse. Quando provo a importare selezionando l'opzione "Utilizza la procedura guidata per i nuovi progetti" il codice sorgente non viene importato, se eseguo l'importazione selezionando l'opzione "Importa come progetto generale" il codice sorgente viene importato ma il progetto creato da Eclipse non è java progetto. Quando si seleziona l'opzione "Usa la procedura guidata per i nuovi progetti" e si crea un nuovo progetto Java utilizzando la procedura guidata, il codice non dovrebbe essere importato automaticamente?

Sì, dovrebbe.

È un bug. Segnalato qui .

Ecco una soluzione alternativa:

  • Importa come progetto generale

  • Si noti che i dati importati non sono un progetto Eclipse valido (nessun percorso di compilazione disponibile)

  • Apri il .projectfile xml nella cartella del progetto in Eclipse. Se non riesci a vedere questo file, vedi Come posso fare in modo che Eclipse mostri i file. *? .

  • Vai alla sourcescheda

  • Cerca, <natures></natures>modificalo <natures><nature>org.eclipse.jdt.core.javanature</nature></natures>e salva il file

    (l'idea viene da qui )

  • Fare clic con il tasto destro sulla srccartella, andare a Build Path...e fare clicUse as Source Folder

Dopodiché, dovresti essere in grado di eseguire ed eseguire il debug del progetto e anche di utilizzare le azioni del team facendo clic con il pulsante destro del mouse in Esplora pacchetti.

Se hai ancora problemi nell'esecuzione del progetto (qualcosa come "classe principale non trovata"), assicurati che l' <buildSpec>interno del .projectfile sia impostato (come descritto qui ):

<buildSpec>
    <buildCommand>
        <name>org.eclipse.jdt.core.javabuilder</name>
        <arguments>
        </arguments>
    </buildCommand>
</buildSpec>

grazie per la tua risposta ma ho rinunciato a egit dopo una miriade di problemi. Sto solo usando git bash, è semplice, funziona sempre e non dipende dall'ideale. Mi sarei risparmiato molte ore se mi fossi trasferito prima
cielo blu

Cambiare .project non mi bastava. Ho anche dovuto fare clic con il pulsante destro del mouse su progetto> Proprietà> Sfaccettature del progetto> Converti in forma sfaccettata
xtian,

Cosa intendi per "usare solo git bash"? Per la vita di me, non posso importare un progetto github / bitbucket in Eclipse in NESSUN modo. Clone il progetto in un repository locale e incollo manualmente i file in un progetto Eclipse.
user2651804

il problema persiste a partire dal 2016/01. Sono venuto di nuovo qui per leggere la mia risposta. Sono così fantastico.
phil294

4

L'utilizzo della riga di comando è un'opzione e eliminerebbe la necessità di un plug-in Eclipse. Innanzitutto, crea una directory per contenere il progetto.

mkdir myGitRepo
cd myGitRepo

Clona il repository desiderato nella directory appena creata.

git clone https://github.com/JonasHelming/gitTutorial.git

Quindi apri Eclipse e seleziona la directory che hai creato (myGitRepo) come Eclipse Workspace.

Non preoccuparti se Project Explorer è vuoto, Eclipse non è ancora in grado di riconoscere i file di origine.

Infine, crea un nuovo progetto Java con lo stesso nome del progetto che hai estratto. In questo caso, era "gitTutorial".

File -> New -> Java Project

A questo punto, le sottodirectory del progetto dovrebbero contenere i file estratti da Github. Dai un'occhiata al seguente post nel mio blog per una spiegazione più dettagliata.

http://brianredd.com/application/pull-java-project-from-github


0

Può essere fatto in due modi:

1.Usa Git clone

2.Puoi configurarlo manualmente riorganizzando le cartelle fornite al suo interno. creare due cartelle separate "src" e "res" e posizionare le classi appropriate e il file xml fornito dalla libreria. e quindi importa il progetto da eclipse e rendilo come libreria, il gioco è fatto.


0

Penso che sia necessario creare un ramo prima di poter importare nel tuo Eclipse locale, altrimenti si verifica un errore che impedisce di importare il repository da Github o Bitbucket.


-1

Quando i progetti git locali vengono clonati in eclipse e sono visualizzabili in gitprospettiva ma non in package explorer(area di lavoro), i seguenti passaggi hanno funzionato per me:

  • Seleziona il repository in gitprospettiva
  • Fare clic con il tasto destro e selezionare import projects
Utilizzando il nostro sito, riconosci di aver letto e compreso le nostre Informativa sui cookie e Informativa sulla privacy.
Licensed under cc by-sa 3.0 with attribution required.