Windows - Version kontrol på et 2 GB USB-drev

Indlæg af Hanne Mølgaard Plasc

Problem



Til mit skolearbejde gør jeg en masse skiftende computere (fra laboratorier til min bærbare computer til biblioteket). Jeg vil gerne sætte denne kode under en slags versionskontrol. Selvfølgelig er problemet, at jeg ikke altid kan installere ekstra software på de computere, jeg bruger. Er der nogen form for versionskontrolsystem, som jeg kan holde på et tommelfingerdrev? Jeg har et 2 GB drev til at sætte dette på, men jeg kan få en større, hvis det er nødvendigt.


De projekter, jeg gør, er ikke særlig stor.


EDIT: Dette skal arbejde under vinduer.


EDIT II: Bazaar endte med at være det, jeg valgte. Det er endnu bedre, hvis du går med TortoiseBzr.

Bedste reference


Du kan bruge Portable Python og Bazaar (Bazaar er en Python app). Jeg kan godt lide at bruge Bazaar til mine egne personlige projekter på grund af sin ekstreme enkelhed. Plus, det kan være bærbart, fordi Python kan være bærbart. Du skal bare installere dens afhængigheder i din Portable Python installation. [15] [16]

Andre referencer 1


Det gør jeg med Git. Du skal blot oprette et Git-lager i din mappe:


git-init
git add .
git commit -m "Done"


Indsæt staven, cd'en til at mappe på den (jeg har en stor ext2-fil jeg mount med -o loop), og gør:


git-clone --bare /path/to/my/dir


Så tager jeg stokken til en anden computer (hjemme osv.). Jeg kan arbejde direkte på pind eller klone igen. Gå til nogle dir på harddisken og:


git-clone /path/to/stick/repos


Når jeg er færdig med ændringer, gør jeg 'git push' tilbage til at holde fast, og når jeg er på arbejde igen, git jeg igen 'Git push' for at flytte ændringerne fra hold til arbejdscomputer. Når du har opsat dette, kan du bruge 'git pull' til kun at hente ændringerne (du behøver ikke at klone længere, bare første gang) og 'git push' for at skubbe ændringerne omvendt.


Skønheden ved dette er, at du kan se alle ændringerne med 'git log' og endda holde noget uafhængigt arbejde synkroniseret, når det ændres på begge steder i mellemtiden.


Hvis du ikke kan lide kommandolinjen, kan du bruge grafiske værktøjer som gitk og git-gui.

Andre referencer 2


Darcs er fantastisk til dette formål. [17]



  • Jeg kan ikke vogte for andre platforme,
    men i Windows er det bare en enkelt
    eksekverbar fil, som du kunne beholde
    på drevet.

  • Vigtigst er det interaktive
    kommandolinjegrind er fantastisk
    og bliver meget hurtigt intuitivt
    (Jeg savner nu interaktivt
    forpligter sig i enhver VCS, som mangler dem) - dig
    behøver ikke at huske mange kommandoer som
    en del af din normale arbejdsgang enten. Dette
    er den vigtigste grund til, at jeg bruger det over git for
    personlige projekter.



Sætte op:


darcs init
darcs add -r *
darcs record -am "Initial commit"


Oprettelse af et lager på din lab maskine:


darcs get E:path	o
epos


Kontrollerer hvad du har ændret:


darcs whatsnew      # Show all changed hunks of code
darcs whatsnew -ls  # List all modified & new files


Interaktivt oprette en ny patch fra dine ændringer:


darcs record


Interaktivt skubbe patches til depotet på drevet:


darcs push


Det er kendt for langsomt for store projekter, men jeg har aldrig haft nogen præstationsproblemer med de små til mellemstore personlige projekter, jeg har brugt det på.


Da der ikke er brug for nogen installation, kan du endda forlade drevet og bare få fat i darcs binære fra nettet - hvis jeg har glemt mit drev, trækker jeg en kopi af det lager, jeg vil arbejde på, fra spejlet jeg holder på min webspace, og opret og mail derefter patches til mig selv som filer:


darcs get http://example.com/repos/forum/
# Make changes and record patches
darcs send -o C:changes.patch

Andre referencer 3


Det bedste svar for dig er en slags DVCS (populære er Git, Mercurial, Darcs, Bazaar ...). Årsagen er, at du har en fuld kopi af hele depotet på enhver maskine, du bruger. Jeg har ikke brugt disse systemer personligt, så andre vil være bedst til at anbefale en DVCS med et lille footprint og god cross platform kompatibilitet. [18] [19] [20] [21]

Andre referencer 4


Jeg bruger git. Git repos er virkelig små og behøver ikke en dæmon. Du kan sikkert installere cygwin eller msysgit på din flashdrive. [22] [23] [24]


Rediger: Her er nogle instruktioner til installation af cygwin på et flashdrev [25]

Andre referencer 5


Bare for at tilføje en ekstra ressource Subversion on a Stick. Jeg har lige indstillet dette på min 4 GB USB-drev, ret simpelt og smertefrit. [26]


Troede jeg er nu meget fristet til at prøve Bazaar.


Opdatering: Jeg har installeret PortablePython på mit USB-drev, simpelt, men får bazaar derovre ...
Jeg gav op, en afhængighed efter den anden, og som jeg har svn arbejde.

Hvis nogen kender til en nem bærbar installatør, vil jeg være stor.

Andre referencer 6


Jeg anbefaler Fossil http://www.fossil-scm.org/[27]


omfatter



  • kommandolinje

  • dvcs

  • cross platform (og let at kompilere)

  • 'autosync' -kommandoen gør den vigtige opgave med at synkronisere til en sikkerhedskopi let.

  • backup server konfiguration er en doddle.

  • let at lære/bruge

  • meget nyttigt fællesskab

  • web ui med wiki og bugtracker inkluderet.

  • 3,5 MB, enkeltkørbar

  • en sqlite-database som lagerpladsen


Andre referencer 7


Du kan sætte subversion binærerne på der - de er kun 16ish megs, så du har også rigelig plads til nogle lagre. Du kan bruge de officielle binarier fra kommandolinjen eller pege på et grafisk værktøj (som TortoiseSVN) til databasen. Hvis du føler dig fancy, så kan du køre drevet til autorun SVNSERVE-applikationen, hvilket gør enhver computer til en letvægts-subversionsserver i det øjeblik du sætter stikket i gang. [28]


Jeg fandt nogle instruktioner til denne proces her. [29]

Andre referencer 8


Jeg bruger subversion på min tavle, de officielle binaries vil arbejde lige ud af drevet. Problemet med dette trick er, at du skal have adgang til en kommandolinje for at kunne arbejde eller kunne køre batch-filer. Selvfølgelig synkroniserer jeg filerne på min tavle til en server, som jeg betaler for. Du kan altid være vært for depotet på et skrivebord (brug filen:///protokol), hvis du ikke ønsker at få hosting plads på internettet.

Andre referencer 9


Jeg vil få lynched for at sige dette svar, men det virker under Windows: RCS. [30]


Du skal blot lave en RCS mappe i hver af mapper med din kode. Når tiden kommer til at tjekke tingene ind, ci -u $FILE. (Binære filer kræver også, at du kører rcs -i -kb $FILE inden den første checkin.)


Inde i RCS -kataloget er en flok ,v filer, som er kompatible med CVS, hvis du ønsker at 'opgradere' til den ene dag (og derfra til nogen af ​​de andre VCS-systemer er andre plakater nævnt ). :-)

Andre referencer 10


Subversion ville lidt arbejde. Se tråd [31]


Personligt foretrækker jeg at holde alt på en enkelt maskine og Remote Desktop ind i den.

Andre referencer 11


Flash-hukommelse og versionsstyring virker ikke som en god ide til mine ører. Jeg er bange for, at hukommelsen vil blive slidt ud temmelig hurtigt, især hvis du udnytter mange forskellige versionskontroloperationer, der gør mange små diskoperationer (fusionere, tilbage og tilbage osv.).


I det mindste skal du sørge for, at du sikkerhedskopierer opbevaringsstedet så ofte som muligt for mennesker, hvis drevet vil mislykkes.

Andre referencer 12


Jeg bruger GIT ifølge Milan Babuškovs svar:


(1) oprette lager og begå (på kontoret pc)


mkdir/home/yoda/project && cd/home/yoda/project


git init


git add.


git commit -m 'Done'


(2) indsæt USB-stok og lav en klon i depotet


kat/proc/partitioner


mount -t ext3/dev/sdc1/mnt/usb


git klon --bare/home/yoda/project/mnt/usb/projekt


(3) tag USB-stikket hjem og lav en klon af depot hjemme


kat/proc/partitioner


mount -t ext3/dev/sdc1/mnt/usb


git klon/mnt/usb/projekt/home/yoda/projekt


(4) push forpligter fra hjemme-pc til USB-stick


mount -t ext3/dev/sdc1/mnt/usb


cd/home/yoda/project


git push


(5) tag USB-stikket til kontoret, og tryk forpligter fra stik til kontor-pc


mount -t ext3/dev/sdc1/mnt/usb


cd/mnt/usb/projekt


git push


(6) pull forpligter fra kontor pc til USB stick


mount -t ext3/dev/sdc1/mnt/usb


cd/mnt/usb/projekt


git pull


(7) pull forpligter fra USB-stik til hjemmecomputer


mount -t ext3/dev/sdc1/mnt/usb


cd/home/yoda/project


git pull

Andre referencer 13


bitnami stack subversion det er nemt at installere.
Du kan prøve at installere så også xampp med portableapps.com og subversion.