Differences

This shows you the differences between two versions of the page.

Link to this comparison view

svn_uppgifter [2011-11-06 17:25]
Joakim Forsgren [Steg att följa]
svn_uppgifter [2017-09-01 14:54]
Line 1: Line 1:
-====== Uppgifter på svn ====== 
-Om man skall koda något lite större bör man versionshantera sitt jobb, det system så vi tar upp är **subversion** (svn). Det är ett av de vanligaste versionshanteringssystemen och bygger på i princip samma tänk som de flesta andra. På senare tid har **git** börjat komma och det jobbar på ett lite annorlunda sätt. 
- 
- 
-===== Uppgift 1 ===== 
-  * Man kan köra subversion på en massa olika sätt, ni skall här pröva att sätta upp ett eget repository på era lokala filer eller på freetux och hämta till er bärbara via ssh eller direkt via lokala filer. 
-  * Extra - gör både via ssh och lokala filer 
- 
-==== svn via ssh + lokala filer ==== 
-Om du skall jobba med ssh rekommenderar jag att du använder dig av ssh public key för att slippa logga in hela tiden\\ 
- 
-<code bash> 
-# På den dator som du har tänk ha ditt repository 
-# Detta kommando skapar ett nytt "repository" under $HOME/my-repo. 
-svnadmin create $HOME/my-repo 
- 
-# Skapa en arbetskopia 
-# På din bärbara eller på ett annat ställe på servern. Det är här du ska jobba med filerna. 
- 
-mkdir my-files 
-svn import -m "My files" my-files svn+ssh://my-username@my-server/my-home/my-repo/my-project 
-# alternativt om du kör lokalt 
-svn import -m "My files" my-files file:///my_home/my-repo/my-project 
-rm -rf my-files 
-svn checkout svn+ssh://my-username@my-server/my-home/my-repo/my-project 
-# alternativt om du kör lokalt 
-svn checkout file:///my-home/my-repo/my-project 
-</code> 
-Nu kan man skillnaden mella file och svn+ssh!\\ 
-Lättaste sättet att lägga till flera filer som inte är versionshanterade är via import.\\ 
-Om du vill lägga till all din kod för en websida med ett enda kommando 
- 
-<code bash> 
-#För att slippa skriva en massa varje gång så kan man sätta en miljövariabel 
-export SVNROOT="svn+ssh://my-username@my-server/my-home/my-repo" 
-svn import -m "My website" www ${SVNROOT}/www 
-mv www www_bak 
-svn checkout ${SVNROOT}/www www 
-</code> 
- 
-===== Uppgift 2 ===== 
-  * Du skall göra följande steg och reflektera över vad som händer och hur det funkar. 
- 
-OBS!! Du skall byta ut **https://svn.oedu.se/my_repos/** mot **dit eget repository** som du skapat. 
- 
-==== Steg att följa ==== 
-<code bash> 
-# Tips 
-svn help 
-# för mer hjälp om ett visst kommando 
-svn help [underkommando] 
- 
-# Gör dessa steg för att komma igång 
-# Du kan börja med att skapa en tom mapp 
- 
-# Måste börja med att lägga in något för att testa 
-# alternativ skicka in det du har gjort, försöka tänka igenom  
-# vilka filler du har och var de ligger i så fall 
- 
-# Skapa en testmapp som du jobbar i 
-mkdir svntest 
-cd svntest 
-# Här skapar jag en tom mapp för mitt projekt, i det ska jag ha 
-# olika under mappar, code, grafik, docs mm 
-mkdir pa 
-# svn import gör man ganska sällan 
-svn import pa https://svn.oedu.se/my_repos/pa 
-# här kommer man att få logga in, godkänna ett cert och ev spara sitt lösen - det brukar jag göra. 
- 
-# tar bort 
-rm -fR pa 
-#kollar 
-tree -a 
-# checkar ut 
-# svn checkout gör man ganska sällan 
-svn checkout https://svn.oedu.se/my_repos/pa 
-#kollar 
-tree -a 
- 
-# går in i pa och skapa två filer, fil1 och fil2 
-# Kollar status 
-svn status 
-# Som du ser är det ? lägger till fil1 och fil2 
-svn add fil1 fil2 
-# kollar 
-svn status 
-# skicka in alla ändringar 
-# du kan ändra vilken editor du skall redigera ditt logg meddelande i. Man kan även lägga till en flagga -m "logg text" till svn commit 
-svn commit 
-# Skapa en till fil fil3 och ändra i fil1 
-# Kollar status 
-svn status 
-# Som du ser är det ett ? på fil3 och m på fil1, vill du lägga till den gör det med 
-svn add fil3 
-svn status 
-svn commit 
-# ta bort fil2 
-rm fil2 
-ls -la 
-# Uppdatera 
-svn update 
-ls -la 
-# som du ser är den nu tillbaka 
-# för att verkligen ta bort en fil 
-svn delete fil2 
-svn commit 
-ls -la 
-</code> 
-# Det man använder mest är  
-svn commit 
-svn update 
-svn add 
-# sen är det bra att kunna 
-svn delete 
-svn update -r (mm..) 
-svn info 
-svn diff 
-svn help 
-svn help [underkommando] 
-