Jag kan, lite skamset, berätta att Atlas inte är ett versionerat projekt. Att versionera något betyder att varje gång man sparar en fil så sparas den gamla versionen som en äldre kopia. Så gör jag inte med Atlas. Atlas är bara en hög textfiler som jag redigerar. Givetvis tar jag backup av hela Atlas, men jag kan inte gå tillbaka till "föregående version" enkelt. Jag har dock BBEdit satt att göra backup på alla ändringar jag gör, så jag kan faktiskt gå tillbaka till en tidigare version, men det kräver lite grävande och letande.
Anledningen till att jag inte versionerat det är att det inte funnits något behov egentligen. Jag utvecklar ju Atlas själv och har själv kolla på vad som görs. Sure, det har hänt att jag gjort bort mig och fått lov att återskapa ett script från scratch, men det har hänt sammanlagt två eller tre gånger, på fyra år.
En annan anledning är att filstrukturen är inte så himla ren i Atlas. Bilder och php-script delar liksom samma plats. Och bilder för layout och liknande behöver jag inte versionera, så då har jag inte tagit tag i detta och rensat upp i Atlas. I alla fall inte ännu.
Sen är ju frågan om Atlas ska vara ett projekt och sen varje site i Atlas ett eget projekt, så man får koppla upp sig mot olika repositories för varje sak man vill göra, eller ska allt ligga i samma projekt? site-specifika PHP-script är det rätt tunt med, så risken är ju att det skulle bli rätt så små projekt. Eller kanske ska alla siter ligga i ett projekt? Jag vet inte riktigt.
Sen har vi ju det här med mediaserver. Med min nya Xserve RAID så ska ju bilder och filer egentligen sparas på den. Men d måste jag bygga om Atlas så att den kan spara och hämta bilder/filer från en extern server. Inget jätteproblem kanske, men det kräver en hel del pill.
Sen har jag haft kunder som efterfrågat utvecklingsmiljö i Atlas. Alltså, att siten som dom jobbar med har ett "offline"-läge där dom kan leka med innehållet och sen publicera hela sidan externt. Det kräver ju en hel del pill för att få igång en sådan sak. Inte minst att ha olika uppsättningar av MySQL-servrar, som ska speglas mellan varandra - vilket är ännu ett problem då "live-siten" får nytt material via medlemmar (forum och sådant) som alltså ska gå "live" direkt.
Detsamma gäller ju för mig - en utvecklingsmiljö för Atlas som jag sen kan publicera. Det har ju hänt att jag donat med något som har förstört för en kund live. Och det är ju det jag skulle uppnå med ett versionssystem. Men om jag jobbar med en "offline"-version av Atlas så måste jag ju ändå ha tillgång till online-data. Men ibland måste jag ju i så fall använda offline-data eftersom ändringen påverkar kanske innehållet eller strukturen i databasen.
Klurigt som tusan!