Posts Tagged ‘programmera’

Versionshantering med Subversion

måndag, mars 14th, 2011

När man utvecklar så är det så klart själva kodandet man har i fokus, inget konstigt med det, men när man bygger större sajter eller webb-applikationer där man är fler än en utvecklare måste man börja tänka på andra saker.  Man måste bland annat på något vis dela upp arbetet så att flera personer inte gör samma sak, man måste även se till att två personer inte redigerar samma fil samtidigt för att sedan skriva över varandras ändringar. En lösning på dessa problem är att använda sig av ett versionshanteringssystem, exempelvis Subversion.

Subversion, förkortat svn, är enkelt uttryckt en databas som innehåller all kod man utvecklar. När jag ska börja utveckla en viss funktion på en sajt ser jag till att hämta hem den senaste versionen av koden från databasen, eller med  korrekta termer, jag checkar ut koden. Jag har nu all kod på min egen dator och utvecklar min funktion och när jag är klar så skickar jag tillbaka koden till databasen, jag gör en commit (eller commitar som vi säger på svengelska). När jag gör det så kontrollerar svn att det inte finns en nyare version av de filer jag editerat, om det finns det så ber servern mig att uppdatera mina filer först. När jag uppdaterar så försöker svn att slå ihop mina utvecklade funktioner med den befintliga koden, och efter det kan jag commita igen. Det fina med det hela är att det är bara filer som är ändrade som överförs, jag behöver alltså inte ladda hem eller ladda upp all kod igen. Om svn inte kan slå ihop mina förändringar med den befintliga koden så får jag lösa det själv genom att jag får se filen i de olika versionerna sida vid sida och kan på så vis bestämma hur slutresultatet ska se ut. Det där beror så klart lite på vilken editor man använder, men de flesta avancerade utvecklingsverktygen har stöd för svn och då fungerar det som jag sa ovan.

En av de absoluta fördelarna med att använda Subversion är att alla versioner av filerna sparas. Man kan alltså när som helst gå tillbaka till vilken version som helst av filen. Säg att jag märker att en viss funktion har slutat fungera, då kan jag enkelt backa till en tidigare version, där jag vet att det fungerade. Ungefär som en flerstegs undo 🙂

Med hjälp av Subversion kan alltså flera utvecklare arbeta samtidigt på samma kod utan att behöva bry sig om att de andra gör det samtidigt.

En annan väldigt praktisk funktion är något som kallas för taggning. När vi tycker att vi har utvecklat klart och det är dags att publicera det vi gjort kan vi ”tagga” koden. Detta innebär att om jag exempelvis taggar aktuell kod i databasen med v1.0 (första versionen av applikationen) och sedan fortsätter att utveckla, så kommer databasen ändå ihåg exakt hur all kod såg ut vid taggningen. Man kan säga att det skapas en kopia av koden exakt vid ögonblicket för taggningen även om det inte sker i verkligheten. Jag kan nu alltså när jag vill hämta hem version 1.0 av applikationen, även om vi fortsatt utvecklingen och kommit till version 1.5. På det här viset kan vi även buggfixa på version 1.4 samtidigt som utveckling sker på 1.5, vilket underlättar otroligt mycket om version 1.5 innehåller mycket ny funktionalitet.

För dig som använder Mac har tidningen Macworld har skrivit en artikel som går igenom grunderna i Subversion på just Mac.

 

Semestern är slut

söndag, juli 18th, 2010

sommar.jpg

Så var semestern över för i år, i morgon börjar jag arbeta igen. Jag är inte speciellt bitter eller besviken över det, tvärtom, det ska bli både skönt och kul att få börja programmera igen. Det finns en del spännande projekt att ta tag i som jag tvingat mig själv att inte ens fundera på under semestern. Camilla Littorin, förbundssekreterare på Företagarförbundet, säger i en artikel i Dagens Nyheter att småföretagare har svårt att ta semester och koppla av från arbetet och att gränserna mellan arbetet och övrig tid är otydliga. Jag håller med, så jag försökte i år att inte ens läsa e-post som var relaterad till jobb och det gick faktiskt strålande. Så efter två veckor av brain-cleaning känner jag mig mer på hugget än någonsin. Våra kära politiker skulle nog också må bra av lite brain-cleaning även när det är valår, eller kanske till och med speciellt när det är valår.

etype.jpg

Avslutningsvis måste jag bara säga att det är otroligt coolt att E-type har börjat göra dansbandsmusik. Killen som var hårdrockare men som sedan upptäckte att det var enklare att bli poppis om man gjorde eurodance och som nu när eurodance inte direkt är det populäraste på listorna helt enkelt börjar med dansband. Det som gör det hela så coolt är att han vänder kappan efter vinden så öppet och inte säger en massa struntprat som: Jag gör det här för att jag brinner för den här muskstilen, som så många andra gör. Han gör det för att det går att tjäna pengar på det och han skäms inte för det. Jag ser fram emot att höra This is the way i dansbandstappning med Sten Nilsson vid mikrofonen nästa sommar. Over and out.