CVS
Z UMP
d (przywrócenie z ::) |
d (dodanie i usunięcie pliku - ze strony dla edytorów) |
||
Linia 10: | Linia 10: | ||
cvs diff -r ''release'' [-r ''release-poprzedni''] ''plik'' > zmiany | cvs diff -r ''release'' [-r ''release-poprzedni''] ''plik'' > zmiany | ||
patch ''plik'' zmiany | patch ''plik'' zmiany | ||
- | Jak przywrócić plik do stanu z wczoraj? | + | Jak przywrócić plik do stanu z wczoraj? |
cvs update -p -r 1.wersjaOK ''PLIK.zepsuty.txt'' > akuku.txt | cvs update -p -r 1.wersjaOK ''PLIK.zepsuty.txt'' > akuku.txt | ||
Denerwuje mnie w windows ten wyskakujący notatnik (albo inny edytor w uniksie) | Denerwuje mnie w windows ten wyskakujący notatnik (albo inny edytor w uniksie) | ||
cvs commit -m "Dodalem troche uliczek na Ochocie" | cvs commit -m "Dodalem troche uliczek na Ochocie" | ||
- | == | + | == Dodanie nowego pliku == |
+ | Jak dodać: stwórz pusty plik (o nazwie zgodnej z [[Znaczenie_plików_w_projekcie_UMP|konwencją]]), wydaj polecenia ''cvs add nazwapliku; cvs commit nazwapliku'' (plik binarny: dodaj ''-kb''). Wrzucaj zawartość, commituj. | ||
+ | Jak usunąć: skasuj plik z dysku, wydaj polecenia ''cvs remove nazwapliku; cvs commit''. | ||
+ | Użytkownik nie może kasować katalogów. | ||
+ | |||
+ | Zmiana nazwy: żeby nie stracić historii zmian w pliku, poproś na liście ump-devel@ | ||
+ | |||
+ | == Znalezienie konkretnej zmiany == | ||
żeby znaleźć kto coś konkretnego zmienił, na przykład w Zielonej było Lilli Wenedy, a zostało Wenedy: | żeby znaleźć kto coś konkretnego zmienił, na przykład w Zielonej było Lilli Wenedy, a zostało Wenedy: | ||
- | |||
cvs annotate UMP-GorzowWlkp/src/ZIELONA_GORA.ulice.txt | grep Wenedy | cvs annotate UMP-GorzowWlkp/src/ZIELONA_GORA.ulice.txt | grep Wenedy | ||
- | |||
albo: | albo: | ||
cvs annotate UMP-GorzowWlkp/src/ZIELONA_GORA.ulice.txt | less | cvs annotate UMP-GorzowWlkp/src/ZIELONA_GORA.ulice.txt | less | ||
- | |||
i oglądamy: | i oglądamy: | ||
- | |||
1.5 (UserX 03-Jan-08): [POLYLINE] | 1.5 (UserX 03-Jan-08): [POLYLINE] | ||
1.5 (UserX 03-Jan-08): Type=0x6 | 1.5 (UserX 03-Jan-08): Type=0x6 | ||
Linia 32: | Linia 35: | ||
1.5 (UserX 03-Jan-08): DirIndicator=1 | 1.5 (UserX 03-Jan-08): DirIndicator=1 | ||
1.60 (UserX 06-Nov-09): Data0=(51.92639,15.51941),(51.92633,15.5... | 1.60 (UserX 06-Nov-09): Data0=(51.92639,15.51941),(51.92633,15.5... | ||
- | |||
więc wiadomo dzięki temu, które wersje sobie dokładniej obejrzeć. | więc wiadomo dzięki temu, które wersje sobie dokładniej obejrzeć. | ||
Linia 57: | Linia 59: | ||
znajdzie poprawki licząc od wczoraj, żeby nie szukać konkretnych numerów wersji. | znajdzie poprawki licząc od wczoraj, żeby nie szukać konkretnych numerów wersji. | ||
- | |||
Wersja z dnia 09:33, 29 paź 2013
Spis treści |
CVS - przydatne komendy
Podstawy
Sprawdzenie kto ostatnio działał
cvs history -cap UMP-Siedlce
Kto co dłubał w pliku
cvs log plik | more
Co się zmieniło w pliku w ciągu ostatnich dwóch godzin
cvs diff -D "-2 hours" plik
Co sie zmieniło w pliku od ostatniego release, cofnij poprawki zrobione miesiąc temu
cvs diff -r release [-r release-poprzedni] plik > zmiany patch plik zmiany
Jak przywrócić plik do stanu z wczoraj?
cvs update -p -r 1.wersjaOK PLIK.zepsuty.txt > akuku.txt
Denerwuje mnie w windows ten wyskakujący notatnik (albo inny edytor w uniksie)
cvs commit -m "Dodalem troche uliczek na Ochocie"
Dodanie nowego pliku
Jak dodać: stwórz pusty plik (o nazwie zgodnej z konwencją), wydaj polecenia cvs add nazwapliku; cvs commit nazwapliku (plik binarny: dodaj -kb). Wrzucaj zawartość, commituj.
Jak usunąć: skasuj plik z dysku, wydaj polecenia cvs remove nazwapliku; cvs commit. Użytkownik nie może kasować katalogów.
Zmiana nazwy: żeby nie stracić historii zmian w pliku, poproś na liście ump-devel@
Znalezienie konkretnej zmiany
żeby znaleźć kto coś konkretnego zmienił, na przykład w Zielonej było Lilli Wenedy, a zostało Wenedy:
cvs annotate UMP-GorzowWlkp/src/ZIELONA_GORA.ulice.txt | grep Wenedy
albo:
cvs annotate UMP-GorzowWlkp/src/ZIELONA_GORA.ulice.txt | less
i oglądamy:
1.5 (UserX 03-Jan-08): [POLYLINE] 1.5 (UserX 03-Jan-08): Type=0x6 1.58 (UserX 05-Nov-09): Label=Wenedy 1.5 (UserX 03-Jan-08): EndLevel=1 1.5 (UserX 03-Jan-08): DirIndicator=1 1.60 (UserX 06-Nov-09): Data0=(51.92639,15.51941),(51.92633,15.5...
więc wiadomo dzięki temu, które wersje sobie dokładniej obejrzeć.
ALE.... na przykład annotate WROCLAW.ulice.txt pokazuje tylko zmiany od 1.302 do 1.610, a wcześniejszych już nie. Nie wiem czy to błąd konfiguracji CVS-a, czy taki ficzer. Można obejrzeć starsze robiąc na przykład:
cvs annotate -D "1 year ago" WROCLAW.ulice.txt | less
wtedy można np. złapać 1.1-1.186
Wyciągnięcie źródeł z konkretnej daty
cvs checkout -D "data"
wyciągnie źródła z zadanej daty. Najlepiej zrobić to w jakimś osobnym katalogu, czyli:
mkdir /tmp/aaa cd /tmp/aaa cvs checkout -D "7 Dec 2009" UMP-JeleniaGora
analogicznie -D w innych przypadkach:
cvs diff -D yesterday PLIK
znajdzie poprawki licząc od wczoraj, żeby nie szukać konkretnych numerów wersji.
Historia zmian
Komenda 'cvs history':
cvs history -l - historia ostatnich swoich zmian cvs history -l -a - wszystkich userów
Przy czym na umpowym CVSie coś dziwnie to działa (np. pokazuje rzeczy z 2007/2008, ale także jakieś pojedyncze z 10.2009) - być może historia nie jest w pełni zbierana...
Wylistowanie zawartości katalogu, także z "martwymi" plikami
Komendy 'cvs ls', a także 'rls' i 'dir'
Najlepiej być we właściwym katalogu, bo "'ls'" listuje wg lokalnie trzymanego CVS/Entries.
cvs ls -l -d UMP-JeleniaGora/src ---- 2009-12-04 14:12:18 +0100 1.14 BOLESLAWIEC.ulice.txt ---- 2009-07-21 20:10:25 +0200 1.22 CHOJNOW.ulice.txt ---- 2009-12-08 13:27:51 +0100 1.9 CIEPLICE.ulice.txt ---- 2009-12-08 13:27:51 +0100 1.79 GLOGOW.drogi.txt ---- 2008-07-04 13:52:20 +0200 1.11 GLOGOW.granice.txt ---- 2009-12-09 21:24:50 +0100 1.5 dead GLOGOW.inne.txt ---- 2009-12-09 21:24:50 +0100 1.4 dead GLOGOW.kolej.txt ---- 2008-04-27 18:27:28 +0200 1.3 GLOGOW.miasta.txt
czyli także "martwe" wersje (pliki skasowane) oraz numerki bieżących
Przywrócenie poprzedniej wersji
(dla zaawansowanych)
Z każdej maszyny klienckiej:
cvs up -j wersja_aktualna -j wersja_poprzednia inne.drogi.txt
przywraca wersję poprzednią, którą można (poprawić i) wysłać - ale to zostawia wpis w historii w stylu: wersja A dodaje 35 linii, wersja A+n kasuje te same 35 linii.
Z poziomu serwera:
cvs -d /home/cvsroot admin -o1.2:1.3 PLIK.zczymś.txt
zostaną bez śladów usunięte wersje 2 i 3, nawet jeśli 3 jest ostatnią. Jeśli 1.2 była popsuta, w 1.3 były jakieś inne zmiany, i 1.4 to odkręcenie 1.2, to zapis wersji powinien być
-o1.2::1.4