2013-01-01 7 views
20

Podczas udostępniania projektu jako git i próby utworzenia folderu projektu Eclipse jako repozytorium git, Eclipse mówi, że nie jest to zalecane i że powinno znajdować się poza obszarem roboczym Eclipse.Dlaczego nie zaleca się posiadania folderu projektu Eclipse jako repozytorium Git?

Dlaczego tak jest?

+2

nigdy nie słyszał tego oświadczenia. Powinieneś wykluczyć (-> '.gitignore') metadane zaćmienia z git, ale to wszystko. – KingCrunch

+1

Wygląda na to, że programiści EGit w rzeczywistości nie używają własnego produktu ... dlatego – anton1980

Odpowiedz

14

Od Eclipse EGit help pages,

Prawdopodobnie nie jest to dobry pomysł, aby zrobić projekt folder korzeniem repozytorium

Powodem jest to, że nigdy nie będzie mógł dodać kolejny projekt tego repozytorium , ponieważ plik .project zajmie folder główny; nadal można dodawać projekty jako podfoldery, ale ten rodzaj zagnieżdżania projektów powoduje wiele problemów w każdym miejscu. Aby dodać kolejny projekt, musisz przenieść projekt do podfolderu w repozytorium i dodać drugi projekt jako kolejny podfolder przed zatwierdzeniem tej zmiany.

Niektóre więcej informacji

To jest dobry pomysł, aby zachować swoje repozytorium spoza Eclipse Workspace

Istnieje kilka powodów:

Nowy Repository rozważy pełną strukturę folderów przestrzeni roboczej Eclipse jako (potencjalną) treść. Może to spowodować problemy z wydajnością, na przykład podczas obliczania zmian przed zatwierdzeniem (na przykład skanuje kompletny folder .metadata); częściej niż nie, obszar roboczy będzie zawierał martwe foldery (np. usunięte projekty), które semantycznie nie są istotne dla EGit, ale nie można ich łatwo wykluczyć.

Folder metadanych (.git-) będzie potomkiem obszaru roboczego Eclipse. Nie jest jasne, czy może to spowodować niechciane przechodzenie folderów przez Eclipse.

Można łatwo zniszczyć repozytorium niszcząc Eclipse Workspace

+1

Dzięki za szybką odpowiedź.Tak naprawdę czytałem wystarczająco dużo, zjadłem 3 książki maven i właśnie skończyłem Pro Git dziś po południu. Jestem naprawdę zbyt zmęczony i potrzebowałem zrobić coś w ekscelmie, mam wystarczająco zakładek w przeglądarce o egit iw końcu dostałbym odpowiedź sam, ale zajęłoby mi to więcej czasu. Jeszcze raz dziękuję –

+1

Nie ma problemu, I właściwie nie wiedział dlaczego. Po prostu wiem, że ktoś w pracy miał z tym kłopoty. – cacba

10

Chociaż zgadzam się o utrzymanie repozytorium spoza obszaru roboczego Eclipse, a ja nadal stałaby repo git w ramach projektu katalogu Eclipse (jak w this answer).

Jeśli twój program składa się z wielu małych, współzależnych projektów, ograniczyłbym jeden repozytorium git do jednego projektu Eclipse.
git repo wynosi około nagrywania zawartości struktury drzewa, a jeśli to drzewo reprezentuje jeden projektu, łatwiej jest zarządzać, tag, gałąź, scalanie (jako coherent set of files).
Jeśli reprezentuje wiele projektów, nie jesteś już pewien, co oznacza taki znacznik jak "1.0" dla każdego projektu w repozytorium Git.

Plus, lubię dodać .project, .classpath i .settings do repo Git (jako "Does git exclude eclipse project files from a new repo by default?")