Norway Delphi Club Message Board › Delphi og versjonskontroll

Delphi og versjonskontroll

Hans Reier S.
user 32985992
Oslo, NO
Post #: 1
Vi i HK Data bruker nå Delphi XE3. Versionkontroll (Subversion) har egentlig bare vært brukt til test. Jeg har brukt Subversion tidligere kombinert med andre utviklingsverktøy (Java/Eclipse og annet). Er det noen som har gode erfaringer med versjonskontrollsystemer plugget rett inn i RAD Studio (Subversion, Mercurial, GIT, Perforce, andre). Subversion integrasjonen følger med RAD Studio. Finnes det andre plugins, enten fra Embarcadero eller fra 3dje parts firmaer som gjør at man kan kjøre versjonskontroll direkte fra RAD Studio?

Grunnen til spørsmålet er at vi vurderer å innføre dette, og fordi vi foreløpig ikke liker noe spesielt godt Subversion integrasjonen som finnes i RAD Studio. Hovedproblemet er at vi ikke får flettefunksjonaliteten hvis flere utviklere har vært inne å modifisert på den samme filen til å fungere inne i RAD Studio (Ved bruk at TortoiseSVN utenfor RAD Studio går dette helt fint). Dessuten er funsjonaliteten som er implementert inne i RAD Studio veldig begrenset i forhold til hva som finnes i TortoiseSVN.

En annen ting som vi ikke liker helt er selve filosofien bak Subversion med oppretting av alle problemer i etterkant (fletting) og spesielt at systemet ikke sier fra hvis en annen utvikler allerede er i ferd med å editere i en Delphi fil. Jeg vet at Subversion har låse mekanismer, men kommandoer for disse må igjen kjøres utenfor RAD Studio. En annen ting er at Subversion har en veldig sentralisert modell, der det er vanskelig for en utvikler å ha lokale trær (sitt arbeidsområde) som det blir tatt backup av. Alle må dele med alle hvis det ikke kjøres branching. GIT og Mercurial skal være bedre på dette området, men jeg har ikke klart å finne offisielle integrasjoner mot RAD Studio for disse versjonskontrollsystemene.

Jeg har også en oppfordring til Alfasoft om å sjekke ut muligheten for integrasjon mellom RAD Studio og andre versjonskontrollverktøy enn Subversion. I f.eks. Eclipse og Visual Studio er det mye lettere, fordi det finnes mange flere versionskontroll plugins til disse verktøyene. Jeg synes rett og slett at det er litt for dårlig av Embarcadere å ikke lage flere slike for andre versjonskontrollsystemer enn SVN.

Blir dette bedre i XE4?

Versjonskontroll og erfaringer fra dette kunne ha vært et tema for en meetup.

Med vennlig hilsen fra Hans Reier Sigmond, HK Data
Alf C.
user 3200088
Oslo, NO
Post #: 43
Jeg er godt fornøyd med å bruke en plugin for TortoiseSVN. Mener det er den første av disse som er nevnt her.

https://www.google.no...­

Jeg har brukt dette siden omtrent TortoiseSVN kom.

Såvidt jeg minnes eksponeres alle funksjoner i TortoiseSVN også checkin og checkout og automatisk innlegg i SVN alle nye uniter etc. Du får spørsmål om det er ok.
Torgeir A.
user 5504073
Oslo, NO
Post #: 4
Jeg mener vi har sett på noe som skal fungere mot Mercurial, jeg kan prøve å finne ut litt mer om det.
Hallvard V.
hvassbotn
Oslo, NO
Post #: 57
Pr idag bruker vi Delphi 2009, SVN og Tortoise, men på litt sikt kommer vi til å bytte til GIT.

Jeg har egentlig gitt opp alle "integrerte" løsninger, de blir stort sett aldri like bra som dedikerte GUI verktøy som Tortoise og lignende.

Måten vi har gjort det på er å lage en tynn "integrering" til Tortoise ved å legge til de mest brukte kommandoene man har bruk for i Tools menyen i Delphi IDEen, f.eks:



Der én av kommandoene (Commit) ser slik ut:



Det fulle innholdet av Parameters-feltet er:
/C C:\SvnPas\Utils\Batch\SvnCmd.Bat commit C:\SvnPas\ $SAVEALL

Denne bruker en god, gammeldags Batch fil, SvnCmd.Bat som ser slik ut:

"c:/program files/tortoisesvn/bin/tortoiseproc.exe"­ /command:%1 /path:%2 /notempfile

På den måten har vi kjapt tilgang til SVN kommandoer (Alt+T, C, for Commit), og full tilgang til funksjonalitet, merging etc i Tortoise.

Works for us! :)

Når vi går over til GIT kommer vi trolig til å gjøre det på samme måte - bruke det beste GUI verktøyet og bare linke til det med Tools kommandoer.
Powered by mvnForum

Sign up

Meetup members, Log in

By clicking "Sign up" or "Sign up using Facebook", you confirm that you accept our Terms of Service & Privacy Policy