git : hogyan érdemes?

Fórumok

Sziasztok!

Van egy kisebb programom, ami forrásfájához szeretnék hozzáférést adni 2-3 embernek. Amíg egyedül fejlesztek és csak egy gépről, addig működik az a megoldás, hogy egy szerveren van a forráskód, amihez ftp -vel kapcsolódok és az IDE (Netbeans) szinkronizálja a kódot (feltölti a módosításokat). Ha már több emberről (vagy egy ember + több gépről) van szó, akkor bonyolódik a szitu. Pl. ha módosítok egy fájlt az egyik gépen, ami feltöltésre kerül a szerverre, a másik gépen nem kerül automatikusan letöltésre a fájl.. kézzel kell rávenni a Netbeans -t, hogy töltse le..

Szóval arra gondoltam, hogy kellene egy git repo a szerveren és Netbeans + nbgit pluginnal kapcsolódna mindenki hozzá. Ezt hogyan lehet szerintetek megoldani? Hozzam létre a repót a szerveren? S utána hogyan tovább? "git clone" -nal mindenki töltse le a gépére majd a Netbeans -ben új projektként vegye fel?

Köszi előre is a segítséget!

Hozzászólások

Pl. ha módosítok egy fájlt az egyik gépen, ami feltöltésre kerül a szerverre, a másik gépen nem kerül automatikusan letöltésre a fájl..

Nincs ezzel semmi gond. Mindenki csinalja a maga dolgat, egy esetleg nem teljesen up to date fan, aztan amikor eljon a publikalas ideje oszefesuli az aktualissal. Ha tul sokaig tart amin dolgozik, akkor idonkent esetleg pull-ol. Az mar a git dolga, hogy a push-nal fonnalo versenyhelyzetet megoldja, mondjuk elutasitsa a push-t.

Mindenkinek mas lehet a kenyelmes, en nem eroltetnem a netbeans pluginokat senkire. Minek?

Nem akarom erőltetni a Netbeans -t, csak példának írtam... :)

Ha általánosabban közelítem meg, akkor kb. ez az elképzelésem:
- központi git repó a szerveren
- mindenki "git clone" -nal letölt mindent a saját gépére
- szerkeszti mindenki, amivel akarja a fájlokat
- majd commit -tolja mindenki a fejlesztését a központi gépre git -tel

Csak azt szeretném elkerülni, hogy egy-egy fájlból különböző változatok legyenek meg különböző helyeken, mikor az adott fájlon valaki elkezd dolgozni. Meg az sem lenne mellékes, ha a commit -tokból látszana, hogy ki mit tett hozzá a dologhoz. :)
Működhet ez?

termeszetesen mukodhet. A kozponti gep az etalon, onnan lehet szedni (pull), es oda lehet tolni (push).
A git automatikusan tarolja a tortenetet, ezzel egyutt azt is hogy ki mit csinalt.
Ha ket ember a hatad mogott egymashoz pushol, vagy pullol, az ellen ugyse tehetsz semmit, akar emailben is foldahatnak a fajlokat :) Amig van egy kozponti repo addig nincs fejetlenseg.

Netbeansben már "integrálva" van a ez, a kenai a weboldala:

http://kenai.com/

Menüben: Team / Team Server és ott pl. hozzá tudsz adni fejelsztőket/megfigyelőket/tesztereket stb..

Ha jól értem, akkor ehhez kell egy kenai.com vagy java.net regisztrációs és pl. a kenai.com -on jön létre egy projekt, ahová bekerülnek a forrásfájlok. Ugye? Ezzel az a gond, hogy mindenképp saját szerveren akarom hosztolni. (próbáltam itt saját szervert hozzáadni a "Logged into -> New" menü alatt, de csak azt irkálja, hogy "provide valid Team Server URL")

Jól gondolod!
Én ezt csinálnám:
- A serveren csinálok egy git nevű felhasználót (--disabled-login --disabled-password).
- Mindenki ad ssh kulcsot, amit beteszek a /home/git/.ssh/authorized_keys filba.
- A /home/git/repo/ könyvtárba megcsinálom a projectet git init --bare projectnev

A kód betol, mindenki használ, kódol és örül

(Ha kell hogy részletesebben írjam le szólj és leírom step-by-step)

----
概略情報
http://molnaristvan.eu/