Git-re vált a PostgreSQL projekt (is)

Címkék

Az már augusztus eleje óta ismert tény, hogy a PostgreSQL projekt is erősíteni fogja azok táborát, akik CVS-ről a Linus Torvalds által útnak indított git verziókezelőre váltanak. A múlt hónap elején Robert Haas - az Enterprise DB szoftverarchitektje, PgSQL commiter - arról írt, hogy a projekt a PGCon 2010 fejlesztői találkozón megbeszélteknek megfelelően a projekt heteken belül megejti a váltást. A bejelentés óta eltelt néhány hét, de a váltás még várat magára. Tegnap Robert egy blogbejegyzést írt arról, hogy milyen problémákba ütköztek a migrálás kapcsán, milyen segítséget kaptak a problémák megoldására és arról, hogy hol tartanak az átállásban. A blogbejegyzés itt.

Hozzászólások

Nekem pont az nem tetszik git-ben, hogy ha nem teljes merge-öt akar az ember, akkor cherry pickelni kell, de az meg nem tesz oda semmi hivatkozást, hogy honnan jött a változás, esetleg kézzel bele lehet írni a kommentbe.

--
joco voltam szevasz

Hát nincs rózsa tövis nélkül, mindenestre kíváncsi vagyok, más scm-mel hogy kezeled le a köv. szitut (nálam tipikus):

Csinálsz valami fejlesztést egy privát ágban (senki más nem látta még a kommitjaid). Egyszer csak rájössz, hogy 15 kommittal korábban ejtettél egy idegesítő kis typo-t. Egyik lehetőség, hogy ezen a ponton odabiggyesztesz egy ezt fixáló kommitot, de ezt nem szeretnéd, mert amikor majd az upsteam bemergeli a kódod, ott a revíziótörténetben csak zavaró lenne az ön-fix, inkább kijavítanád retrospektíve. Gitben ez ennyi:

$ git checkout private-branch~15
[kijavítod a hibát]
$ git commit -a --amend -C HEAD
$ git rebase --onto HEAD HEAD@{1} private-branch

(Tegyük hozzá, van rebase parancsa a Mercurialnak is... csakhogy ott By default, rebase recreates the changesets in the source branch as descendants of dest and then destroys the originals. Use "--keep" to preserve the original source changesets., azaz vagy hundertprocent tutkóra le kell ellenőrizned, hogy a rebase tényleg helyesen van paraméterezve, vagy ottmarad szemétnek az eredeti revízió. gitnél meg no para, a reflogból vissza tudod állítani, ha valamit elgépeltél a parancsban, viszont a kanonikus nézetet nem szennyezi a régi verziója az ágnak (idővel meg -- ha már a reflogból is kikerült a régi verziója az ágnak, és elég sok szemét felhalmozódott már -- szemétgyűjtés következik, és "fizikalig" is el lesz pucolva a rég verzió). Mercurial amend... na jó, mondjuk rá, hogy van, de nem lesz a szívem csücske.

Ami meg a többi verziókezelőt illeti... lövésem sincs, hogy hogy lehet ilyet, ha valaki megmonjda, azt értékelném.)