Rational ClearCase
Från Rilpedia
Rational ClearCase är en programvara från IBM som används för versionshantering av filer, i synnerhet källkod till datorprogram. ClearCase erbjuder också möjlighet till parallell utveckling (i olika grenar) samt arbete på geografiskt skilda platser (multi-site).
ClearCase används av många stora företag (bl.a. Ericsson, Sony Ericsson, Siemens och Kockums), men p.g.a. dess komplexitet och relativt höga pris är den inte speciellt vanlig på små och medelstora företag.
Innehåll |
Struktur
ClearCase är ett client/server-system där både server- och klientprogramvaran finns för en rad plattformar, bl.a. Linux, Solaris, HP-UX och Microsoft Windows. Klient-delen består av ett antal grafiska program samt ett kommandogränssnitt (CLI).
Historik
Ursprungligen är ClearCase en produkt från Apollo Computers, DSEE (Domain Software Engineering Environment), som efter att Hewlett-Packard köpte Apollo utvecklades vidare av Atria Software och porterades till Unix. Atria slogs senare ihop med Pure Software för att bilda PureAtria, som senare slogs ihop med Rational Software, som i sin tur köptes av IBM.
Vyer och konfigurationsspecifikationer
Till skillnad från andra versionshanteringssystem, där man arbetar mot servern enbart då man vill synkronisera sin lokala arbetskatalog, används ClearCase-systemet som filserver via det speciella filsystemet MVFS (Multi-Version File System). Användaren skapar en eller flera vyer, och kan på så vis komma åt filer i versionshanteringssystemet som om de vore lagrade på vilken nätverksresurs som helst. Det finns dock även möjlighet att temporärt frikoppla klienten från servern, när man använder s.k. snapshot-vyer (vilka synkroniseras med servern på kommando) eller CCRC-vyer.
Till en vy hör en konfigurationsspecifikation (configuration specificiation) som bestämmer vilka filer i versionshanteringssystemet, samt vilka versioner av dessa filer, som visas i filsystemet. En konfigurationsspecifikation kan till exempel filtrera fram en viss uppmärkt utgåva av en mjukvara, det senast incheckade på en viss gren, tillståndet vid en viss tidpunkt, eller en godtycklig kombination av dylika regler. Konfigurationsspecifikationen skrivs i textformat och redigeras antingen manuellt av användaren eller med hjälp av ett verktyg.
Förutom ett urval av filer och versioner i versionshanteringssystemet kan vyn även innehålla vy-privata filer:
- Filer som checkats ut för att möjliggöra ändringar.
- Filer som genererats vid körning av byggscript (make) o.dyl.
- Filer som användaren valt att lägga i en katalog som omfattas av vyn.
De filer som skapas i en dynamisk vy vid körning av clearmake eller omake (som ingår i Clearcase) benämns "Derived Objects". Till varje sådan fil lagras information om hur den byggts, i en så kallad "Configuration Record". Denna information kan användas för att dokumentera bygget ("bill of materials"), och används även av clearmake och omake för att återanvända redan byggda filer mellan olika vyer om så är möjligt ("build avoidance") via funktionen "wink-in".
Vobbar
Lagringen av filer, kataloger, "derived objects" och metadata görs i så kallade vobbar. En vob (versioned object base) innehåller all information om det som lagrats, inklusive historik, etiketter (labels) för att märka upp vissa versioner med mera.