versiebeheer, hoe en wat?

Pagina: 1
Acties:
  • 108 views sinds 30-01-2008
  • Reageer

  • wizl
  • Registratie: Maart 2001
  • Laatst online: 27-02-2023
Wie heeft er ervaring met versiebeheer software.

Ik ben op zoek naar een systeem dat van verschillende componenten van een stuk software de afhankelijkheden kan bewaken. Stel er zijn een aantal DLL-bestanden met tussen die DLL's gedefinieerde interfaces. Ik wil op een gegeven moment dan kunnen zeggen. Versiebeheerprogramma geef mij de sources van bij wijze van spreken 1.5 jaar geleden met de onderlinge afhankelijkheden intact. Het is een wazig verhaal, ik weet het, maar er moet toch een manier zijn om het verloop van de sourcecode ontwikkeling gestructureerd te maken zodat je altijd een bepaalde versie kunt reproduceren. Hoe doen grote ontwikkelaars dit?

Verwijderd

Dat noemen ze CVS (Concurrent Version System)

[search=CVS]

  • Crazy D
  • Registratie: Augustus 2000
  • Laatst online: 19:13

Crazy D

I think we should take a look.

Zie ook [topic=319284]

Exact expert nodig?


  • wizl
  • Registratie: Maart 2001
  • Laatst online: 27-02-2023
Tja, die topic had ik al eens gehad, maar dat CVS vindt ik zo wazig. De een zegt dat je geen binary files kunt 'opslaan' etc. En wat ik niet duidelijk krijg is, is of versiebeheer met CVS nu voordelen heeft/uitgebreider is, dan met VisualSourceSafe (huidige pakket)

  • Dash2in1
  • Registratie: November 2001
  • Laatst online: 31-08 22:49
Op woensdag 12 december 2001 17:07 schreef wizl het volgende:
Tja, die topic had ik al eens gehad, maar dat CVS vindt ik zo wazig. De een zegt dat je geen binary files kunt 'opslaan' etc. En wat ik niet duidelijk krijg is, is of versiebeheer met CVS nu voordelen heeft/uitgebreider is, dan met VisualSourceSafe (huidige pakket)
Met cvs kan je ook binaries opslaan ..

  • wizl
  • Registratie: Maart 2001
  • Laatst online: 27-02-2023
Maar ff. heel erg kort door de bocht, die omschrijving hierboven zovan: get version 1.2.1.1 met alle bijbehorende dependencies van die tijd (stel ik ben inmiddels 3 versies en een ontwikkelomgeving verder :P ), is dat mogelijk met CVS? (met VSS lukt het namelijk niet).
Kun je bijvoorbeeld met een command-line opdracht een bepaalde versie 'getten'?

  • JayTaph
  • Registratie: Oktober 1999
  • Laatst online: 28-11-2025

JayTaph

Portability is for canoes.

Ja... CVS is van origine een command line tool.. Samen met RCS is het een van de meest platform-onafhankele systemen (windows, unix, vms, mac etc). Je kunt aan een release een "tag" hangen (RELEASE_1_0_BETA) en deze release in een later stadium weer opvragen (cvs checkout PROGRAMMA -r RELEASE_1_0_BETA), het verschil opvragen tussen relase 1 en 2 (cvs diff -r RELEASE_1_0_BETA -r RELEASE_1_0_ALPHA dll.c) en nog veel meer..

Hou er wel rekening mee (en meestal wordt dit vergeten) dat CVS het programmeren in eerste instantie moeilijker maakt. je moet namelijk rekening gaan houden met wanneer je iets in je CVS incheckt en hoe (checkin-policies). Je moet een CVS-repository gaan bijhouden en je zult waarschijnlijk veel oude code gaan herzien. An sich niets spectaculairs, maar als je niet gewend bent om hiermee te werken dan zal het allemaal in eerste instantie een hoop extra rompslomp met zich meebrengen..

Ga dus zeker eerst oefenen met simpele filetjes, hoe je moet inchecken, uitchecken, diffen, taggen, branchen en wees niet bang dat je met CVS wat extra werk gaat krijgen..

(een heel leuk (duur) pakket is MKS, kost een paar knaken, zijn niet helemaal compatible met unix helaas, maar werkt als een trein)...

Yo dawg, I heard you like posts so I posted below your post so you can post again.


Verwijderd

Op woensdag 12 december 2001 17:17 schreef wizl het volgende:
Maar ff. heel erg kort door de bocht, die omschrijving hierboven zovan: get version 1.2.1.1 met alle bijbehorende dependencies van die tijd (met VSS lukt het namelijk niet).
Je kan toch gewoon een versie label over je complete project leggen met vss die die na 3 jaar getten!?

Verwijderd

Bij ons op 't werk (we zijn een softwarebedrijfje) werken we met Perforce (www.perforce.com dacht ik). De reden : we developen zowel op PC als op Mac, op Windows als op MacOS als op Unix. Visual SourceSafe is er al niet voor Mac bvb. We gebruiken zowel CodeWarrior als Visual C++ als een GCC gebaseerd systeem qua ontwikkelomgeving, en perforce werkt gewoon met al deze configuraties, wat van een aantal andere systemen niet kan gezegd worden. Het kan ook binaries bevatten enzo, geen probleem.
Hoe doen we wat jij wil ? Wel, om te beginnen werken wij aan verschillende projecten tegelijkertijd, die allemaal door perforce beheerd worden. Als we van een product een 'release' hebben, dan 'freezen' we gewoon alles wat bij die release hoort en op dat moment in perforce zit (en in perforce kunnen dat dus ook binaries zijn), en maken we dus een 'aftakking' om nieuwe versies toe te laten. Zie het als een kopie van alles files van dat project, en op die kopie ga je verder werken ontwikkelen. Je hebt dan nog steeds je 'origineel' waar je later kunt naar terugkeren. In realiteit maak je natuurlijk geen kopie, maar wordt die zooi allemaal intern door perforce geregeld. Je kunt zelfs als je wil een aantal 'changes' van de aftakking naar de originele versie 'mergen'. Zo kun je op je bevrozen release bvb toch nog bugfixes doorvoeren.
Sorry als 't wat onduidelijk uitgelegd is, je moet maar eens een blik werpen op de handleiding van perforce als je d'r meer wil van weten, alles is vrij op hun website beschikbaar...
Ik moet zeggen : 't is best wel een goed dingetje. Het zal ook wel z'n nadelen hebben waarschijnlijk, maar 't doet in ieder geval alles wat wij willen kunnen :)
Met andere systemen heb ik nooit gewerkt (met uitzondering van Visual SourceSafe dan), dus ik kan niet echt vergelijken met de rest van de mogelijkheden...
Hope this helps a bit. Succes nog !

Verwijderd

Op woensdag 12 december 2001 20:22 schreef _piranha_ het volgende:
Bij ons op 't werk (we zijn een softwarebedrijfje) werken we met Perforce (www.perforce.com dacht ik). De reden : we developen zowel op PC als op Mac, op Windows als op MacOS als op Unix. Visual SourceSafe is er al niet voor Mac bvb.
Wel dus.
Apple-versie. Er schijnt ook een UNIX versie te zijn.

Maar er zijn natuurlijk wel redenen om geen VSS te nemen...
Pagina: 1