Імпорт проекту GitHub в Eclipse


121

Я імпортував проект GitHub, але як налаштувати проект у робочій області проекту Eclipse?

Чи потрібно мені встановити робочий каталог GitHub (c: \ users) до мого робочого каталогу Eclipse (c: \ Projects) перед тим, як перевірити проект?

введіть тут опис зображення

Відредаговано:

Тепер моя робоча директорія c: \ users \ projectname \ .git. Тоді я намагаюся імпортувати проект, використовуючи параметр eclipse "import". Коли я намагаюся імпортувати, вибравши опцію "Використовувати майстра нових проектів", вихідний код не імпортується, якщо я імпортую, вибравши опцію "Імпортувати як загальний проект", вихідний код імпортується, але створений проект, створений Eclipse, не є Java проект. Вибираючи опцію "Використовувати майстра нових проектів" та створювати новий проект Java за допомогою майстра, чи не слід код автоматично імпортувати?

введіть тут опис зображення


7
Маючи приблизно те саме питання. Я не бачу, як відповіли на це нижче. Так, посібник користувача Egit описує, як клонувати сховище. Посібник користувача egit також описує кроки, які, очевидно, викликають описану вами поведінку (і в моєму випадку "Майстер використання нових проектів" не імпортує джерело). Мене бентежить, як кроки, передбачені в egit, створюють порожній проект, і це "нормальна поведінка". То де ж "нормальна поведінка", яка створює проект із джерелом із клонованого локального сховища? Я намагався синхронізувати свій порожній проект із сховищем, але не працює.
s_t_e_v_e

2
Розчаровує те, що я знайшов джерело "перевіреним" (я не знаю, чи це правильний термін git) у файловій системі і не пригадую, що я зробив, щоб отримати його там. Одного разу я переглянув місцеві відділення сховища та вибрав замовлення. (Не думав, що щось сталося, і я не міг знайти жодної відміни або скасувати перевірку.) Незалежно від того, коли джерело є, його досить просто створити новий проект Java та вказати його на цей каталог.
s_t_e_v_e

Відповіді:


103

Як уже згадувалося в Ален Бовуа «s відповідь , а тепер (Q4 2013) краще пояснюється в

Скопіюйте URL з GitHub та виберіть у меню Eclipse меню

File → Import → Git → Projects from Git

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


Якщо Git repo ще не клонований:

Для того, щоб замовити віддалений проект, вам доведеться спершу клонувати його сховище.
Відкрийте майстра імпорту Eclipse (наприклад File => Import), виберіть Git => ProjectsGit та натисніть Next.
Виберіть " URI" і натисніть Next.
Тепер вам доведеться ввести дані про місцезнаходження та з'єднання сховища. Введення URI автоматично заповнить деякі поля. Заповніть будь-які інші необхідні поля та натисніть Next. Якщо ви використовуєте GitHub, ви можете скопіювати URI з веб-сторінки.

Виберіть усі гілки, які ви хочете клонувати, і натисніть кнопку Далі ще раз.

Натисніть кнопку Клон…, щоб відкрити ще одного майстра для клонування сховищ Git.

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


Оригінальна відповідь (липень 2011 р.)

По-перше, якщо ваш "Робочий каталог" є C:\Usersдивним, оскільки це означатиме, що ви клонували репортаж GitHub безпосередньо в C: \ Users (тобто у вас є .gitкаталог C:\Users)

Зазвичай ви клонуєте репо в GitHub в " any directory of your choice\theGitHubRepoName".

Як описано на сторінці керівництва користувача EGit :

У будь-якому випадку (якщо ви не створите "голий" сховище, але це не обговорюється тут), новий Репозиторій - це фактично папка на локальному жорсткому диску, яка містить "робочу директорію" та папку метаданих.
Папка метаданих - це виділена дочірня папка з назвою " .git" і її часто називають " .git-folder". Він містить власне сховище (тобто Commits, References, журнали тощо).

Папка метаданих абсолютно прозора для клієнта Git, тоді як робоча директорія використовується для викриття поточно перевіреного вмісту Репозиторію як файлів для інструментів та редакторів.

Зазвичай, якщо ці файли будуть використовуватися в Eclipse, вони повинні бути імпортовані в робочий простір Eclipse так чи інакше. Для цього найпростішим способом було б перевірити файли .project, з яких майстер "Імпортування існуючих проектів" може легко створювати проекти. Таким чином, у більшості випадків структура сховища, що містить проекти Eclipse, виглядатиме приблизно так:

Дивіться також розділ Використання EGit з Github .


Зараз у мене робочий каталог c:\users\projectname\.git

У вас повинен бути перевірений вміст цього репо c:\users\projectname(іншими словами, ви повинні мати більше, ніж просто .git).

Тож я намагаюся імпортувати проект, використовуючи параметр eclipse "import".
Коли я намагаюся імпортувати, вибравши опцію "Використовувати майстра нових проектів", вихідний код не імпортується.

Це нормально.

Якщо я імпортую, вибравши опцію "Імпортувати як загальний проект", імпортується вихідний код, але створений проект, створений Eclipse, не є проектом Java.

Знову нормально.

Вибираючи опцію "Використовувати майстра нових проектів" та створювати новий проект Java за допомогою майстра, чи не слід код автоматично імпортувати?

Ні, це створило б лише порожній проект.
Якщо цей проект створено в c:\users\projectname, ви можете оголосити існуючий каталог джерел у цьому проекті.
Оскільки він визначений у тому самому робочому каталозі, що й репортаж Git, то цей проект повинен виглядати як "версія".

Ви також можете скористатися параметром "Імпортувати існуючий проект", якщо ваше репортаж GitHub перетворив файл .projectі .classpathфайл, але це може бути не так.


3
"Якщо цей проект створений в c: \ users \ projectname, ви можете оголосити існуючий каталог джерела в цьому проекті." Чи це не означає, що реєстр робочої області Eclipse повинен бути таким самим, як робочий реліз Git?
blue-sky

2
@ user470184: ні, робоча область Eclipse може бути і повинна бути незалежною від самих проектів.
VonC

2
Гаразд, як я можу пов’язати проект Eclipse Java з сховищем Git? Чи можете ви детальніше зупинитися на "оголошенні існуючого каталогу джерел у цьому проекті".
blue-sky

2
@ User470184: слідуючи stackoverflow.com/questions/251116 / ... і stackoverflow.com/questions/6396349 / ... , ідея полягає в тому , щоб мати або створити .projectі .classpathв тому ж батьківському каталозі , ніж один з .git, а потім змінити його властивість посилання на каталог джерел. Посилання на цей проект міститься в робочій області Eclipse. Але фактичний робочий каталог для цього проекту буде там, де .gitє.
VonC

@ user470184: Див. vogella.de/articles/Eclipse/article.html#firstjava : створюючи новий проект, ви можете вказати, який саме каталог каталогів він повинен враховувати. Якщо ви створили цей проект у тому ж каталозі, ніж той, що включає в себе .git, і якщо ви налаштуєте його на посилання на існуючий вихідний каталог, що виходить із клонованого репортажу GitHub, у вас є проект, який Eclipse буде розглядатися як версійний (через присутність .git)
VonC

21

З останнім ADT ви можете імпортувати проект Github за допомогою Eclipse:

  1. Файл -> Імпорт -> Git -> Проекти від Git> URI

  2. Введіть URL-адресу сховища Github

  3. Виберіть відділення


23
А що робити, якщо не знайдені проекти?
Андерсон

Діє акуратно для мене .. Просте і легке запам’ятовування.
Аніруд

1
вона імпортує проекти в Eclipse, але це не проект Java, все ще ведеться всілякі труднощі, будь ласка, допоможіть, якщо зможете. В ОП описано саме ситуацію, з якою я зараз стикаюсь.
Fisher Coder

Я завжди отримую TransportError…
Asqiir

9

Я зіткнувся з тією ж проблемою і нарешті знайшов спосіб:

  1. Додайте або створіть сховище git у поданні git.
  2. Клацніть нове меню проекту Java, зніміть прапорець "використовувати розташування за замовчуванням", виберіть розташування git repo, натисніть кнопку "Готово".

Версія Ecplise: Mars.2 Release (4.5.2)


це досить просто і добре працює для мене, якщо я не маю наміру використовувати інше місце для свого проекту. Дякую!
Ахіл

Ви маєте на увазі перспективу Git?
Рядок

так, імпортуйте проекти з нього за допомогою майстра нового проекту.
бомба zj

8

Основна проблема без відповіді зберігається:

Тепер моя робоча директорія c: \ users \ projectname.git. Тоді я намагаюся імпортувати проект, використовуючи параметр eclipse "import". Коли я намагаюся імпортувати, вибравши опцію "Використовувати майстра нових проектів", вихідний код не імпортується, якщо я імпортую, вибравши опцію "Імпортувати як загальний проект", вихідний код імпортується, але створений проект, створений Eclipse, не є Java проект. Вибираючи опцію "Використовувати майстра нових проектів" та створювати новий проект Java за допомогою майстра, чи не слід код автоматично імпортувати?

Так, слід.

Це помилка. Повідомлено тут .

Ось вирішення:

  • Імпорт як загальний проект

  • Зауважте, що імпортовані дані не є дійсним проектом Eclipse (шлях збірки не доступний)

  • Відкрийте .projectфайл XML у папці проекту у програмі Eclipse. Якщо ви не можете переглянути цей файл, див. Статтю Як я можу отримати Eclipse для показу файлів. * .

  • Перейдіть на sourceвкладку

  • Знайдіть <natures></natures>і змініть його <natures><nature>org.eclipse.jdt.core.javanature</nature></natures>та збережіть файл

    (ідея походить звідси )

  • Клацніть правою кнопкою миші srcпапку, перейдіть Build Path...та натиснітьUse as Source Folder

Після цього ви маєте змогу запустити та налагодити проект, а також використовувати командні дії за допомогою клацання правою кнопкою миші в провіднику пакунків.

Якщо у вас все ще виникають проблеми із запуском проекту (щось на зразок "основний клас не знайдено"), переконайтесь, що <buildSpec>всередині .projectфайлу встановлено (як описано тут ):

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

дякую за вашу відповідь, але я відмовився від egit після безлічі питань. Я просто використовую git bash, це просто, завжди працює і не залежить від ідеалу. Врятував би себе багато годин, якби я переїхав швидше
blue-sky

Змінення .проекту мені було недостатньо. Мені довелося також клацнути правою кнопкою миші на проект> Властивості> Грані проекту> Перетворити у грановану форму
xtian

Що ти означає, що ти просто використовуєш git bash? За все життя я просто не можу імпортувати проект Github / bitbucket в Eclipse жодним чином. Я клоную проект у локальне сховище та вставлю файли в проект затемнення вручну.
користувач2651804

проблема зберігається станом на 2016/01. Сюди знову прийшов, щоб прочитати власну відповідь. Я такий дивовижний.
phil294

4

Використання командного рядка - це варіант, який би усунув необхідність у плагіні Eclipse. По-перше, створіть каталог, в якому буде розміщено проект.

mkdir myGitRepo
cd myGitRepo

Клоніруйте потрібний сховище у створеному вами каталозі.

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

Потім відкрийте Eclipse і виберіть створений вами каталог (myGitRepo) як робочу область Eclipse.

Не хвилюйтеся, що Project Explorer порожній, Eclipse ще не може розпізнати вихідні файли.

Нарешті, створіть новий проект Java з точною назвою проекту, який ви витягнули. У цьому випадку це було "gitTutorial".

File -> New -> Java Project

На цей момент підкаталоги проекту повинні містити файли, витягнуті з Github. Погляньте на наступний пост у моєму блозі для більш детального пояснення.

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


0

Це можна зробити двома способами:

1.Використовуйте клон Git

2.Ви можете встановити його вручну, переставивши в ньому папки. зробіть дві окремі папки 'src' та 'res' та розмістіть відповідні класи та файл XML, наданий бібліотекою. а потім імпортувати проект від затемнення і зробити його як бібліотеку, ось і все.


0

Я думаю, що вам потрібно створити гілку, перш ніж ви зможете імпортувати у свій локальний Eclipse, інакше виникла помилка, що призводить до неможливості імпорту репозиторію з Github або Bitbucket.


-1

Коли локальні проекти git клонуються в затемнення і переглядаються в gitперспективі, але не в package explorer(робоча область), для мене працювали наступні кроки:

  • Виберіть сховище в git перспективі
  • Клацніть правою кнопкою миші та виберіть import projects
Використовуючи наш веб-сайт, ви визнаєте, що прочитали та зрозуміли наші Політику щодо файлів cookie та Політику конфіденційності.
Licensed under cc by-sa 3.0 with attribution required.