iChristian Skrevet 9. desember 2007 Skrevet 9. desember 2007 Hva er den beste måten å oppdatere mange mapper på i terminalen? Jeg har ssh på serveren og får å oppdatere hjemmesiden min så laster jeg ned med wget og bruker tar -zxf til å hente ut filene og de havner da i en undermappe. problemet blir å flytte mappene, da jeg får feilmelding på grunn av at det er en del mapper blant filene jeg prøver meg da med mv-kommandoen, Hvordan skal jeg få til dette enklest mulig? Jeg skal altså flytte alt innholdet fra /tilfeldigmappe til .. og dermed overskrive alle filer med samme navn
Drømmemannen Skrevet 9. desember 2007 Skrevet 9. desember 2007 Jeg ville brukt scp -r lokal/mappe brukernavn@server:/path/til/mappe Da får du lastet opp en mappe + alt innhold til serveren, og det som måtte ligge på serveren av matchende filer blir overskrevet.
iChristian Skrevet 9. desember 2007 Forfatter Skrevet 9. desember 2007 Og i et tilfelle som mitt hvor det allerede ligger på serveren?
Drømmemannen Skrevet 9. desember 2007 Skrevet 9. desember 2007 Du kan bruke cp -R og så slette undermappen etterpå.
iChristian Skrevet 9. desember 2007 Forfatter Skrevet 9. desember 2007 Du kan bruke cp -R og så slette undermappen etterpå. Det funket, tusen takk
Dead_Rabbit Skrevet 10. desember 2007 Skrevet 10. desember 2007 Jeg hadde heller brukt et versjonskontrollsystem som f.eks. Subversion - mye enklere og bedre. (Hvis jeg forsto problemet ditt rett, that is..)
Drømmemannen Skrevet 10. desember 2007 Skrevet 10. desember 2007 (endret) Du mener å ha et repo og en utsjekket kopi på serveren, hvor sistnevnte fungerer som den faktiske hjemmesiden? Ikke så dum idé det. Endret 10. desember 2007 av Drømmemannen
iChristian Skrevet 10. desember 2007 Forfatter Skrevet 10. desember 2007 Jeg hadde heller brukt et versjonskontrollsystem som f.eks. Subversion - mye enklere og bedre. (Hvis jeg forsto problemet ditt rett, that is..) Du mener å ha et repo og en utsjekket kopi på serveren, hvor sistnevnte fungerer som den faktiske hjemmesiden? Ikke så dum idé det. Hvordan ville dette fungert?
Drømmemannen Skrevet 10. desember 2007 Skrevet 10. desember 2007 (endret) Du lager et Subversion repository ett eller annet sted på serveren din som du putter nettsiden din i, f.eks. fra en arbeidskopi hjemme. Så sjekker du ut en ny arbeidskopi nøyaktig der hjemmesiden din ligger. Nå du da jobber hjemme og committer til repositoriet, kan du senere bare gjøre en update i arbeidskopien på serveren og vips så er nettsiden oppdatert utad. Redigert: Staving Endret 10. desember 2007 av Drømmemannen
iChristian Skrevet 10. desember 2007 Forfatter Skrevet 10. desember 2007 Hvordan installerer jeg en slik SVN? (Ubuntuserver) Hvordan bruker jeg en slik SVN? Kommandoer og slikt?
Drømmemannen Skrevet 10. desember 2007 Skrevet 10. desember 2007 (endret) Hvordan installere Subversion og lage et fungerende repository: På serveren, skaff root-tilgang: $ sudo su Installere Subversion: $ apt-get install subversion Det er typisk å legge repositoriet i /var, f.eks. /var/svn/repo, så da må du kjøre: $ mkdir /var/svn $ svnadmin create /var/svn/repo Du må ha tilgang til repositoriet. Jeg ville laget en gruppe som heter f.eks. svn: $ groupadd svn Gjøre deg medlem av gruppa: $ usermod -a -G svn brukernavn Sette rettigheter på repo: $ chgrp -R svn /var/svn/repo $ chmod -R g-w /var/svn/repo $ chmod -R g+rw /var/svn/repo/db $ chmod -R g+rw /var/svn/repo/locks $ chmod g-w /var/svn/repo/db/format Da skal innholdet i /var/svn/repo se ut noe slikt som: -rw-r--r-- 1 root svn 229 Sep 18 15:45 README.txt drwxr-xr-x 2 root svn 1024 Sep 18 15:45 conf drwxr-xr-x 2 root svn 1024 Sep 18 15:45 dav drwxrwsr-x 5 root svn 1024 Oct 28 23:39 db -r--r--r-- 1 root svn 2 Sep 18 15:45 format drwxr-xr-x 2 root svn 1024 Sep 18 15:45 hooks drwxrwxr-x 2 root svn 1024 Sep 18 15:45 locks Legg merke til s-en på db-mappen. Innholdet i /var/svn/repo/db skal ligne på: -r--r--r-- 1 root svn 2 Sep 18 15:45 format -rw-rw-r-- 1 root svn 5 Sep 18 15:45 fs-type drwxrwsr-x 2 root svn 1024 Oct 28 23:39 revprops drwxrwsr-x 2 root svn 1024 Oct 28 23:39 revs drwxrwsr-x 2 root svn 1024 Oct 28 23:39 transactions -rw-rw-r-- 1 root svn 37 Sep 18 15:45 uuid -rw-rw-r-- 1 root svn 0 Sep 18 15:45 write-lock Avhengig av hva umask sier må du kanskje lage en kjørbar fil /usr/local/bin/svnserve med innhold: #!/bin/sh umask 002 /usr/bin/svnserve "$@" slik at commits til repoet blir aksesserbare av eventuelle andre brukere. En måte å sjekke om du trenger å gjøre dette er å først la være, så gjøre en commit (se under), og så sjekke i /var/svn/repo/db/revs hvilke rettigheter revisjonene får når du committer. Hvis det ikke er -rw-rw-r-- så må dette til. Nå kan du begynne å bruke repositoriet. Sjekk ut en working copy på din egen lokale maskin: $ svn co svn+ssh://brukernavn@server/var/svn/repo repo Da får du en mappe som heter repo hvor du kan jobbe og committe filer til repo. Du kan gjøre en tilsvarende checkout lokalt på serveren hvor hjemmesiden din ligger: $ svn co file:///var/svn/repo . Jeg foreslår at du leker litt med Subversion og blir kjent med hvordan det fungerer før du eventuelt gjør en checkout der hjemmesiden din ligger slik at ikke noe blir ødelagt. Online Subversion-bok: http://svnbook.red-bean.com/ Endret 10. desember 2007 av Drømmemannen
Dead_Rabbit Skrevet 11. desember 2007 Skrevet 11. desember 2007 (endret) Du mener å ha et repo og en utsjekket kopi på serveren, hvor sistnevnte fungerer som den faktiske hjemmesiden? Ikke så dum idé det. Stemmer, er dette jeg mener. Har planer om å gjøre det samme på min server i nærmeste framtid. Endret 11. desember 2007 av staalezh
sindreij Skrevet 7. januar 2008 Skrevet 7. januar 2008 Subversjon er genialt på slikt. Da kan man også ha en testserver som man har nyeste versjonen på og så oppdatere koden på hovedserveren når koden er stabil. Man kan også ha flere forskjellige versjoner i subversion samtidig. Alt står forklart i den online-boka Drømmemannen linket til. Den finnes også på norsk her (delvis, det viktigste er oversatt, det andre står på engelsk): http://svnbook.red-bean.com/index.nb.html
Dead_Rabbit Skrevet 9. januar 2008 Skrevet 9. januar 2008 Jeg driver forøvrig å mekker et program i Ruby som oppdaterer arbeidskopien på serveren automatisk (via SSH), hvis det skulle være interessant for noen.
LOOM Skrevet 15. februar 2008 Skrevet 15. februar 2008 (endret) Du mener å ha et repo og en utsjekket kopi på serveren, hvor sistnevnte fungerer som den faktiske hjemmesiden? Ikke så dum idé det. Stemmer, er dette jeg mener. Har planer om å gjøre det samme på min server i nærmeste framtid. Dette er ikke noe big deal. Subversion har allerede automatiske funksjoner som gjør dette for deg, f.eks. hook scripts som automatisk blir kjørt når du gjør endringer(commit, update osv) på svn-serveren. Her er linjene jeg skrev inn i ett av svn sine hook scripts. Gå til hooks-mappen i repoet ditt: cd /usr/local/repositories/REPO/hooks/ Ta det scripet som passer deg. Feks det som kjører når du laster opp koden din til repoet (commit). nano post-commit legg til: #!/bin/sh /usr/local/bin/svn update /usr/local/www/NAVNPAAHJEMMESIDEREPO I tillegg må du gjøre klar web-mappen din: /usr/local/bin/svn checkout file:///usr/local/repositories/REPO/ /usr/local/www//NAVNPAAHJEMMESIDEREPO/ Husk at svn-brukeren(apache/svn/your-user-here) får tilgang til web-filene/-mappen, ellers får den ikke kjørt checkout på den. Hver gang du tar commit i eclipse eller i din favoritteditor så blir koden automatisk sendt til web-mappen din. Den oppdaterer webmappen din for hver minste detalje du fikser på/commiter, og du får testet koden din omgående. Trenger ikke å gjøre dette verre enn det det er Endret 15. februar 2008 av LOOM
comicz Skrevet 6. mars 2008 Skrevet 6. mars 2008 Jeg driver forøvrig å mekker et program i Ruby som oppdaterer arbeidskopien på serveren automatisk (via SSH), hvis det skulle være interessant for noen. ... #!/bin/bash ssh server "cd /path/to/app; svn up" ?
Anbefalte innlegg
Opprett en konto eller logg inn for å kommentere
Du må være et medlem for å kunne skrive en kommentar
Opprett konto
Det er enkelt å melde seg inn for å starte en ny konto!
Start en kontoLogg inn
Har du allerede en konto? Logg inn her.
Logg inn nå