Komme i gang med versjonskontroll

stemmer
71

Jeg trenger å implementere versjonskontroll, selv for bare utvikle det jeg gjør hjemme. Jeg har lest om hvor stor Subversion er for de siste par årene, og var i ferd med å vie meg til å lære dette på siden før jeg hørte om Git er det lovende versjonskontrollsystem.

Gitt situasjonen, jeg skal holde ut og se hvilken som kommer ut på toppen? Hva er deres relative fordeler?

Ett problem jeg lagt merke til med Git er det ikke mange fullverdig GUI, noe som er viktig for mange brukere på laget mitt.

Dessuten ville ikke tankene forslag til hvordan du kommer i gang med det ene eller det andre. (tutorials, etc.)

Publisert på 05/08/2008 klokken 18:29
kilden bruker
På andre språk...                            


34 svar

stemmer
80

Det viktigste om versjonskontroll er:

JUST begynne å bruke den

Ikke bruker versjonskontroll er en fryktelig idé. Hvis du ikke bruker versjonskontroll, slutte å lese akkurat nå og begynne å bruke den.

Det er veldig enkelt å konvertere fra

cvs<->svn<->git<->hg

Det spiller ingen rolle hvilken du velger. Bare velg den enkleste for deg å bruke og starte innspillingen historie koden din. Du kan alltid migrere til en annen (D) VCS senere.

Hvis du er ute etter en enkel å bruke GUI titt på TortoiseSVN (Windows) og versjoner (Mac) (Foreslått av codingwithoutcomments )


Redigere:

pix0r sa:

Git har noen fine funksjoner, men du vil ikke være i stand til å sette pris på dem med mindre du allerede har brukt noe mer standard som CVS eller Subversion.

Dette. Ved hjelp av git er meningsløst hvis du ikke vet hva versjonskontroll kan gjøre for deg.

Edit 2:

Bare så denne linken på reddit: Subversion Cheat Sheet . God rask referanse for svn kommandolinjen.

Svarte 05/08/2008 kl. 18:34
kilden bruker

stemmer
18

Bruk omveltning, er det enkelt å sette opp, enkel å bruke, og har rikelig med verktøy. Enhver fremtidig revisjon systemet vil ha en import fra SVN funksjonen, så det er ikke som du kan ikke endre nedover veien hvis dine behov vokse.

Svarte 05/08/2008 kl. 18:31
kilden bruker

stemmer
16

The Subversion Book er det beste alternativet for å lære verktøyet. Det kan være andre quick-start tutorials der ute, men boken er den beste enkelt referansen du finner.

Git har noen fine funksjoner, men du vil ikke være i stand til å sette pris på dem med mindre du allerede har brukt noe mer standard som CVS eller Subversion. Jeg ville definitivt enig med tidligere plakater og starte med Subversion.

Svarte 05/08/2008 kl. 18:36
kilden bruker

stemmer
13

Hvis du er ny på versioncontrol lese dette:
kildekontroll HOWTO

Svarte 14/08/2008 kl. 07:42
kilden bruker

stemmer
10

Gå for SVN. Hvis du aldri har brukt kildekontroll før, vil det ikke noe for deg den ene eller den andre veien.

Også er det ikke en stor mengde læring involvert i å bruke en kildekontroll system. Hvis du lærer en, kan du enkelt bytte over til en annen på et senere tidspunkt.

SVN er et flott verktøy, og det bør ta vare på de fleste av dine behov. Og siden det har eksistert, har det en fair delaktig av grafiske verktøy (TortoiseSVN, for eksempel).

Gå for SVN.

Svarte 05/08/2008 kl. 18:33
kilden bruker

stemmer
8

Jeg har brukt RCS, CVS, SCCS, Source, Vault, perforce, omveltning, og git.

Jeg har evaluert bitkeeper, Mål, bue, basar, svk, Clearcase, PVCS, og Synergy.

Hvis jeg måtte starte et nytt depot i dag, ville jeg velge git . Hendene ned.

Det er gratis, rask, og under aktiv utvikling.

Og du kan bruke den som en klient av noen Subversiondepot som bruker git-svn.

Det bergarter.

Svarte 14/08/2008 kl. 06:21
kilden bruker

stemmer
8

For en vennlig forklaring på de fleste av de grunnleggende begreper, se A Visual Guide til versjonskontroll . Artikkelen er svært SVN-vennlig.

Svarte 05/08/2008 kl. 18:39
kilden bruker

stemmer
5

Fra min egen erfaring med det, ville jeg ikke anbefale git som en introduksjon til versjonskontroll. Jeg har brukt den for et par måneder nå, og mitt inntrykk er at det er svært kraftig og - nå som jeg har delvis fått hodet mitt rundt det - rimelig intuitiv. Imidlertid er læringskurven veldig bratt, selv om jeg har brukt versjonskontroll i mange år. Det lider også være for ekspressiv - det støtter mange forskjellige arbeidsflyter og utviklingsmodeller, men den eneste veiledning i "beste" måten å bruke det er noen få sider dypt i et Google-søk, som også gjør det vanskelig for en nykommer å plukke opp.

Når det er sagt, det er mulig at det å starte fra en blank tavle med git kan faktisk være lettere - min VCS erfaring er alle med sentralisert versjonskontroll (CVS, SVN, Perforce ...) og en del av min (pågående!) Problemer med git har vært forstå konsekvensene av den distribuerte modellen. Jeg gjorde blikk kort på andre DVCSes som Bazaar og Mercurial og de syntes å være noe mer nybegynner-vennlig.

Uansett, som andre har sagt, er Subversion trolig den enkleste måten å bli vant til versjonskontroll tankesett og få praktisk erfaring av fordelene med VCS (rollback, greiner, samarbeids utvikling, enklere kode gjennomgang, etc).

Oh, og ikke starte med CVS. Det er fortsatt i praktisk bruk, og har fordeler, men IMHO det har for mange historiske quirks og implementeringsproblemer (ikke-atominger!) For å være en god måte å lære.

Svarte 23/09/2008 kl. 09:32
kilden bruker

stemmer
5

@ superjoe30

Hva med å bruke kildekontroll på din egen datamaskin, hvis du er den eneste programmerer? Er dette god praksis? Er det relaterte tips eller triks?

Jeg finner git er faktisk lettere for dette som du ikke trenger en server eller bekymre deg skrive inn URL-er og så videre. Din versjon kontroll ting bor like i .gitkatalogen inne prosjektet ditt og du bare gå videre og bruke det.

5 andre intro (forutsatt at du har installert den)

cd myproject
git init
git add * # add all the files
git commit

Neste gang du gjør noen endringer

git add newfile1 newfile2 # if you've made any new files since last time
git commit -a

Så lenge du gjør det, har git ryggen. Hvis du rotet opp, er koden trygg i det fine git depotet. Det er kjempebra

  • Merk: Det kan hende få ting ut av git litt vanskeligere enn å få dem inn, men det er langt mer å foretrekke å ha det problemet enn å ikke ha filene i det hele tatt!
Svarte 14/08/2008 kl. 07:00
kilden bruker

stemmer
4

Også prøve ut visuell svn for serveren din hvis du ønsker å unngå enhver kommandolinje arbeid.

Svarte 06/08/2008 kl. 18:59
kilden bruker

stemmer
4

På min nåværende jobb, min forgjenger ikke bruke noen form for versjonskontroll. Det er bare fjellene i mapper i minst 3 forskjellige steder hvor han holdt alle sine prosjekter. Noen tilfeldige prosjektmappen kan forventes å finne minst ett mappenavn "-prosjektet (OLD)" og en som heter "prosjekt"

Med versjonskontroll, du aldri trenger å lage kopier av "safe" bygger. Du trenger egentlig ikke å bekymre deg om din IDE ødelegge filen du jobber med (jeg ser på deg, Realbasic 5.5) fordi er så lett å begå (Les: Save) arbeid hver dag.

Unødvendig å si, jeg har installert versjonskontroll dagen etter at jeg fant ut at det eksisterte.

Også TortoiseSVN gjør du forplikter deg til databasen så enkelt som å høyreklikke på en mappe.

Svarte 05/08/2008 kl. 19:18
kilden bruker

stemmer
4

Min stemme går til Subversion. Det er veldig kraftig, men likevel enkel å bruke, og har noen gode verktøy som TortoiseSVN .

Men som andre har sagt før meg, bare begynne å bruke det. Kildekontroll er en så viktig del av programvareutvikling prosessen. Ingen "seriøse" programvare-prosjekt bør være uten.

Svarte 05/08/2008 kl. 18:39
kilden bruker

stemmer
3

Git er bedre enn omveltning, men det er litt ut på blødning kanten.

Jeg vil si, hvis du bare komme i gang, hoppe på kanten; sette opp en gratis konto @ http://github.com

De har pedagogisk materiale på stedet for å sette opp og bruke git.

Svarte 22/08/2008 kl. 18:38
kilden bruker

stemmer
3

Hvis du er på Mac OSX, fant jeg http://www.versionsapp.com/">Versions å være en utrolig (gratis) GUI front-end til SVN.

Svarte 05/08/2008 kl. 19:01
kilden bruker

stemmer
2

Ikke vent. Plukk en, og gå med den. Alle systemer vil ha sine fordeler og ulemper. Din makt kan gå ut, datamaskinen blir stjålet, eller du har glemt å angre en stor endring, og all koden blir stekt mens du venter på å se hvem som kommer seirende.

Svarte 05/08/2008 kl. 18:35
kilden bruker

stemmer
1

Hvis du velger å gå med omveltning og du ønsker å være vert for din egen svn server, så er det en veldig hyggelig og lett vinduer basert server kalt VisualSVN server. Det skjuler kompleksiteten med å sette opp en Apache-server, du i utgangspunktet bare gå neste neste neste. Brukerkonfigurasjon håndteres med en WebUI, i stedet for en config

http://www.visualsvn.com/server/

bruker en offentlig tjener rlike bønnestengelen er trolig lettere, men noen mennesker liker å ha sine egne depoter, enten for hastighet eller sikkerhet

Svarte 23/09/2008 kl. 08:46
kilden bruker

stemmer
1

Subversion er det beste valget for deg, da Karl Seguin påpekt Flytte til et annet versjonssystemet ville ikke være et problem. også SVN har svært tabbe Lett å bruke GUI i klientsiden (TortoiseSVN).

http://www.snee.com/bobdc.blog/2007/08/getting_started_with_subversio.html http://dojo.jot.com/WikiHome/Getting%20Started%20With%20Subversion

Svarte 23/09/2008 kl. 06:50
kilden bruker

stemmer
1

Bruk TortoiseSVN (version.app hvis på mac). Bare installere og gå. Hvis du trenger et sted å være vert for ditt kode titt på http://beanstalkapp.com/

Svarte 22/08/2008 kl. 18:42
kilden bruker

stemmer
1

Det er ikke så vanskelig å bytte mellom versjonskontrollsystemer. Som andre har nevnt det viktigste er å begynne å bruke noe så snart som mulig. Fordelene med å bruke kilden kontroll over ikke å bruke kildekontroll langt oppveier differensial fordeler mellom ulike typer kildekontroll.

Husk at uansett hvilken versjon av kildekontroll du bruker vil du alltid være i stand til å gjøre et brute force konvertering til et annet system ved å legge ned filene fra din gamle systemet på disken og deretter importere disse råfiler inn i det nye systemet.

Videre blir kjent med kildekontroll grunnleggende er en veldig, veldig viktig ferdighet å ha som en programvareutvikler.

Svarte 05/08/2008 kl. 23:20
kilden bruker

stemmer
0

En viktig grunn til å bruke svn snarere enn CVS er svn støtter binære differ. Som kanskje ikke betyr noe for mange programmerere, men hvis du gjør en rekke mindre endringer i et 10 MB bilde, har en unik kopi hver gang i depotet kan tygge opp plass bemerkelsesverdig raskt.

Jeg bruker TortoiseSVN på Windows, men på Mac har gått for den kommersielle Corners klient over (nå kommersielle) Versjoner klient. Jeg fant rekke gratis Mac-klienter, inkludert RapidSVN, hadde nok smerte poeng til bug meg inn beskytningen ut ekte penger. Den sikkerhetsnett som Corners gir for å fange filene jeg glemte å legge til depot er verdt dollar til meg. Jeg bruker mye tid på å samarbeide med en amerikansk klient som er i en motsatt tidssone så har ikke råd screwups glemme å legge til filer!

Svarte 12/01/2009 kl. 12:56
kilden bruker

stemmer
0

Jeg begynte å bruke subversion etter å ha lest Wil Shipleys blogg.

Så jeg begynte å sjekke i kode, en maskin og Dreamhost konto. Så etter at jeg tilfeldigvis fjernet en funksjon og lagret prosjektet mitt jeg visste at jeg var i dyp "Dudu", men med undergraving Jeg sjekket ut den nyeste versjonen av filen, og det var som om ingenting har skjedd.

Jeg bruker versjonskontroll for alt nå. Jeg planlegger å flytte over til git fordi det er raskere, fungerer offline, tar mindre plass og oh boy er det raskere.

Svarte 02/09/2008 kl. 09:35
kilden bruker

stemmer
0

En stor spiss for å lette oppsett av en SVN-server akkurat nå er å bruke en Virtual Appliance. Det vil si, en virtuell maskin som har undergraving forhåndsinstallert og (for det meste) forhåndskonfigurert på det - ganske mye en plug & play ting. Du kan prøve her , her og her , eller bare prøv å søke på Google på "undergraving virtuelle maskinen".

Svarte 30/08/2008 kl. 16:30
kilden bruker

stemmer
0

Coding Horror har et stort innlegg om hvordan du setter opp Subversion på Windows .

Etter opplæringen, var jeg i stand til å få Subervsion og TortoiseSVN kjører lokalt, og jeg fikk den utdannelsen jeg trengte ut av det.

Såvidt Git går, er det sannsynligvis en god idé å gjøre en hands på forsøket med begge, for å forstå som passer ditt spesifikke utvikling praksis.

Svarte 25/08/2008 kl. 14:52
kilden bruker

stemmer
0

Fra personlig erfaring, vil svn være min anbefaling. Du kan også bruke en tjeneste som Beanstalk som tilbyr gratis kontoer (med grenser selvsagt, men tilstrekkelig for enhver smallish prosjekt) for å teste vannet. Men som andre har sagt, er git overlegen og er trolig verdt å se nærmere på.

Svarte 22/08/2008 kl. 18:42
kilden bruker

stemmer
0

Som nevnt mange ganger andre steder, bare gjøre det. Jeg var i stand til å komme i gang fra scratch med Subversion under Windows på kort tid ved å lese hurtigstartguide i Red Book. Når jeg pekte TortoiseSVN på depotet, jeg var i virksomhet. Det tok meg en stund å få finere peker ned, men de var små pukler å komme over.

Jeg vil foreslå å installere Subversion tjeneste i stedet for å bruke file: // URL, men det er mest personlige preferanser. For et oppbevaringssted som er lagret på din utvikling maskin, file: // fungerer fint.

Svarte 22/08/2008 kl. 18:30
kilden bruker

stemmer
0

Bare bruk TortoiseSVN, og du kan leve med uten å vite faktiske Subversionkommandoer ... Men det er ille. Heldigvis vil det alltid være en “stor mulighet” til å lære dem utenat - når uvurderlig depotet først blir ødelagt.

Ja, det skjer.

Svarte 18/08/2008 kl. 14:47
kilden bruker

stemmer
0

@ Superjoe30 Ja, absoluteley. Når du begynner å bruke versjonskontroll du aldri gå tilbake. Jeg bruker det for alt, selv min "hjem" -mappen.

@Orion Edwards Subversion krever ikke en server. Du kan få tilgang til en lokal depotet direkte (via en klient, selvfølgelig), og det er ingen server prosessen involvert.

Svarte 18/08/2008 kl. 08:17
kilden bruker

stemmer
0

Jeg ville definitivt velge SVN løpet CVS, hvis bare fordi folk som har lært kildekontroll ved hjelp av CVS, pleier å bruke " svn delete" og deretter " svn add" i stedet for " svn move". Noe som gjør det vanskeligere å finne alle de tidligere revisjoner av en bestemt fil. Og du kan alltid oppgradere til hjelp git-svn. Jeg personlig tror det er lettere å lære enn hg, men egentlig den viktigste grunnen til å bruke SVN er det i stor grad har blitt de-facto versjonskontrollsystemet av Open Source Software.

Hvis du noen gang tenkt på læring / bruke D er det nesten obligatorisk å få tilgang til tredjeparts repositories, som DSource .

Svarte 17/08/2008 kl. 01:25
kilden bruker

stemmer
0

Hvis på en windows boks en rask og skitne slution er CVSNT. Enkel å bruke bare sette den opp og fungerer veldig bra.

Jeg selv foretrekker SVN, men dette er en god en for rask bruk.

Svarte 07/08/2008 kl. 17:33
kilden bruker

stemmer
0

superjoe30 skriver :

Relatert spørsmål (kanskje svar kan redigeres for å svare på dette spørsmålet i tillegg):

Hva med å bruke kildekontroll på din egen datamaskin, hvis du er den eneste programmerer? Er >> dette god praksis? Er det relaterte tips eller triks?

Jeg bruker SVN for alle mine personlige prosjekter. Jeg startet med å kjøre svn på hjemmesiden min maskin, men etter hvert flyttet over til Dreamhost. Sine hosting-pakker som inkluderer Subversion er ganske rimelig.

Svarte 05/08/2008 kl. 18:41
kilden bruker

stemmer
0

Yup, SVN for preferanse med mindre du virkelig trenger git særlige egenskaper. SVN er vanskelig nok; Det høres ut som git er mer komplisert å leve med. Du kan få hostet svn fra folk som Beanstalk - med mindre du har i huset Linux folk, jeg vil virkelig anbefale det. Ting kan gå galt fryktelig enkelt og det er fint å ha noen andre hvis jobb det er å fikse det.

Det er en utmerket tutorial på revisjonskontroll fra Eric Sink som er verdt å lese uansett hvilket system du bruker.

Svarte 05/08/2008 kl. 18:40
kilden bruker

stemmer
0

Begynn å bruke SVN for selve arbeidet, men prøver å få tid til å fikle rundt med Git og / eller Mercurial. SVN er rimelig stabil i produksjon, men til slutt vil du møte en situasjon hvor du trenger et distribuert SCM, da du vil være riktig bevæpnet og de nye systemene vil være modne nok.

Svarte 05/08/2008 kl. 18:38
kilden bruker

stemmer
0

Da jeg bestemte meg for jeg må bruke en kode versjonssystem, så jeg rundt for noen gode tutorials på hvordan du kommer i gang, men fant ikke noe som kunne hjelpe meg.

Så jeg simplely installert SVN Server og Tortoise SVN for klienten og stupte inn i Deepend og jeg learn't hvordan du bruker den underveis.

Svarte 05/08/2008 kl. 18:36
kilden bruker

stemmer
-1

Kort svar: Subversion om du er den eneste koding det eller du er på stedet med alle du arbeider med. GIT hvis du arbeider med mennesker i ulike områder og din kode base er enorme.

Subversion er veldig, veldig enkelt å sette opp og få hjelp. Det er også fint fordi du kan gjøre relativt kompliserte ting med det også, som kroken det opp til Apache og bruke SSL eller koble den til Trac for prosjektledelse. Det er så mange verktøy tilgjengelig for Subversion at det er virkelig et godt valg.

GIT er mye mer nyttig for folk som er på store team som arbeider i et distribuert miljø. Linus T. utviklet det for Linux laget fordi han var misfornøyd med egenskapene til tradisjonelle repositories. Vel verdt å lære hvis du noen gang har tenkt å jobbe med folk på åpen kildekode-prosjekter.

Svarte 25/08/2008 kl. 14:46
kilden bruker

Cookies help us deliver our services. By using our services, you agree to our use of cookies. Learn more