Permalänk
Medlem

Nybörjarfrågor om SVN

Båda mina favoriteditorer (Coda och BBedit) har SVN inbyggt och jag funderar lite på att börja använda det.

Innan jag börjar rota i allting från grunden skulle jag gärna vilja ställa några frågor.

- Måste jag installera SVN på min egna server eller finns det tjänster som kan hosta gratis?

- När jag arbetar med en html, eller php-fil och vill spara denna, kan jag då bara välja Save så att filen blir live med en gång? Eller måste man gå massa omvägar och uppdatera osv. Vill gärna att det ska vara så smidigt som möjligt om det ens ska vara intressant. Antar iofs att detta är väldigt beroende av klient, men berätta gärna om era erfarenheter av era klienter och scenarion! Hur går det till från att spara en fil tills den är live?

- Hur fungerar själva kopplingen med SVN mellan repository:n (heter det så) och själva live-siten? Sparas alla versioner på SVN repository:n och sedan uppdateras därifrån mot min livesite? Eller arbetar SVN repository:n direkt med livesiten på något vis?

Visa signatur

It's nice to be important but it's more important to be nice. Posse!

Permalänk
Glömsk

Arbetsflödet med Subversion brukar se ut såhär:

1) Man uppdaterar sitt lokala projekt med ändringar som kan ha tillkommit i repon. Medan man sov kanske någon annan programmerare lade till funktioner i projektet.

2) Man arbetar lite på sitt projekt, kanske fixar en bugg eller lägger till en funktion. Detta kan inkludera att man ändrar filer, tar bort filer, eller lägger till filer.

3) När man är nöjd så har den egna kopian av projektet ändrats mot den som ligger i repon. För att skicka upp datan gör man en "commit". Det innebär att den lokala kopian skickas till servern så andra utvecklare kan ta del av projektet. I samband med sin commit brukar man ange ett commitmeddelande, där man snabbt skriver vad man har gjort, exempelvis "Fixed a custom 404 page.".

Subversion är ganska dåligt system jämfört med modernare versionshanteringssystem, men det kan vara bra att kunna använda eftersom det är så vanligt. Så jag kan rekommendera att du slänger in en subversionserver på en ledig burk.

Vill du testa ett trevligt system från start finns Git och sajten Github där du kan hosta dina egna projekt. http://github.com/

Visa signatur

...man is not free unless government is limited. There's a clear cause and effect here that is as neat and predictable as a law of physics: As government expands, liberty contracts.

Permalänk
Medlem

+1 för GIT
(upptäckte idag hur tråkigt det var att ha Magento (e-shop-system) under svn, blev lätt 80000 filer totalt, medans git hade grejjat det på 40001-isch filer)

Visa signatur

weeeee

Permalänk
Medlem

Hur fungerar GIT rent arbetsflödesmässigt för mig? Måste jag spara filen och sen ladda upp den på deras hemsida via ett webinterface? Antar att man helst vill kunna spara direkt i sin editor?

Visa signatur

It's nice to be important but it's more important to be nice. Posse!

Permalänk
Medlem

Ang git: Går att köra relativt svn-liknande med enda egentliga skilnaden att du kör ett till kommando. Efter att du efiterat filer kör du git commit, vilket namnger dina ändringar (de du väljer att ta med). Därefter måste du pusha ändringar för att de ska finnas på servern, git push. För att ladda hem ändringar gör du git pull.

Fördelen med git är att du inte behöver en central server egentligen, du kan pusha mellan flera datorer utan att nån är själva huvud-repot.

Visa signatur

void@qnet
teeworlds, stålverk80, evil schemer, c, c++
Languages shape the way we think, or don't.

Permalänk
Medlem
Citat:

Ursprungligen inskrivet av jdv
Ang git: Går att köra relativt svn-liknande med enda egentliga skilnaden att du kör ett till kommando. Efter att du efiterat filer kör du git commit, vilket namnger dina ändringar (de du väljer att ta med). Därefter måste du pusha ändringar för att de ska finnas på servern, git push. För att ladda hem ändringar gör du git pull.

Fördelen med git är att du inte behöver en central server egentligen, du kan pusha mellan flera datorer utan att nån är själva huvud-repot.

Tror inte riktigt jag hänger med..

Ett scenario:

Jag sitter och redigerar index.php lokalt och lägger in en ny funktion i den.. När jag är färdig sparar jag filen (lokalt). Hur gör jag sen för att få upp den till git? Och vart kommer kopplingen mellan git och livesiten?

Skickar jag först upp filen till git och sedan till livesiten? Det verkar lite omständigt..

Det jag brukar göra idag är att jag "streamar" filerna direkt ifrån mitt FTP program till editorn och när jag är färdig sparar jag filen och då laddas den upp automatiskt på livesiten.. Alltså bara en knapptryckning... Jag arbetar alltså inte i stora grupper med flera personer utan det är mest jag själv och kanske någon till och då vill jag bara ha koll på vad som har ändrats, och ha möjligheten att kunna gå tillbaka några versioner om det skulle behövas. Är det något annat system jag söker då?

Om jag t.ex vill ändra att H1 ska vara röd istället för blå så vill jag bara kunna öppna css filen och göra ändringarna och sen trycka save.. Inte behöva spara, ladda upp, commita och allting

Visa signatur

It's nice to be important but it's more important to be nice. Posse!

Permalänk
Medlem

Gör aldrig ändringar direkt mot en live-site. Vi antar att du vill jobba mot en dev-site direkt.

Första gången så checkar du ut lämplig repo från github eller den git-server du använder till den server som sidan ska ligga på. Sätter upp databaser m.m.

Du vill göra lite ändringar nu, ponera att du kör en ssh-tunnel till live-siten, kanske bara putty och editerar filerna med emacs, vi eller dyl. Du är klar och testar din dev-site och är nöjd med förändringarna, sedan kör du bara commit, och pushar upp den vidare ... t.ex. till github ... helt plötsligt så når dina kompisar som jobbar med samma projekt allting bara dom gör en pull ...

Om du jobbar i windowsmiljö så kan du använda http://code.google.com/p/tortoisegit/ som är ett ganska nice program, men det behövs verkligen inte.

Visa signatur

weeeee

Permalänk
Medlem
Citat:

Ursprungligen inskrivet av mounte
Gör aldrig ändringar direkt mot en live-site. Vi antar att du vill jobba mot en dev-site direkt.

Första gången så checkar du ut lämplig repo från github eller den git-server du använder till den server som sidan ska ligga på. Sätter upp databaser m.m.

Du vill göra lite ändringar nu, ponera att du kör en ssh-tunnel till live-siten, kanske bara putty och editerar filerna med emacs, vi eller dyl. Du är klar och testar din dev-site och är nöjd med förändringarna, sedan kör du bara commit, och pushar upp den vidare ... t.ex. till github ... helt plötsligt så når dina kompisar som jobbar med samma projekt allting bara dom gör en pull ...

Om du jobbar i windowsmiljö så kan du använda http://code.google.com/p/tortoisegit/ som är ett ganska nice program, men det behövs verkligen inte.

OK, tack. Men jag förstår fortfarande inte riktigt hur jag får filerna från git till live-siten smidigt.

Jag kör OS X

Visa signatur

It's nice to be important but it's more important to be nice. Posse!

Permalänk

Gör som såhär; ladda hem MacFusion eller Expandrive. Montera din public_html via ftp/sftp/ssh - lägg till filerna i valfri editor och kör!

Visa signatur

Citera, tack!
Har du läst tråden om strandhögtalare och andra musiklådor?

Permalänk
Medlem
Citat:

Ursprungligen inskrivet av jdv
Ang git: Går att köra relativt svn-liknande med enda egentliga skilnaden att du kör ett till kommando. Efter att du efiterat filer kör du git commit, vilket namnger dina ändringar (de du väljer att ta med). Därefter måste du pusha ändringar för att de ska finnas på servern, git push. För att ladda hem ändringar gör du git pull.

Fördelen med git är att du inte behöver en central server egentligen, du kan pusha mellan flera datorer utan att nån är själva huvud-repot.

Lite finare brukar man säga att git har "local commits". Märk att det också är en funktion som är schemalaggd till framtida versioner av SVN.

Visa signatur

"Nothing is impossible because impossible itself says I M Possible..."

Permalänk
Medlem
Citat:

Ursprungligen inskrivet av blomqvist
Gör som såhär; ladda hem MacFusion eller Expandrive. Montera din public_html via ftp/sftp/ssh - lägg till filerna i valfri editor och kör!

Perfekt! Det är faktiskt så jag kör idag för det mesta!

Var kommer git in i bilden då? Eller annan SVN?

Visa signatur

It's nice to be important but it's more important to be nice. Posse!

Permalänk
Medlem

Ingen stans, om du inte vill versionhantera/dela kod. Vilket var vad hela frågan handlade om, eller?

Visa signatur

void@qnet
teeworlds, stålverk80, evil schemer, c, c++
Languages shape the way we think, or don't.

Permalänk
Medlem
Citat:

Ursprungligen inskrivet av jdv
Ingen stans, om du inte vill versionhantera/dela kod. Vilket var vad hela frågan handlade om, eller?

hmmm... okaj.. Det kanske är lättare att jag skriver vad jag är ute efter

Jag vill kunna öppna en fil direkt ifrån livesiten via Findern (monterad med afp, nfs eller sftp) eller med ett FTP-program. När jag sparar filen ska mina ändringar automatiskt uppdateras på livesiten, samt även sparas i en versionsdatabas där jag har möjligheten att kunna backa och se ändringar.. Kan man göra detta på något sätt i OS X? Jag har just nu licenser för Transmit, Coda, BBedit och ExpanDrive så går det att lösa det genom dessa program hade det vart kanon, annars är jag såklart öppen för förslag..

Ingen här annars som arbetar med Coda eller BBedit och deras inbyggda stöd för SVN? Killarna bakom Panic brukar ju ofta ha koll på saker och göra det så smidigt som möjligt. Men innan jag sätter mig in i hur allt funkar och sätter upp servrar m.m vill jag bara veta hur man rent praktiskt kan jobba med det.. Om det är någon idé

Visa signatur

It's nice to be important but it's more important to be nice. Posse!

Permalänk

Jag öppnar, sparar och leker med mina fjärrfiler direkt i finder mha expandrive (macfusion fungear också).

Visa signatur

Citera, tack!
Har du läst tråden om strandhögtalare och andra musiklådor?

Permalänk
Medlem
Citat:

Ursprungligen inskrivet av blomqvist
Jag öppnar, sparar och leker med mina fjärrfiler direkt i finder mha expandrive (macfusion fungear också).

Men hur får du versionshantering på filerna då?

Visa signatur

It's nice to be important but it's more important to be nice. Posse!

Permalänk
Citat:

Ursprungligen inskrivet av spanXen
Men hur får du versionshantering på filerna då?

Min otroligt selektiva läsning missade den biten!

Visa signatur

Citera, tack!
Har du läst tråden om strandhögtalare och andra musiklådor?

Permalänk
Medlem

Om du vill krångla kan du köra svn/git eller what so ever, i en mapp. Köra det som ett netbeans projekt och låta netbeans flytta filerna automagiskt till en annan mapp eller ftp eller nåt när du trycker kör.

(Vill du ha detaljer fråga gärna så släger jag ihop en lite guide)