1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
213
214
215
216
217
218
219
220
221
222
223
224
225
226
227
228
229
230
231
232
233
234
235
236
237
238
239
240
241
242
243
244
245
246
247
248
249
250
251
252
253
254
255
256
257
258
259
260
261
262
263
264
265
266
267
268
269
270
271
272
273
274
275
276
277
278
279
280
281
282
283
284
285
286
287
288
289
290
291
292
293
294
295
296
297
298
299
300
301
302
303
304
305
306
307
308
309
310
311
312
313
314
315
316
317
318
319
320
321
322
323
324
325
326
327
328
329
330
331
332
333
334
335
336
337
338
339
340
341
342
343
344
345
346
347
348
349
350
351
352
353
354
355
356
357
358
359
360
361
362
363
364
365
366
367
368
369
370
371
372
373
374
375
376
377
378
379
380
381
382
383
384
385
386
387
388
389
390
391
392
393
394
395
396
397
398
399
400
401
402
403
404
405
406
407
408
409
410
411
412
413
414
415
416
417
418
419
420
421
422
423
424
425
426
427
428
429
430
431
432
433
434
435
436
437
438
439
440
441
442
443
444
445
446
447
448
449
450
451
452
453
454
455
456
457
458
459
460
461
462
463
464
465
466
467
468
469
470
471
472
473
474
475
476
477
478
479
480
481
482
483
484
485
486
487
488
489
490
491
492
493
494
495
496
497
498
499
500
501
502
503
504
505
506
507
508
509
510
511
512
513
514
515
516
517
518
519
520
521
522
523
524
525
526
527
528
529
530
531
532
533
534
535
536
537
538
539
540
541
542
543
544
545
546
547
548
549
550
551
552
553
554
555
556
557
558
559
560
561
562
563
564
565
566
567
568
569
570
571
572
573
574
575
576
577
578
579
580
581
582
583
584
585
586
587
588
589
590
591
592
593
594
595
596
597
598
599
600
601
602
603
604
605
606
607
608
609
610
611
612
613
614
615
616
617
618
619
620
621
622
623
624
625
626
627
628
629
630
631
632
633
634
635
636
637
638
639
640
641
642
643
644
645
646
647
648
649
650
651
652
653
654
655
656
657
658
659
660
661
662
663
664
665
666
667
668
669
670
671
672
673
674
675
676
677
678
679
680
681
682
683
684
685
686
687
688
689
690
691
692
693
694
695
696
697
698
699
700
701
702
703
704
705
706
707
708
709
710
711
712
713
714
715
716
717
718
719
720
721
722
723
724
725
726
727
728
729
730
731
732
733
734
735
736
737
738
739
740
741
742
743
744
745
746
747
748
749
750
751
752
753
754
755
756
757
758
759
760
761
762
763
764
765
766
767
768
769
770
771
772
773
774
775
776
777
778
779
780
781
782
783
784
785
786
787
788
789
790
791
792
793
794
795
796
797
798
799
800
801
802
803
804
805
806
807
808
809
810
811
812
813
814
815
816
817
818
819
820
821
822
823
824
825
826
827
828
829
830
831
832
833
834
835
836
837
838
839
840
841
842
843
844
845
846
847
848
849
850
851
852
853
854
855
856
857
858
859
860
861
862
863
864
865
866
867
868
869
870
871
872
873
874
875
876
877
878
879
880
881
882
883
884
885
886
887
888
889
890
891
892
893
894
895
896
897
898
899
900
901
902
903
904
905
906
907
908
909
910
911
912
913
914
915
916
917
918
919
920
921
922
923
924
925
926
927
928
929
930
931
932
933
934
935
936
937
938
939
940
941
942
943
944
945
946
947
948
949
950
951
952
953
954
955
956
957
958
959
960
961
962
963
964
965
966
967
968
969
970
971
972
973
974
975
976
977
978
979
980
981
982
983
984
985
986
987
988
989
990
991
992
993
994
995
996
997
998
999
1000
1001
1002
1003
1004
1005
1006
1007
1008
1009
1010
1011
1012
1013
1014
1015
1016
1017
1018
1019
1020
1021
1022
1023
1024
1025
1026
1027
1028
1029
1030
1031
1032
1033
1034
1035
1036
1037
1038
1039
1040
1041
1042
1043
1044
1045
1046
1047
1048
1049
1050
1051
1052
1053
1054
1055
1056
1057
1058
1059
1060
1061
1062
1063
1064
1065
1066
1067
1068
1069
1070
1071
1072
1073
1074
1075
1076
1077
1078
1079
1080
1081
1082
1083
1084
1085
1086
1087
1088
1089
1090
1091
1092
1093
1094
1095
1096
1097
1098
1099
1100
1101
1102
1103
1104
1105
1106
1107
1108
1109
1110
1111
1112
1113
1114
1115
1116
1117
1118
1119
1120
1121
1122
1123
1124
1125
1126
1127
1128
1129
1130
1131
1132
1133
1134
1135
1136
1137
1138
1139
1140
1141
1142
1143
1144
1145
1146
1147
1148
1149
1150
1151
1152
1153
1154
1155
1156
1157
1158
1159
1160
1161
1162
1163
1164
1165
1166
1167
1168
1169
1170
1171
1172
1173
1174
1175
1176
1177
1178
1179
1180
1181
1182
1183
1184
1185
1186
1187
1188
1189
1190
1191
1192
1193
1194
1195
1196
1197
1198
1199
1200
1201
1202
1203
1204
1205
1206
1207
1208
1209
1210
1211
1212
1213
1214
1215
1216
1217
1218
1219
1220
1221
1222
1223
1224
1225
1226
1227
1228
1229
1230
1231
1232
1233
1234
1235
1236
1237
1238
1239
1240
1241
1242
1243
1244
1245
1246
1247
1248
1249
1250
1251
1252
1253
1254
1255
1256
1257
1258
1259
1260
1261
1262
1263
1264
1265
1266
1267
1268
1269
1270
1271
1272
1273
1274
1275
1276
1277
1278
1279
1280
1281
1282
1283
1284
1285
1286
1287
1288
1289
1290
1291
1292
1293
1294
1295
1296
1297
1298
1299
1300
1301
1302
1303
1304
1305
1306
1307
1308
1309
1310
1311
1312
1313
1314
1315
1316
1317
1318
1319
1320
1321
1322
1323
1324
1325
1326
1327
1328
1329
1330
1331
1332
1333
1334
1335
1336
1337
1338
1339
1340
1341
1342
1343
1344
1345
1346
1347
1348
1349
1350
1351
1352
1353
1354
1355
1356
1357
1358
1359
1360
1361
1362
1363
1364
1365
1366
1367
1368
1369
1370
1371
1372
1373
1374
1375
1376
1377
1378
1379
1380
1381
1382
1383
1384
1385
1386
1387
1388
1389
1390
1391
1392
1393
1394
1395
1396
1397
1398
1399
1400
1401
1402
1403
1404
1405
1406
1407
1408
1409
1410
1411
1412
1413
1414
1415
1416
1417
1418
1419
1420
1421
1422
1423
1424
1425
1426
1427
1428
1429
1430
1431
1432
1433
1434
1435
1436
1437
1438
1439
1440
1441
1442
1443
1444
1445
1446
1447
1448
1449
1450
1451
1452
1453
1454
1455
1456
1457
1458
1459
1460
1461
1462
1463
1464
1465
1466
1467
1468
1469
1470
1471
1472
1473
1474
1475
1476
1477
1478
1479
1480
1481
1482
1483
1484
1485
1486
1487
1488
1489
1490
1491
1492
1493
1494
1495
1496
1497
1498
1499
1500
1501
1502
1503
1504
1505
1506
1507
1508
1509
1510
1511
1512
1513
1514
1515
1516
1517
1518
1519
1520
1521
1522
1523
1524
1525
1526
1527
1528
1529
1530
1531
1532
1533
1534
1535
1536
1537
1538
1539
1540
1541
1542
1543
1544
1545
1546
1547
1548
1549
1550
1551
1552
1553
1554
1555
1556
1557
1558
1559
1560
|
<?xml version="1.0" ?>
<!DOCTYPE book PUBLIC "-//KDE//DTD DocBook XML V4.2-Based Variant V1.1//EN" "dtd/kdex.dtd" [
<!ENTITY kappname "&cervisia;">
<!ENTITY package "tdesdk">
<!ENTITY ssh "<command>ssh</command>">
<!ENTITY rsh "<command>rsh</command>">
<!ENTITY % addindex "IGNORE">
<!ENTITY % Estonian "INCLUDE"> <!-- Change language only here -->
<!ENTITY CVS "<application>CVS</application>">
]>
<book lang="&language;">
<bookinfo>
<title>&cervisia; käsiraamat</title>
<authorgroup>
<author><firstname>Bernd</firstname><surname>Gehrmann</surname> <affiliation><address><email>bernd@mail.berlios.de</email></address></affiliation>
</author>
<author><firstname>Carlos</firstname><surname>Woelz</surname> <affiliation><address><email>carloswoelz@imap-mail.com</email></address></affiliation>
</author>
<othercredit role="translator"><firstname>Marek</firstname><surname>Laane</surname><affiliation><address><email>bald@starman.ee</email></address></affiliation><contrib>Tõlge eesti keelde</contrib></othercredit>
</authorgroup>
<copyright>
<year>1999</year>
<year>2000</year>
<year>2001</year>
<year>2002</year>
<holder>Bernd Gehrmann</holder>
</copyright>
<copyright>
<year>2004</year>
<holder>Carlos Woelz</holder>
</copyright>
<legalnotice>&FDLNotice;</legalnotice>
<date>2004-06-06</date>
<releaseinfo>2.01.90</releaseinfo>
<abstract>
<para>&cervisia; on &CVS;i graafiline kasutajaliides.</para>
</abstract>
<keywordset>
<keyword>KDE</keyword>
<keyword>tdesdk</keyword>
<keyword>Cervisia</keyword>
<keyword>CVS</keyword>
<keyword>versioonide kontroll</keyword>
<keyword>versiooni kontroll</keyword>
</keywordset>
</bookinfo>
<chapter id="introduction">
<title>Sissejuhatus</title>
<para><ulink url="http://www.kde.org/apps/cervisia/">&cervisia;</ulink> on kasutajasõbralik versioonikontrolli süsteemi kasutajaliides. Selle eesmärk on toetada &CVS;-i ja muid versioonikontrolli süsteemi programme ühtse liidesena, mis võimaldab lahendada konflikte, vaadata erinevusi ja ajalugu, näha töös olevate failide staatust ja üldse kasutada enamikku võimalusi, mida versioonikontrolli süsteemid pakuvad. &cervisia; on võimalik paigaldada kas ise moodulist tdesdk või siis kasutada sinu distributsiooni pakutavat tarkvarapaketti tdesdk. Praegu on süsteemidest toetatud ainult &CVS;, kuid tulevikus on võimalik ka teiste süsteemide tugi. </para>
<para>Versioonikontrolli süsteem pakub võimalust salvestada, hallata ja levitada failide erinevaid versioone. &CVS; on üks selliseid süsteeme. See lubab tehtud muudatusi hõlpsasti teistega jagada, sest iga autor võib oma versiooniga töötada kartmata, et ta kirjutab nii üle teiste muudatused või vastupidi. See süstem lubab taastada varasemaid versioone (mis tuleb kasuks vigade otsimisel), luua harusid (näiteks arendusversiooniga töötamiseks või valmisvariandi väljalaskmiseks) ja veel palju muud. </para>
<para>Peamine <firstterm>hoidla</firstterm> sisaldab tavaliselt mõnda koostööprojekti (olgu siis kommertsprojekt või mitte), kuid &CVS; võimaldab paindlikult ennast ära kasutada ka vaid sinu enda huvides arendatava projekti tarbeks. Väga lihtne on luua kohalik hoidla, kus võid silma peal hoida vigu tekitanud muudatustel, neid tühistada, vältida juhuslikku infokadu &etc; </para>
<para>Kui hoidlas asuvad projektifailid, siis iga autor võib endal hoida oma kohalikku koopiat, mis kannabki nime <firstterm>kohalik koopia</firstterm> või ka <firstterm>liivakast</firstterm>. Samas saab igaüks kanda oma muudatused peahoidlasse (see tegevus kannab nimetust "sissekandmine") ja/või uuendada enda koopiat, et see kajastaks teiste arendajate tehtud muudatusi. </para>
</chapter>
<chapter id="getting-started">
<title>Alustamine</title>
<sect1 id="accessing-repository">
<title>Hoidla kasutamine</title>
<para>Selles osas selgitame, kuidas kasutada &cervisia; pakutavaid võimalusi kõige elementaarsemate versioonikontrolli süsteemi võtete jaoks ehk siis moodulite väljavõtmiseks hoidlast ja nendega töötamiseks. Selleks peab sul olema hoidlale ligipääs kliendina, mis tähendab, et keegi (arvatavasti &CVS; hoidla administraator) on sulle eraldanud serveril konto. Teine võimalus on muidugi luua vähese vaevaga oma projekti arendamiseks kohalik hoidla. </para>
<tip><para>Kui kavatsed hakata arendama mõnda suuremat ja keerulisemat projekti, on mõttekas kasutada ära &CVS;-i võimalusi isegi siis, kui oled projekti ainuarendaja. Nii saad teha kohalikku koopiasse kõik vajalikud muudatused ja kasutada &cervisia;t (või ka muid &CVS;-i vahendeid) selle uuendamiseks ja sissekandmiseks. Sel moel saad hoida silma peal vigu põhjustanud muudatustel, neid tühistada, vältida juhuslikku infokadu jne. &cervisia; kasutamisel on kohaliku hoidla loomine äärmiselt lihtne. </para>
<procedure>
<title>Kohaliku hoidla loomine</title>
<step><para>Ava dialoog <guilabel>Uue hoidla loomine (cvs init)</guilabel> menüükäsuga <menuchoice><guimenu> Hoidla</guimenu> <guimenuitem>Loo...</guimenuitem></menuchoice>. </para></step>
<step><para>Klõpsa nupule <guilabel>...</guilabel> ja vali kataloog, kuhu soovid hoidla luua, või sisesta selle asukoht tekstikasti. Kui näiteks soovid hoidla luua kataloogi <filename>/home/user</filename> ja anda sellele nimeks <filename>cvsroot</filename>, tuleb tekstikasti kirjutada <filename>/home/user/cvsroot</filename> või valida failivalijat kasutades kataloog <filename>/home/user</filename> ning lisada <filename>cvsroot</filename>. </para></step>
<step><para>Kui oled valmis, klõpsa nuppu <guibutton>OK</guibutton>. &cervisia; loob nüüd ja initsialiseerib uue hoidla kataloogi. </para></step>
<step><para>Seejärel võid importida hoidlasse oma senise töö või luua hoidlas kataloog, kus kogu uut moodulit algusest peale arendama hakata. </para></step>
</procedure>
</tip>
<para>&cervisia; võimadab dialoogiga <guilabel>Hoidlate seadistamine</guilabel> hallata kõiki hoidlate asukohti. Dialoogi saab avada menüükäsuga <menuchoice><guimenu>Hoidla</guimenu> <guimenuitem>Hoidlad...</guimenuitem></menuchoice>. </para>
<figure id="screenshot-repositories" float="1">
<title>&cervisia; hoidlate seadistamise dialoog</title>
<mediaobject>
<imageobject><imagedata format="PNG" fileref="repositories.png"/></imageobject>
<textobject><phrase>&cervisia; hoidlate seadistamise dialoog</phrase></textobject>
</mediaobject>
</figure>
<para>CVS-i hoidlat saab kasutada mitme meetodiga: ligipääsu võib tagada parooliga autentimine (:pserver:), turvashell (kasutades :ext:), kohalik hoidla (:kohalik:) &etc; Hoidla asukoha vorming on järgmine (lisavõimalused on toodud ära nurksulgudes): </para>
<para>
<filename>[:meetod:][[kasutaja][:parool]@]masinanimi[:[port]]/hoidla/asukoht</filename>
</para>
<para>Hoidlale ligipääsuks pole sugugi alati vaja anda kõiki neid elemente (kasutajanime, parooli, masinanime, porti). Nõutav info sõltub kasutatavast ligipääsumeetodist, mille võib kokku võtta nii: </para>
<variablelist>
<varlistentry>
<term>Kohalik</term>
<listitem>
<para>Kohalik ligipääs on &CVS;-i vaikemeetod. Seepärast ei ole meetodi :local: lisamine hoidla asukohale vajalikki: sisestada võib ka lihtsalt kataloogi asukoha, kus &CVS;-i hoidla asub ja millele arvuti ligi pääseb, kujul <filename class="directory">/hoidla/asukoht</filename> või kui tuua näide elust enesest, siis <filename class="directory">/home/cvs</filename>.</para>
<para>Füüsiliselt võib see asuda ka <acronym>NFS</acronym>-i vahendusel ühendatud kettal, kuid antud juhul on see ebaoluline. Kui oled loonud kohaliku hoidla, on asukoht lihtsalt tee, mida mööda sellele ligi pääseb. </para>
</listitem>
</varlistentry>
<varlistentry id="rsh">
<term>rsh</term>
<listitem>
<para>Hoidla asukohaks võib olla näiteks <filename>:ext:kasutajanimi@masin.url.org:/hoidla/asukoht</filename> </para>
<para>See meetod nõuab, et sul oleks konto serveris (antud juhul siis <systemitem class="systemname">masin.url.org</systemitem>) ja et sa kasutaksid suhtlemiseks kaugshelli. Vaikimisi pruugib &CVS; ↱-d, kuid ↱ on juba ammu tunnistatud ebaturvaliseks ja selle asemele on üldjuhul astunud &ssh;. </para>
<para>Kui kasutad &ssh;-d, pead keskkonnamuutja <envar>CVS_RSH</envar> määrama <command>cvs</command> klienti kasutades &ssh;-le. &cervisia; toetab seda võimalust. </para>
<!-- TODO: verify if the above still apply -->
<para>Arvesta, et &cervisia; ei suuda vastata serveri võimalikule paroolinõudele. Kontrolli, et sisselogimine toimiks ilma parooli nõudmata. Puhta ↱ korral saab seda näiteks teha usaldusväärsete masinate nimekirjaga faili <filename>.rhosts</filename> sinu kodukataloogis luues (vaata täpsemat infot ↱ manuaalileheküljelt). </para>
<para>&ssh; korral tuleb selleks kopeerida serverile oma avalik võti <filename>identity.pub</filename> (see asub kataloogis <filename>$<envar>HOME</envar>/.ssh/</filename>). Sellisel juhul ei tohi võti olla krüptitud paroolifraasiga (vaata täpsemat infot &ssh; manuaalileheküljelt ja &CVS;/<acronym>SSH</acronym> <acronym>KKK</acronym>-st SourceForge'is). Kui sa ei ole päris kindel, küsi nõu oma süsteemiadministraatorilt. </para>
</listitem>
</varlistentry>
<varlistentry>
<term>pserver</term>
<listitem>
<para>Hoidla asukohaks võib olla näiteks <filename>:pserver:kasutajanimi@masin.url.org:/hoidla/asukoht</filename> </para>
<para>See meetod võtab serveriga ühendust erilise suhteliselt nõrga autentimisega protokolli vahendusel (<literal>pserver</literal> tähendabki parooliga autentimist). Enne sellise serveri kasutamist peab sul olema &CVS;-serveri administraatori antud kasutajanimi ja parool ning sa pead end sellele sisse logima. Pane tähele, et sinu &CVS;-serveri autentimisel kasutatav nimi ei pruugi olla sama, mida kasutad enda süsteemi sisselogimisel. Enne &CVS;-serveri kasutamist tuleb sul end sisse logida. </para>
<para>Vaba tarkvara projektid pakuvad enamasti võimalust ka lähtekoodile ligi pääseda anonüümset CVS-i kasutades. See tähendab, et sul on võimalik ka uusim lähtekood hõlpsasti hankida, seda muuta ning luua ilma CVS-i kontot loomata paigad (erinevused) hoidlas asuvate versioonide suhtes. Reeglina kasutab anonüümne CVS parooliga autentimist (:pserver:) ning on ainult lugemisõigusega, lubamata sul muudatusi vahetult hoidlasse sisse kanda. </para>
</listitem>
</varlistentry>
</variablelist>
<para>Hoidla ligipääsumeetodi ja asukoha määramine järel saab selle lisada &cervisia; hoidlate loendisse: </para>
<procedure>
<title>Uue hoidla lisamine</title>
<step><para>Ava dialoog <guilabel>Hoidlate seadistamine</guilabel> menüükäsuga <menuchoice><guimenu>Hoidla</guimenu> <guimenuitem>Hoidlad...</guimenuitem></menuchoice> </para></step>
<step><para>Klõpsa nupule <guilabel>Lisa...</guilabel>, mis avab dialoogi <guilabel>Hoidla lisamine</guilabel>. </para></step>
<step><para>Kirjuta hoidla asukoht tekstikasti <guilabel>Hoidla:</guilabel>. &cervisia; lülitab automaatselt välja dialoogi need osad, mida valitud ligipääsumeetodi korral nagunii kasutada ei saa. </para></step>
<step><para>Kui kasutad hoidlale ligipääsemisel ext-meetodit, anna tekstikastis <guilabel>Kasutatakse kaugshelli</guilabel> kaugshelli nimi, mida soovid pruukida (⪚ &ssh;). </para></step>
<step><para>Klõpsa nupule <guibutton>OK</guibutton> ja näedki äsja sisestatud hoidlat hoidlate loendis. </para></step>
<step><para>Kui sisestatud hoidla kasutamiseks on vaja parooliga autentimist (pserver), tuleb sul enne serveriga ühendumist end sisse logida. Klõpsa loendis hoidlanimel, et see valida, ning siis nupul <guilabel>Logi sisse...</guilabel> Sisesta parool ilmuvasse dialoogi. </para>
<para>Kui oled parooli edukalt sisestanud, ilmub pserveri hoidla veerus <guilabel>Olek</guilabel> kirje <guilabel>Pole sisse logitud</guilabel> asemele <guilabel>Sisse logitud</guilabel>. </para></step>
<step><para>Klõpsa muudatuste rakendamiseks nupule <guibutton>OK</guibutton> või kui tahad, jätka hoidlate asukohtade lisamist. &cervisia; suudab salvestada just nii palju asukohti, kui sa talle ette annad. </para></step>
</procedure>
</sect1>
<sect1 id="importing">
<title>Mooduli import hoidlasse</title>
<para>Selles osas vaatame, kuidas uut projekti &CVS; hoidlasse lülitada. Kui soovid kõigest töötada olemasoleva projektiga, mis juba on hoidlas, võid selle osa vahele jätta. </para>
<para>Projekti saab &CVS;-i lülitada kahel viisil: </para>
<itemizedlist>
<listitem><para>Importides failid ja kataloogid &cervisia; importimisdialoogi abil uude <firstterm>moodul</firstterm>isse. Moodulid on &CVS;-i hoidla kataloogipuu tipptaseme kataloogid, millega eristatakse ja korrastatakse erinevaid hoidlas asuvaid tarkvaraprojekte. </para></listitem>
<listitem><para>Luues tühja mooduli ja lisades sinna käsitsi uued failid ja kataloogid. See tagab sulle suurema kontrolli, võtab aga usutavasti märksa enam aega. </para></listitem>
</itemizedlist>
<important>
<para>Arvesta, et &CVS; on algselt loodud tekstifailide tarbeks. Paljud võimalused, näiteks versioonide liitmine, erinevuste näitamine loetaval kujul jne., on kasutatavad ainult tekstifailide puhul. See ei tähenda küll, et CVS-i ei saa kasutada ka binaarfailide jaoks, küll aga seda, et sul tuleb <emphasis>anda CVS-ile täpselt teada, kas tegu on teksti- või binaarfailiga</emphasis>. Kui määrad vale failitüübi, saad peagi aru, et &CVS; ei käitu nendega õigesti ning lõpuks võivad su andmed tugevasti viga saada. </para>
</important>
<para>Projekti importimisel (uue moodulina) on teatud eelised: võimalik on importida kõik failid ja kataloogid rekusiivselt ning moodul ise luuakse automaatselt. Nii on ka suurte projektide import hoidlasse üpris hõlpus. Kuid siin on ka mõningad puudujäägid: &cervisia; importimisdialoogi ei saa kasutada failide lisamiseks olemasolevatesse moodulitesse ning faile saab importida kas teksti- või binaarfailidena. Sellest piirangust saab küll mööda hiilida, kui luua kataloog ainult üht tüüpi failidele või anda ette failimustrid, mida importimisel ignoreerida. </para>
<para>Oletame näiteks, et sinu projektis on ainult tekstifailid ja mõned PNG pildid (need on siis binaarfailid). Sa võid lasta &CVS;-il ignoreerida kõik faile mustriga <filename class="extension">*.png</filename>, kui impordid ülejäänud failid tekstifailidena, või siis liigutada pildid omaette kataloogi ja importida seejärel ülejäänud failid (tekstifailidena). Nii või teisiti tuleb sul äsja imporditud moodulist kohaliku koopia jaoks <link linkend="checkingout">väljavõte teha</link>, kopeerida sellesse puuduvad failid ja kataloogid ning need hoidlasse <link linkend="addingfiles">lisada</link> ja <link linkend="committingfiles">sisse kanda</link>. Alles siis on import tegelikult läbi saanud. </para>
<para>Seepärast on teine võimalus lisada failid ja kataloogid käsitsi, luues neile eelnevalt tühja mooduli. Tühja mooduli lisamiseks hoidlasse loo lihtsalt uus kataloog &CVS;-hoidla juurkataloogis. Uue kataloogi nimi on ühtlasi mooduli nimi. Tee uuest moodulist <link linkend="checkingout">väljavõte</link>. Seejärel kopeeri failid ja kataloogid kohalikku koopiasse ning <link linkend="addingfiles">lisa</link> ja <link linkend="committingfiles">kanna sisse</link> &CVS;-hoidlasse saatmiseks. </para>
<figure id="screenshot-import" float="1">
<title>&cervisia; importimisdialoog</title>
<mediaobject>
<imageobject><imagedata format="PNG" fileref="import.png"/></imageobject>
<textobject><phrase>&cervisia; importimisdialoog</phrase></textobject>
</mediaobject>
</figure>
<para><xref linkend="screenshot-import"/> näitab dialoogi, mis aitab <emphasis>importida</emphasis> projekti moodulina. &cervisia; importimisdialoogi avamiseks vali menüükäsk <menuchoice><guimenu>Hoidla</guimenu> <guimenuitem>Impordi...</guimenuitem></menuchoice> </para>
<variablelist>
<varlistentry>
<term><guilabel>Hoidla:</guilabel> <xref linkend="co-repository"/></term>
<listitem><para>&CVS; hoidla nimi, tuntud ka kui $<envar>CVSROOT</envar>. Sul peab olema selles kirjutamisõigus ja hoidla peab olema korrektselt initsialiseeritud. Kui hoidlat ei ole veel olemas, loo see menüükäsuga <menuchoice> <guimenu>Hoidla</guimenu> <guimenuitem>Loo...</guimenuitem> </menuchoice> </para>
<para>Rippmenüüga kastis on näha kõik hoidlad, mille oled varem loendisse sisestanud dialoogiga <guilabel>Hoidlate seadistamine</guilabel>. Kui tegemist on kaughoidlaga, kontrolli, et autentimine töötaks, täpsemat infot annab <xref linkend="accessing-repository"/>. </para></listitem>
</varlistentry>
<varlistentry>
<term><guilabel>Moodul:</guilabel> <xref linkend="co-module"/></term>
<listitem><para>Mooduli nimi, millega projekt salvestatakse. Pärast importimist saab projektist just selle nimega väljavõtteid teha. Täpsemat infot annab <xref linkend="checkingout"/>. See on ka vastava kataloogi nimi hoidlas. </para></listitem>
</varlistentry>
<varlistentry>
<term><guilabel>Töökataloog:</guilabel></term>
<listitem><para>See on imporditava projekti ülemkataloog. Import algab sellest kataloogist ning edeneb rekursiivselt allapoole. </para></listitem>
</varlistentry>
<varlistentry>
<term><guilabel>Tootja silt:</guilabel> <xref linkend="co-vendortag"/></term>
<listitem><para>Tootja silti kasutatakse traditsiooniliselt allikate jälgimiseks. Kui sul mingit paremat mõtet ei ole, anna siin oma kasutajanimi. Õigupoolest pole eriti tähtis, mida siin sisestad. </para></listitem>
</varlistentry>
<varlistentry>
<term><guilabel>Väljalaske silt:</guilabel> <xref linkend="co-releasetag"/></term>
<listitem><para>Ka seda silti on traditsiooniliselt kasutatud tarkvara erinevate versioonide importimisel. Kui sa sellega ei tegele, kasuta sõna <literal>start</literal> või stringi <literal>SUVA_1_0</literal>, kus <literal>SUVA</literal> on projekti nimi ja <literal>1.0</literal> imporditava väljalaske versiooni number. </para></listitem>
</varlistentry>
<varlistentry>
<term><guilabel>Eiratakse faile:</guilabel></term>
<listitem><para>Selle välja täitmisel antakse käsule <command>cvs import</command> täiendavalt võti <option>-I <replaceable>failinimed</replaceable></option>. Seda kirjet tõlgendatakse tühikutega eraldatud nimekirjana, kus seisavad failide nimed, mida tuleb ignoreerida. Üldiselt on mõttekam ja veakindlam viis kontrollida, millised failid hoidlasse lähevad, luua kataloog ainult nende failidega, mida soovid importida, ja siis sellest kataloogist alustadagi. Siiski võib see võti olla kasulik, kui projektis leidub faile, mida &CVS; vaikimisi eirab, nt. failid nimetusega <filename>core</filename>. Sellisel juhul kirjuta väljale ainult märk <literal>!</literal>. See tühistab &CVS;i eiratavate failide skeemi, täpsemalt vaata <xref linkend="ignoredfiles"/>. </para></listitem>
</varlistentry>
<varlistentry>
<term><guilabel>Kommentaar:</guilabel> <xref linkend="co-comment"/></term>
<listitem><para>Sellele väljale saab kirjutada kommentaarid, mis sul on imporditavate failide päritolu, kasutamise, arendamise &etc; kohta. </para></listitem>
</varlistentry>
<varlistentry>
<term><guilabel>Imporditakse binaarfailidena</guilabel></term>
<listitem><para>Selle märkimisel imporditakse kõik failid binaarkujul, st. käsule <command>cvs import</command> lisatakse võti <option>-kb</option>. </para></listitem>
</varlistentry>
<varlistentry>
<term><guilabel>Faili muutmise aega kasutatakse importimisajana</guilabel></term>
<listitem><para>Selle märkimisel märgitakse importimise ajaks failide muutmise aeg, mitte aga importimise aeg ise. </para></listitem>
</varlistentry>
</variablelist>
<para>Kui oled väljad täitnud ja klõpsanud nuppu <guibutton>OK</guibutton>, antakse järgmine &CVS; käsk:</para>
<screen><command>cvs</command> -d <co id="co-repository"></co><replaceable>hoidla</replaceable> import -m "<co id="co-comment"></co>" <co id="co-module"></co><replaceable>moodul</replaceable> <co id="co-vendortag"></co><replaceable>tootja_silt</replaceable> <co id="co-releasetag"></co><replaceable>väljalaske_silt</replaceable></screen>
</sect1>
<sect1 id="checkingout">
<title>Mooduli väljavõtte tegemine hoidlast</title>
<para>Nüüd, kui oled edukalt määranud hoidla asukoha ja esimesed failid hoidlasse importinud, on aeg &CVS;-hoidla moodulist väljavõte teha ning enda kohalik koopia luua. </para>
<para>Selleks võib olla vajalik teada ka, milline on õige <firstterm>haru</firstterm> või <firstterm>silt</firstterm> </para>
<para>Mooduli harud on selle paralleelsed versioonid. Heaks näiteks nende praktilise kasutamise kohta on tarkvaraprojektide väljalasked. Pärast väljalaset on kahtlemata lähtekoodis vigu, mis ootavad parandamist, kuid samas soovib keegi kindlasti ka mõne hoopis uue võimaluse lisada. Mõlemat korraga on reeglina päris raske saavutada, sest uued võimalused toovad enamasti kaasa uusi vigu ning seeläbi muutub vanade vigade jälgimine keerukamaks. Selle dilemma lahendamiseks lubab &CVS; luua paralleelse versiooni, mida me nimetame "stabiilseks väljalaskeharuks" ja milles parandatakse ainult vigu, samal ajal kui peaharu (HEAD) on avatud ka uute võimaluste lisamisele. </para>
<para>Silte kasutatakse projekti versiooni märkimiseks. &CVS; tähistab iga faili teatud versiooni sildiga, nii et kui teed väljavõtte või uuendad vastavalt konkreetsele sildile, saad alati ühe ja sama failiversiooni. Seepärast ei ole erinevalt harust sildid dünaamilised: sildiga tähistatud faile ei saa õigupoolest arendada. Sildid on kasulikud näiteks väljalaske tähistamiseks, suurte muudatuste puhul lähtetekstis &etc; Siltide abil saab projekti hõlpsasti pöörata tagasi mingisse varasemasse olekusse, et vigu tuvastada, lähtekoodi uuesti genereerida &etc; </para>
<figure id="screenshot-checkout" float="1">
<title>&cervisia; väljavõtte tegemise dialoog</title>
<mediaobject>
<imageobject><imagedata format="PNG" fileref="checkout.png"/></imageobject>
<textobject><phrase>&cervisia; väljavõtte tegemise dialoog</phrase></textobject>
</mediaobject>
</figure>
<variablelist>
<varlistentry>
<term><guilabel>Hoidla:</guilabel></term>
<listitem><para>&CVS; hoidla nimi, tuntud ka kui <filename><envar>$CVSROOT</envar></filename>. Rippmenüüga kastis on näha kõik hoidlad, mille oled varem loendisse sisestanud dialoogiga <guilabel>Hoidlate seadistamine</guilabel>. Kui tegemist on kaughoidlaga, kontrolli, et autentimine töötaks, täpsemat infot annab <xref linkend="accessing-repository"/>. </para></listitem>
</varlistentry>
<varlistentry>
<term><guilabel>Moodul:</guilabel></term>
<listitem><para>Moodul, millest soovid väljavõtte teha. Kui töötad olemasoleva hoidlaga, saad nime arvatavasti süsteemiadministraatorilt või kui tegemist on vaba tarkvara hoidlaga, siis projekti veebileheküljelt. Kui soovid luua uue mooduli nullist peale kohalikku hoidlat kasutades, loo lihtsalt uus kataloog kohaliku hoidla juurkataloogis. Kataloogi nimi on sama, mis tühjal moodulil. </para>
<para>Kui hoidlal on aga olemas fail <filename><envar>$CVSROOT</envar>/modules</filename>, saab olemasolevate moodulite nimekirja tõmmata klõpsuga nupul <guibutton>Laadi nimekiri</guibutton>. </para>
<para>Pane tähele, et väljavõtte saab teha ka mooduli mis tahes olemasolevast alamkataloogist ilma ülejäänud moodulit kaasamata. Selleks anna lihtsalt alamkataloogi asukoht. Kui soovid näiteks teha moodulis tdesdk ainult alamkataloogi <filename class="directory">doc/cervisia</filename> väljavõtte, kirjutagi sellele väljale <filename class="directory">tdesdk/doc/cervisia</filename>. </para></listitem>
</varlistentry>
<varlistentry>
<term><guilabel>Haru silt:</guilabel></term>
<listitem><para>Haru või sildi nimi, mille väljavõtte soovid teha. Kui jätad selle välja tühjaks, teeb &cervisia; väljavõtte peaharust (HEAD). </para></listitem>
</varlistentry>
<varlistentry>
<term><guilabel>Töökataloog:</guilabel></term>
<listitem><para>Kataloog, kuhu mooduli väljavõte salvestatakse. Arvesta, et töövariandi ülemkataloog luuakse alati siin antud kataloogi töövariandiga sama nime kandva alamkataloogina, kui sa ei ole just andnud alternatiivset nime väljal <guilabel>Väljavõtte tegemine kui:</guilabel>. </para></listitem>
</varlistentry>
<varlistentry>
<term><guilabel>Väljavõtte tegemine kui:</guilabel></term>
<listitem><para>Alternatiivne kataloog, kuhu väljavõte teha. Selle tulemusena saab väljavõetavad failid paigutada aktiivses töökataloogis mingi muu nimega kataloogi kui mooduli nimele vastav kataloog. </para></listitem>
</varlistentry>
<varlistentry>
<term><guilabel>Ainult eksport</guilabel></term>
<listitem><para>Selle märkimisel failid eksporditakse, mitte aga ei tehta väljavõtet. Eksportimisel tõmmatakse mooduli koopia ilma CVS-i haldamise kataloogideta. Eksport võib olla mõttekas näiteks lähtekoodi väljalaske ettevalmistamisel. </para></listitem>
</varlistentry>
</variablelist>
</sect1>
<sect1 id="mainscreen">
<title>Peaaken, faili olek ja uuendamine</title>
<para>&cervisia; käivitamisel ja kohaliku koopia avamisel menüükäsuga <menuchoice> <guimenu>Fail</guimenu> <guimenuitem>Ava liivakast...</guimenuitem> </menuchoice> võid näha &cervisia; peaaknas kaht põhiosa: üleval asub avatud kohaliku koopia hierarhiline puuvaade, all näidatakse &CVS; käske, mida &cervisia; annab sinu sooritatud ülesannete täitmiseks, samuti nende käskude väljundit. </para>
<para>Vaikimisi ei näita &cervisia; alamkataloogides leiduvaid faile ning sul tuleb klõpsata kataloogidel, mille sisu soovid näha. Kohaliku koopia kõigi failide nägemiseks kasuta menüükäsku <menuchoice> <guimenu>Vaade</guimenu> <guimenuitem>Rulli failipuu lahti</guimenuitem> </menuchoice>. Kui soovid nüüd jälle taastada algseisu, vali menüükäsk <menuchoice> <guimenu>Vaade</guimenu> <guimenuitem>Rulli failipuu kokku</guimenuitem> </menuchoice>. </para>
<para>Vastavalt failide <filename>.cvsignore</filename> seadistustele ei ole näha faile, mida tavaliselt ei soovita hoidlas näha, nt. objektifaile. Iga faili korral on näha selle olek. Vaikimisi on see "Tundmatu", sest &cervisia; ei hangi infot enne, kui oled valinud menüükäsu <menuchoice> <guimenu>Fail</guimenu> <guimenuitem>Värskenda</guimenuitem> </menuchoice> või <menuchoice> <guimenu>Fail</guimenu> <guimenuitem>Olek</guimenuitem> </menuchoice>. Sellisel moel on sul võimalik üht-teist ära teha isegi juhul, kui puudub püsiühendus &CVS; serveriga. </para>
<figure id="screenshot-mainview" float="1">
<title>&cervisia; peaaken</title>
<mediaobject>
<imageobject><imagedata format="PNG" fileref="mainview.png"/></imageobject>
<textobject><phrase>&cervisia; peaaken</phrase></textobject>
</mediaobject>
</figure>
<para>Käsud menüüs Fail rakenduvad üldiselt ainult failidele, mis on parajasti ära märgitud. Märkida saab ka katalooge. Vali seejärel <menuchoice> <guimenu>Fail</guimenu> <guimenuitem>Olek</guimenuitem> </menuchoice> või vajuta klahvi <keycap>F5</keycap>. &cervisia; annab siis korralduse </para>
<para>
<screen><command>cvs update -n <replaceable>failinimed</replaceable></command></screen>
</para>
<para>märgitud failide olekuinfo hankimiseks. Arvesta, et &cervisia; liigub rekursiivselt alamkataloogidesse ainult juhul, kui vastav võimalus menüüs <guimenu>Seadistused</guimenu> on sisse lülitatud. Vastavalt faili staatusele on veerus <guilabel>Olek</guilabel> näha järgmised märked: </para>
<variablelist>
<varlistentry>
<term><guilabel>Lokaalselt muudetud</guilabel></term>
<listitem><para>See tähendab, et faili on muudetud võrreldes hoidlas oleva versiooniga. </para></listitem>
</varlistentry>
<varlistentry>
<term><guilabel>Lokaalselt lisatud</guilabel></term>
<listitem><para>See tähendab, et faili ei ole hoidlas, küll aga sinu töökataloogis ja et see on märgitud imporditavaks. Hoidlasse jõuab see siiski alles pärast sinna sissekande tegemist. </para></listitem>
</varlistentry>
<varlistentry>
<term><guilabel>Lokaalselt eemaldatud</guilabel></term>
<listitem><para>See tähendab, et oled märkinud faili eemaldatavaks, kuid see on hoidlas siiski veel alles. Hoidlast eemaldatakse see alles pärast sinna sissekande tegemist. </para></listitem>
</varlistentry>
<varlistentry>
<term><guilabel>Vajab värskendamist </guilabel></term>
<listitem><para>Seda näeb siis, kui hoidlas on olemas uuem versioon, nt. kui keegi on sellesse mingi muudatuse teinud. Tavaliselt valitseb sinus kange kihu seda faili uuendada, et oma töökataloog ajakohasena hoida. </para></listitem>
</varlistentry>
<varlistentry>
<term><guilabel>Vajab paikamist</guilabel></term>
<listitem><para>Sisuliselt on see sama, mis eelmine. Erinevuseks on see, et uuendamise korral saadab &CVS; server kogu faili asemel ainult paiga. </para></listitem>
</varlistentry>
<varlistentry>
<term><guilabel>Vajab ühendamist</guilabel></term>
<listitem><para>See annab märku, et vajalik on antud faili töökataloogis eksisteeriva versiooni ühendamine hoidlas oleva versiooniga. See juhtub tavaliselt siis, kui oled faili muutnud ning samal ajal on seda teinud ka keegi teine. Kui valid uuendamise, liidetakse hoidlas olevad muutused sinu faili. Konflikti korral (s.t. kui keegi on muutnud mõnda rida, mida sinagi oled muutnud, aga teisiti) saab uueks olekuks "Konflikt". </para></listitem>
</varlistentry>
<varlistentry>
<term><guilabel>Värske</guilabel></term>
<listitem><para>Näitab, et fail on samane hoidlas oleva versiooniga. </para></listitem>
</varlistentry>
<varlistentry>
<term><guilabel>Konflikt</guilabel></term>
<listitem><para>Seda näidatakse siis, kui failis leidub konfliktimärgiseid. See võib juhtuda näiteks siis, kui oled faili varem värskendanud, kuid konfliktid lahendamata jätnud. </para></listitem>
</varlistentry>
<varlistentry>
<term><guilabel>Pole CVSis</guilabel></term>
<listitem><para>Näitab, et faili ei ole registreeritud &CVS;-hoidlas. Kui soovid, et see oleks kättesaadav ka teistele, tuleb see hoidlasse lisada. Kui aga mitte, võiksid selle nime lisada oma faili <filename>.cvsignore</filename>. </para></listitem>
</varlistentry>
</variablelist>
<para>Nüüd, kus oled saanud ülevaate CVS-i hetkeolekust, võib tekkida soov võtta ette värskendamine. Märgi mõned failid (või ka kataloogipuu juur, mis võrdub kõigi selles kataloogis olevate failide märkimisega). Vali <menuchoice> <guimenu>Fail</guimenu> <guimenuitem>Värskenda</guimenuitem> </menuchoice> (kuigi tegelikult võiks seda käsku kasutada kohe seanssi alustades). Mõne faili olek võib muutuda. Tavaliselt uuendatakse faile, mille olek oli "Vajab paikamist" või "Vajab värskendamist". Nüüd võivad olekuveergu ilmuda mõningad uued elemendid: </para>
<variablelist>
<varlistentry>
<term><guilabel>Värskendatud</guilabel></term>
<listitem><para>Näitab, et faili on hoidlast värskendatud. </para></listitem>
</varlistentry>
<varlistentry>
<term><guilabel>Paigatud</guilabel></term>
<listitem><para>Näitab, et &CVS; server on saatnud failile paiga ja et see on edukalt lisatud. Kui see hästi ei õnnestunud, sest tekkis konflikt sinu tehtud ja kellegi teise hoidlasse saadetud muudatuste vahel, saab olekuks <guilabel>Konflict</guilabel>. </para></listitem>
</varlistentry>
</variablelist>
<para>Kindlasti märkad, et vastavalt olekule on ridadel erinev värv. Need on valitud mingil määral peegeldama oleku prioriteetsust. Näiteks konfliktiga fail on märgitud punasega, mis annab märku, et konflikt tuleks lahendada, enne kui failiga edasi tegutseda. Kui kataloogis on palju faile, võib siiski ülevaade kaotsi minna. Täpsema info saamiseks mitte-päris-tavalise olekuga failide kohta klõpsa veerul <guilabel>Olek</guilabel>. Nimekiri sorteeritakse siis vastavalt prioriteedile, nii et kogu oluline info koondub nimekirja esiotsa. Et näha taas tähestiku järgi sorteeritud nimekirja, klõpsa veerul <guilabel>Faili nimi</guilabel>. </para>
</sect1>
</chapter>
<chapter id="workingwithfiles">
<title>Töö failidega</title>
<para>&cervisia; peaaken võimaldab kasutada vahetult kõiki &CVS;-i tavapäraseid võimalusi. Käsud rakenduvad tavaliselt mitmele failile korraga - nimelt neile, mida oled parajasti valinud. Kui valik hõlmab ka katalooge, sõltub käsu rakendamise kord menüüs <guimenu>Seadistused</guimenu> määratust. Kui näiteks on sisse lülitatud <menuchoice><guimenu>Seadistused</guimenu><guimenuitem>Rekursiivne sissekannete tegemine ja eemaldamine</guimenuitem></menuchoice> ning sa valid menüükäsu <menuchoice><guimenu>Fail</guimenu><guimenuitem>Tee sissekanne...</guimenuitem></menuchoice>, kusjuures valitud on mõni kataloog, siis tehakse sissekanne kõigist antud kataloogi alla kuuluvatest failidest. Vastasel juhul puudutab käsk vaid tavalisi faile kataloogis endas. </para>
<figure id="screenshot-popup" float="1">
<title>&cervisia; kontekstimenüü</title>
<mediaobject>
<imageobject><imagedata format="PNG" fileref="popup.png"/></imageobject>
</mediaobject>
</figure>
<para>Kõige sagedamini vajaminevad toimingud leiab ka failidel puuvaates hiire parema nupuga klõpsates avanevast kontekstimenüüst. <xref linkend="screenshot-popup"/> näitab &cervisia; peaakna kontekstimenüüd. </para>
<para>Faili redigeerimiseks piisab, kui sellele topeltklõps teha vüi fail valida ja vajutada klahvile &Enter;. Seejärel käivitatakse antud failitüübi käsitlemiseks mõeldud vaikerakendus (iga failitüübi vaikerakendus on kogu KDE-s kehtiv seadistus). Kui vaikerakendus ei ole mitte see, mida sa tahaksid parajasti kasutada, võib failil teha klõpsu hiire parema nupuga, valida alammenüü <menuchoice> <guisubmenu>Redigeeri kasutades</guisubmenu> </menuchoice> ning sealt juba mõni muu rakendus, mis antud failitüübiga tegelda oskab. </para>
<sect1 id="addingfiles">
<title>Failide lisamine</title>
<para>Failide lisamine projekti eeldab kaht sammu. Esiteks peab failid &CVS;-is registreerima ehk nad <emphasis>hoidlasse lisama</emphasis>. Kuid see ei ole veel kõik: et failid ka tegelikult hoidlasse jõuaks, tuleb nad <emphasis>sisse kanda</emphasis>. Sellel on üks oluline eelis: failid saab sisse kanda koos muudatustega projekti muudes osades. Nii võivad teised (⪚ sissekandemeilides) hõlpsasti näha, et kõik need muudatused on tehtud korraga. </para>
<para>Selleks märgi &cervisia; peaaknas failid, mida soovid lisada. Seejärel vali menüükäsk <menuchoice><guimenu>Fail</guimenu><guimenuitem>Lisa hoidlasse...</guimenuitem></menuchoice> või klõpsa märgitud failidel hiire parema nupuga ja vali <guimenuitem>Lisa hoidlasse...</guimenuitem> Ilmub dialoog <guilabel>CVS - lisamine</guilabel>, mis näitab kõiki märgitud faile ja soovib saada sinu kinnitust. Klõpsa nupule <guibutton>OK</guibutton>. </para>
<para>&cervisia; annab käsu</para>
<para>
<screen><command>cvs add <replaceable>failinimed</replaceable></command></screen>
</para>
<para>Kui see õnnestub, ilmub lisatavate failide olekuveergu märge "Lisatud hoidlasse". </para>
<warning><para>&CVS; ei ole mõeldud pakkuma korralikku versioonide kontrolli binaarfailidele. Näiteks binaarfailide ühendamisel ei ole üldjuhul mingit mõtet. Pealegi võtab &CVS; sissekande tegemisel vaikimisi ette võtmesõna täiendamise (⪚ stringis <literal>$Revision: 1.6 $</literal>). Binaarfailides võivad sellised asendused faili rikkuda ja muuta täiesti kasutamatuks. </para></warning>
<para>Et seda ei juhtuks, tuleb binaarfailid (või ka muud, näiteks PostScript failid või PNG pildifailid) sisse kanda menüükäsuga <menuchoice><guimenu>Fail</guimenu><guimenuitem>Lisa binaarfail...</guimenuitem></menuchoice> Ilmub dialoog <guilabel>CVS - Binaarfaili lisamine</guilabel>, mis näitab kõiki märgitud faile ja soovib saada sinu kinnitust. Klõpsa nupule <guibutton>OK</guibutton>. </para>
<para>&cervisia; annab käsu </para>
<para>
<screen><command>cvs add -kb <replaceable>failinimed</replaceable></command></screen>
</para>
</sect1>
<sect1 id="removingfiles">
<title>Failide eemaldamine</title>
<para>Sarnaselt failide lisamisele on failide eemaldamine kaheastmeline protsess. Esmalt tuleb failid registreerida eemaldatavaks menüükäsuga <menuchoice><guimenu>Fail</guimenu><guimenuitem>Eemalda hoidlast...</guimenuitem></menuchoice> või hiire parema nupu klõpsuga märgitud failidel ja kontekstimenüüst kirje <guimenuitem>Eemalda hoidlast...</guimenuitem> valimisega. Ilmub dialoog <guilabel>CVS - Eemaldamine</guilabel>, mis näitab kõiki märgitud faile ja soovib saada sinu kinnitust. Klõpsa nupule <guibutton>OK</guibutton>. &cervisia; annab käsu </para>
<para>
<screen><command>cvs remove -f <replaceable>failinimed</replaceable></command></screen>
</para>
<para>Seejärel tuleb see liivakastis tehtud muudatus sisse kanda, millega võib kaasneda projekti ka muude muutuste tegemine. </para>
<note><para>Ülaltoodud käsk toimib ainult siis, kui fail on värske. Muidu on tulemuseks veateade. See on üsna arukas: kui oled teinud faili võrreldes hoidlaga muutusi või on muutusi teinud keegi teine, tasuks enne kontrollida, kas need tasub tõesti täielikult unustusehõlma saata. </para></note>
</sect1>
<sect1 id="addingremovingdirs">
<title>Kataloogide lisamine ja eemaldamine</title>
<para>&CVS; käsitleb katalooge põhimõtteliselt täiesti erinevalt tavalistest failidest. Need ei allu versioonide kontrollile, s.t. sul ei ole võimalik määrata, millised kataloogid olid projektis teatud ajahetkel olemas. Lisaks sellele ei saa katalooge otseselt eemaldada, kui sa just neid vahetult hoidlast ei kõrvalda. </para>
<para>&CVS; järgib tava, et kataloog on projekti versioonis "olematu", kui see on tühi. Seda saab teostada võtme <option>-P</option> lisamisega käsule <command>cvs update</command> ja <command>cvs checkout</command>. Selle võimaluse saab kehtestada menüükäsuga <menuchoice><guimenu>Seadistused</guimenu><guimenuitem>Värskendamisel eemaldatakse tühjad kataloogid</guimenuitem></menuchoice>. </para>
<para>Kataloogi saab lisada hoidlasse menüükäsuga <menuchoice><guimenu>Fail</guimenu><guimenuitem>Lisa hoidlasse...</guimenuitem></menuchoice> või hiire parema nupuga märgitud kataloogil klõpsates ja ilmuvast kontekstimenüüst kirjet <guimenuitem>Lisa hoidlasse...</guimenuitem> valides. Arvesta, et erinevalt failide lisamisest ei nõua kataloogi lisamine hilisemat sissekannet. &cervisia; annab seejärel käsu </para>
<para>
<screen><command>cvs add <replaceable>kataloogi_nimi</replaceable></command></screen>
</para>
</sect1>
<sect1 id="committingfiles">
<title>Failide sissekandmine</title>
<para>Kui oled oma tööversiooni teinud mitmeid muutusi ja soovid, et ka teised arendajad saaks neid kasutada, tuleb need <emphasis>sisse kanda</emphasis>. Sissekandmisega paigutad muudetud failide versioonid uute versioonidena hoidlasse. Kui nüüd mõni teine arendaja võtab ette värskendamise, jõuavad sinu tehtud muudatused tema tööversiooni. </para>
<para>Failide sissekandmiseks vali need &cervisia; peaaknas ja kasuta menüükäsku <menuchoice><guimenu>Fail</guimenu><guimenuitem>Tee sissekanne...</guimenuitem></menuchoice> või klõpsa märgitud failidel hiire parema nupuga ja vali ilmuvast kontekstimenüüst kirje <guimenuitem>Tee sissekanne...</guimenuitem> </para>
<figure id="screenshot-commit" float="1">
<title>&cervisia; sissekande tegemise dialoog</title>
<mediaobject>
<imageobject><imagedata format="PNG" fileref="commit.png"/></imageobject>
</mediaobject>
</figure>
<para>Ilmub dialoog, mille ülaosas on näha valitud failid ning alumises osas pakutakse sulle võimalust panna kirja logiteade. &cervisia; aitab igati kaasa mõtestatud logiteadete koostamisele. Esiteks saab failide nimekirjas mõnel failil topeltklõpsu tehes või klahvi <keycap>Return</keycap> vajutades näha sellesse tehtud muudatusi. Teiseks näidatakse liitkastis varasemaid logiteateid. Kolmandaks on dialoog seotud allpool kirjeldatava &cervisia; faili ChangeLog redaktoriga. Kui oled dialoogis asjadega valmis saanud, antakse käsk </para>
<para>
<screen><command>cvs commit -m <replaceable>teade</replaceable> <replaceable>failinimed</replaceable></command></screen>
</para>
<note><para>Üsna tavaline viga sissekande tegemisel on <errorname>Up-to-date check failed</errorname> (<quote>värskuse kontroll ebaõnnestus</quote>). See näitab, et keegi on hoidlasse pärast sinu viimast värskendamist muudatusi teinud ehk kui tehnilisemalt rääkida, ei ole sinu <literal>BASE</literal>-versioon antud harus mitte kõige uuem. Sellisel juhul keeldub &CVS; sinu muudatusi hoidlasse ühendamast. Lahenduseks on värskendada, lahendada vajadusel konfliktid ja uuesti sissekanne teha. Kui töötad tarkvaraprojekti kallal, tasub mõistagi pärast värskendamist ka kontrollida, kas rakendus ikka töötab, sest lõppeks võib ju sinu ja teiste tehtud muudatuste vahel olla vastuolusid, mis koodi rikuvad. </para></note>
<note>
<para>Teine levinud veateade on <errorname>Sticky tag 'X' for file 'X' is not a branch</errorname>. See juhtub siis, kui püüad sisse kanda faili, mille oled varem uuendanud teatud versiooni või sildini käsuga </para>
<para>
<screen><prompt>%</prompt><userinput>cvs update -r X</userinput></screen>
</para>
<para>(seda saab ⪚ teha menüükäsuga <menuchoice><guimenu>Muud</guimenu><guimenuitem>Värskenda silti/kuupäeva...</guimenuitem></menuchoice>). Sellisel juhul muutub faili silt 'kleepuvaks', s.t edasised värskendamised ei anna tulemuseks haru uusimat versiooni. Kui soovid nüüd harusse sissekannet teha, tuleb enne seda värskendada haru silti. </para>
</note>
<para>&cervisia; puhul on üpris lihtne hallata faili ChangeLog, mis ühildub GNU koodijuhistes kirja pandud vorminguga. Selle kasutamiseks vali menüükäsk <menuchoice><guimenu>Fail</guimenu><guimenuitem>Lisa ChangeLogi kirje...</guimenuitem></menuchoice>. Kui liivakasti ülemkataloogis on fail <filename>ChangeLog</filename> olemas, avatakse see ja sul on võimalus seda redigeerida. Selleks lisatakse faili algusesse kirje käesoleva kuupäeva ja sinu kasutajanimega (seda saab kohandada, täpsemalt räägib sellest <xref linkend="customize-general"/>). Kui oled töö lõpetanud ja klõpsanud nupule <guibutton>OK</guibutton>, on järgmisel sissekande tegemise dialoogi avamisel sind ees ootamast logiteade, mis vastab viimati muutuste logisse tehtud muudatustele. </para>
</sect1>
<sect1 id="resolvingconflicts">
<title>Konfliktide lahendamine</title>
<para>Konfliktid tekivad siis, kui muudad faili, mida on samal ajal muutnud ka mõni teine arendaja. &CVS; tuvastab konfliktid muudetud faili värskendamisel. &CVS; püüab siis ühendada teise arendaja tehtud muudatused sinu tööversiooni. Ühendamine aga ei õnnestu, kui nii sina kui teine arendaja olete muutnud faili ühesuguseid osi, mispeale &CVS; annab veateate. </para>
<para>&cervisia; peaaknas annab konfliktidega failidest märku kirje "Konflikt" olekuveerus ning punane värv. Nüüd tuleb sul konfliktid lahendada, enne kui saad faili sisse kanda. &CVS; keeldub lubamast sisse kanda konfliktidega faile, kui neid pole redigeeritud. Konflikte saab lahendada tavapäraselt: tee peaaknas vajalikul failil topeltklõps ja redigeeri faili meelepärases redaktoris.</para>
<para>&CVS; tähistab konfliktsed muudatused teatud märke otse keset faili lisades järgmise reegli kohaselt:</para>
<screen><<<<<<<
Muudatused sinu kohalikus versioonis
=======
Muudatused hoidlas
>>>>>>> versiooni_number
</screen>
<para>Sul tuleb kogu see plokk asendada uue, ühtse versiooniga. Mõistagi on konfliktide lahendamisel jäme ots sinu käes: iga konflikti puhul võid just sina otsustada, milline kahest võimalusest valida.Samuti võid langetada otsuse, et kumbki variant tegelikult ei kõlba ning kirjutada kogu ploki või isegi kogu faili algusest peale uuesti. </para>
<para>Õnneks pakub aga &cervisia; välja kena liidese konfliktide lahendamiseks. See ei tähenda, et sa ei pea kunagi faile käsitsi redigeerima, aga tavalisemate konfliktide puhul pole küll selleks vajadust. &cervisia; dialoogi <guilabel>CVS - Lahendamine</guilabel> avamiseks vali menüükäsk <menuchoice><guimenu>Fail</guimenu><guimenuitem>Lahenda...</guimenuitem></menuchoice> või klõpsa märgitud failil hiire parema nupuga ja vali ilmuvast kontekstimenüüst kirje <guimenuitem>Lahenda...</guimenuitem> </para>
<figure id="screenshot-resolve" float="1">
<title>&cervisia; lahendamisdialoog</title>
<mediaobject>
<imageobject><imagedata format="PNG" fileref="resolve.png"/></imageobject>
<textobject><phrase>&cervisia; lahendamisdialoog</phrase></textobject>
</mediaobject>
</figure>
<para>Dialoogi ülaosas on vasakul näha sinu faili <guilabel>Sinu versioon (A)</guilabel> ja paremal faili versioon hoidlas ehk <guilabel>Teine versioon (B)</guilabel>. Erinevused on tähistatud punase värviga. Kahest versioonist allpool on näha <guilabel>Ühendatud versioon</guilabel>. See näitab, milline antud osa sinu kohalikus koopias välja hakkab nägema pärast seda, kui oled klõpsanud nupule <guibutton>Salvesta</guibutton>. </para>
<para>Erinevusi sisaldavate osade vahel saab liikuda nuppudega <guibutton><<</guibutton> ja <guibutton>>></guibutton>. Dialoogi allosas keskel on näha, millise osa juures parajasti ollakse. Näiteks <literal>2 / 3</literal> tähendab, et parajasti on tegemist teise erinevusega kokku kolmest erinevusest. </para>
<para>Seda, milline variant tuleks lõplikku versiooni jätta, saab otsustada iga osa kohta eraldi. Klõps nupule <guibutton>A</guibutton> valib sinu versiooni, nupule <guibutton>B</guibutton> aga hoidla versiooni. Klõps nupule <guibutton>A+B</guibutton> lisab mõlemad versioonid, kusjuures sinu versioon on esimene. <guibutton>B+A</guibutton> annab samasuguse tulemuse, aga teistpidi: esimesena tuleb hoidla ja seejärel sinu versioon. </para>
<para>Kui mitte ükski versioon sind ei rahulda, klõpsa nupule <guibutton>Muuda</guibutton>, mis avab lihtsa tekstiredaktori, kus saad kogu osa redigeerida. Kui oled valmis saanud, klõpsa nupule <guibutton>OK</guibutton> ning saad tagasi pöörduda dialoogi <guilabel>CVS - Lahendamine</guilabel> juurde ja jätkata konfliktide lahendamist. Näed nüüd osas <guilabel>Ühendatud versioon</guilabel> just äsja redigeeritud osa koos tehtud muudatustega. </para>
<para>Muudatuste salvestamiseks ja oma kohaliku koopia ülekirjutamiseks klõpsa nupule <guibutton>Salvesta</guibutton>. Arvesta, et sellega salvestad mitte ainult selle osa, mis on parajasti näha, vaid kõik faili tehtud muudatused. Kui soovid muudatused salvestada igaks juhuks muu nime all, klõpsa nupule <guibutton>Salvesta kui...</guibutton> Klõps nupule <guibutton>Sulge</guibutton> paneb dialoogi kinni. Kui sulged dialoogi ilma salvestamata, lähevad kõik tehtud muudatused kaotsi. </para>
</sect1>
</chapter>
<chapter id="obtaininginformation">
<title>Failide info hankimine ja paikade loomine</title>
<sect1 id="diff">
<title>Versioonide erinevuste jälgimine</title>
<para>&cervisia; võimaldab mitmel puhul avada akna, mis näitab failiversioonide erinevusi: </para>
<itemizedlist>
<listitem><para>Peaaknas saab valida menüükäsu <menuchoice><guimenu>Vaade</guimenu><guimenuitem>Erinevus hoidlast (BASE)...</guimenuitem></menuchoice>. See annab käsu <command>cvs diff</command> ning näitab erinevusi sinu liivakasti ja viimati värskendatud (tuntud ka kui <literal>BASE</literal>) versiooni vahel. See on eriti kasulik vahetult enne faili sissekandmist, et leida sobiv logiteade. </para></listitem>
<listitem><para>Erinevusi oma liivakasti ja peamise arendusharu ehk <literal>HEAD</literal> vahel saab vaadata menüükäsuga <menuchoice><guimenu>Vaade</guimenu> <guimenuitem>Erinevus hoidlast (HEAD)...</guimenuitem></menuchoice> </para></listitem>
<listitem><para>Valitud faili kahe viimase versiooni erinevusi saab vaadata menüükäsuga <menuchoice><guimenu>Vaade</guimenu><guimenuitem>Viimane muudatus...</guimenuitem></menuchoice> </para></listitem>
<listitem><para>Käske <guimenuitem>Erinevus hoidlast (BASE)...</guimenuitem>, <guimenuitem>Erinevus hoidlast (HEAD)...</guimenuitem> ja <guimenuitem>Viimane muudatus...</guimenuitem> saab samuti kasutada peaaknas failil, mille erinevusi soovid näha, hiire parema nupuga klõpsates. </para></listitem>
<listitem><para>Sissekande tegemise dialoogis saab erinevusi lasta näidata faili nime valides ning sellel topeltklõpsu tehes või klahvi <keycap>Return</keycap> vajutades. Selle tulemus on sarnane menüükäsuga <menuchoice><guimenu>Vaade</guimenu><guimenuitem>Erinevus hoidlast (BASE)...</guimenuitem></menuchoice> </para></listitem>
<listitem><para>Logifailide lehitsemise dialoogis saab märkida faili kaks versiooni ja lasta näidata nende erinevusi (täpsemalt vaata <xref linkend="browsinglogs"/>). </para></listitem>
</itemizedlist>
<para>Nagu oodata võibki, ei paiska &cervisia; lihtsalt käsu <command>diff</command> väljundit terminaliaknasse, vaid näitab seda graafiliselt, näiteks nagu <xref linkend="screenshot-log"/>. </para>
<figure id="screenshot-log" float="1">
<title>&cervisia; võrdlemise dialoog</title>
<mediaobject>
<imageobject><imagedata format="PNG" fileref="diff.png"/></imageobject>
<textobject><phrase>&cervisia; võrdlemise dialoog</phrase></textobject>
</mediaobject>
</figure>
<para>Dialoogis olev tekst kujutab endast veidi paremaks muudetud varianti tekstist, mille annab võrdlemiskäsk võtmega <option>-u</option>. Kahes aknas on näha erinevad versioonid, kusjuures read on korraldatud nii, et neid saaks otse võrrelda. See tähendab, et seal, kus teksti on lisatud või kustutatud, on teise akna vasakus servas vastavas kohas näha tühjad read tähistusega <literal>+++++</literal>. Lisaks sellele on näha iga rea number. </para>
<para>Parempoolse akna teises veerus on näha, milline on muudatus olnud. Võimalikud tüübid on <literal>Lisatud</literal>, <literal>Kustutatud</literal> ja <literal>Muudetud</literal>, need read on vastavalt sinised, rohelised ja punased. Dialoogi keskel on kokkusurutult näha värvimärgised ridade kaupa. Nii saab faili muudatustest kiire ülevaate. Kokkusurutud kujundi värviribade asendit saab kasutada ka orienteerumiseks kerimisribade kasutamisel. </para>
<para>Tavaliselt on kerimisribad vasakus ja paremas aknas sünkroonitud, s.t. kui kerid vasakut akent, liigub vastavalt ka parem aken. Seda käitumist saab muuta märkekasti <guibutton>Sünkroonitud kerimisribad</guibutton> abil. </para>
<para>Seda, kuidas kohandada võrdlemisdialoogi, annab teada <xref linkend="customize-diff"/>. </para>
</sect1>
<sect1 id="creatingpatches">
<title>Paikade loomine</title>
<para>Mõnikord võib juhtuda, et soovid oma muudatused kõigepealt teistele ülevaatamiseks anda, enne kui need sisse kanda, või siis ei olegi sul hoidlas kirjutamisõigust ning sa ei saagi midagi sisse kanda. &CVS; pakub välja standardse vorminduse failidele, millega jagada oma kohalikku koopiasse tehtud muudatusi teistega, testida neid kohaliku koopia peal ja rakendada &CVS;-hoidlale. Selliseid erinevusi sisaldav fail kannab nimetust <firstterm>paik</firstterm> (inglise keeles <quote>patch</quote>) ja see luuakse käsuga <command>cvs diff</command> täpselt samamoodi nagu erinevused, mida kirjeldas <xref linkend="diff"/>. Paikade kasutamine tervete failide asemel võimaldab toime tulla ka siis, kui näiteks internetiühendus on kallis või vähese läbilaskevõimega, pealegi on paiku hõlpsam käsitleda, sest ka üksainus paigafail võib sisaldada paljude läthefailide erinevusi. </para>
<para>&cervisia; võimaldab seda teha menüükäsuga <menuchoice><guimenu>Muud</guimenu><guimenuitem>Loo hoidla suhtes paigafail...</guimenuitem></menuchoice> </para>
<important><para>Käsk <guimenuitem>Loo hoidla suhtes paigafail...</guimenuitem> loob paiga, mis sisaldab kõigi sinu kohaliku koopia (liivakasti) failide kõiki muudatusi võrreldes hoidla <literal>BASE</literal>-versiooniga. Seepärast ei ole paiga loomisel ka oluline, kas peaaknas on mingid failid valitud või mitte. </para></important>
<para>Teine võimalus on valida peaaknas üks kindel fail ning seejärel menüüst <guimenu>Vaade</guimenu> käsk <guimenuitem>Näita logifaili...</guimenuitem> või märgitud failil hiire parema nupuga klõpsates kirje <guimenuitem>Näita logifaili...</guimenuitem>, mis avab <link linkend="browsinglogs">logidialoogi</link>. Vali nüüd versiooniks "A" versioon, mille suhtes soovid paiga luua, ning klõpsa nupule <guilabel>Loo paik...</guilabel> See tekitab paiga, mis sisaldab erinevusi sinu kohaliku koopia <emphasis>märgitud faili</emphasis> ning versiooni "A" vahel. </para>
<para>Enne paiga tekitamist avab &cervisia; dialoogi, milles saab kindlaks määrata väljundi vorminduse. </para>
<figure id="screenshot-patch" float="1">
<title>&cervisia; paikamisdialoog</title>
<mediaobject>
<imageobject><imagedata format="PNG" fileref="patch.png"/></imageobject>
<textobject><phrase>&cervisia; paikamisdialoog</phrase></textobject>
</mediaobject>
</figure>
<variablelist>
<varlistentry>
<term><guilabel>Väljundi vormindus</guilabel></term>
<listitem><para>Väljund võib olla vormindatud kolmel viisil: </para>
<para><guilabel>Tavaline</guilabel>: vormindus, millega saab näiteks redaktori ed pnna automaatselt looma vanast failist koopiat uue failiga sobimiseks. Tavalise vorminduse korral tähistavad muudatusi sümbolid < ja > ning kontekstiinfo puudub. </para>
<para><guilabel>Unifitseeritud</guilabel>: levinuim paikade vormindus. Selle puhul kasutatakse erinevuste salvestamiseks lisaks reanumbritele ka kontekstiridasid. See muudab paikade rakendamise märksa turvalisemaks. Erinevusi näidatakse kompaktses ja loetavas vormis, näidates iga asjassepuutuva faili päist ning omaette sektsioone (tükke) iga erinevuse kohta. Iga erinevuse kontekstiread muudavad muudatustest ülevaate saamise hõlpsamaks. Muudatusi tähistavad sümbolid + ja -. </para>
<para><guilabel>Kontekst</guilabel> näitab sama infot, mis unifitseeritud vorminduski, aga mitte nii kompaktselt. Kontekstivorminduse korral tähistab muudatusi sümbol !. </para></listitem>
</varlistentry>
<varlistentry>
<term><guilabel>Kontekstiridade arv:</guilabel></term>
<listitem><para>Siin saab määrata kontekstiridade arvu unifitseeritud või kontekstivorminduse korral. Tavalise vorminduse puhul ei saa seda kasutada, sest sellisel juhul ju kontekstiinfot ei salvestata. Mida rohkem kontekstiinfot, seda hõlpsam on toorväljundit lugeda ja seda täpsemini saab paiku rakendada, kuid paiga suurus sel moel mõistagi kasvab. Väga mõistlik oleks siiski kasutada vähemalt kaht kontekstirida. </para></listitem>
</varlistentry>
<varlistentry>
<term><guilabel>Ignoreerimisvalikud</guilabel></term>
<listitem><para>Siin saab valida, milliseid muudatusi ei peeta paiga loomisel erinevuseks. </para></listitem>
</varlistentry>
</variablelist>
<para>Pärast väljundi vorminduse määramist loob &cervisia; paiga ja avab dialoogi <guilabel>Salvesta kui</guilabel>. Määra seal paigafaili nimi ja asukoht. </para>
</sect1>
<sect1 id="annotate">
<title>Faili annoteeritud vaate jälgimine</title>
<para>Käsu <command>cvs annotate</command> peale pakub &CVS; võimalust rida-realt näha, kes on failis viimati muudatusi teinud. See on kasulik tuvastamaks, kes millise muutuse on sisse viinud või kellele esitada küsimus koodi tehtud muudatuse või sellesse tekkinud vea kohta. </para>
<para>&cervisia; võimaldab seda kasutada, kuid rikastab pakutavat infot omalt pooltki. Annotatsioonivaate saab avada menüükäsuga <menuchoice><guimenu>Vaade</guimenu><guimenuitem>Näita annotatsiooni...</guimenuitem></menuchoice>. Teine võimalus on klõpsata <link linkend="browsinglogs">logi lehitsemise dialoogis</link> nuppu <guilabel>Annoteerimine</guilabel>, mille puhul saab valida, millist failiversiooni soovid näha. Milline see dialoog välja näeb, näitab <xref linkend="screenshot-annotate"/>. </para>
<figure id="screenshot-annotate" float="1">
<title>&cervisia; annotatsioonidialoog</title>
<mediaobject>
<imageobject><imagedata format="PNG" fileref="annotate.png"/></imageobject>
<textobject><phrase>&cervisia; annotatsioonidialoog</phrase></textobject>
</mediaobject>
</figure>
<para>Annotatsioonidialoogi aknas on näha valitud faili viimane versioon (või versioon "A", kui käivitasid annotatsioonidialoogi <link linkend="browsinglogs">logi lehitsemise dialoogist</link>). Veerud enne teksti näitavad iga rea puhul infot viimaste muudatuste kohta. Esimeses veerus näidatakse reanumbrit. Teises veerus on näha selle versiooni autori nimi ja versiooni number. Kolmandas versioonis aga rea tegelikku sisu. </para>
<para>Nii saab juhul, kui mingi rida paistab kahtlasena või kahtlustad, et seal võib peituda viga, kohe teada, kellele selle rea eest vastutus langeb. Lisaks sellele võib aga ka teada saada, <emphasis>miks</emphasis> seda rida muudeti. Selleks vii hiirekursor vastava versiooninumbri kohale, misjärel ilmub kohtspikker logiteate ja muutmise kuupäevaga. </para>
</sect1>
<sect1 id="browsinglogs">
<title>&CVS; logide lehitsemine</title>
<para>Kui märgid peaaknas mõne faili ja valid menüüst <guimenu>Vaade</guimenu> käsu <guimenuitem>Näita logifaili...</guimenuitem> või klõpsad märgitud failil hiire parema nupuga ja valid kontekstimenüüst <guimenuitem>Näita logifaili...</guimenuitem>, näidatakse dialoogi <guilabel>CVS - logifaili vaatamine</guilabel> (kui märgid enam kui ühe faili, ei juhtu midagi, sest &cervisia; suudab korraga luua ja parsida ainult ühe faili logi). See dialoog pakub tegelikult märksa enam võimalusi kui ainult faili ajalooga tutvumine. Selle sirvija abil on võimalik: </para>
<itemizedlist>
<listitem><para>Näha märgitud faili iga versiooni numbrit, autorit, kuupäeva, haru, sissekandmisteadet ja silte. </para></listitem>
<listitem><para>Näha märgitud faili harru lisamist ja sildi omistamist graafiliselt puuna. </para></listitem>
<listitem><para>Näha märgitud faili iga versiooni (vaikerakenduses). </para></listitem>
<listitem><para>Jälgida märgitud faili iga versiooni annoteeritud vaadet. </para></listitem>
<listitem><para>Näha märgitud faili mis tahes kahe versiooni erinevusi, sealhulgas ka erinevust märgitud faili parajasti kohalikus koopias olevast versioonist. </para></listitem>
<listitem><para>Luua paiku erinevustega märgitud faili mis tahes kahe versiooni vahel, sealhulgas erinevustega märgitud faili parajasti kohalikus koopias oleva versiooni suhtes. </para></listitem>
</itemizedlist>
<figure float="1">
<title>&cervisia; logi lehitsemise dialoog</title>
<mediaobject>
<imageobject><imagedata format="PNG" fileref="logtree.png"/></imageobject>
<textobject><phrase>&cervisia; logi lehitsemise dialoog</phrase></textobject>
</mediaobject>
</figure>
<para>Ajalugu, nagu seda pakub käsk <command>cvs log</command> (<guilabel>CVS väljund</guilabel>) võib vaadata kas <guilabel>puu</guilabel> või <guilabel>nimekirja</guilabel> kujul. Kumb valida, sõltub sinu maitsest ning sellest, milline info sind huvitab. Puu kujutab ülevaadet, mida milline autor erinevates harudes on teinud. Kohtspikrid näitavad vastavaid logiteateid. Nimekiri on loomult lineaarne ega anna seetõttu ühe pilguga hõlmatavat ülevaadet harudest. Teisalt koondub siin rohkem asjakohast infot väiksemale ruumile, nimelt faili iga muutmise aeg ja logiteate algus. CVS väljund on põhjalik ja täielik, kuid pikk ja raskesti loetav. Selle lihtsustamiseks on võimalik väljundis teksti otsida, millist võimalust pakub nupp <guibutton>Otsi...</guibutton> </para>
<para>Konkreetse versiooni kohta enama info hankimiseks tuleb sellel klõpsata, olgu siis tegemist nimekirjaga või puuga. Dialoogi keskel asuvad väljad täituvad seejärel infoga, mida tagastab käsk <command>cvs log</command>. Sa võid ära märkida ka kaks versiooni, vastavalt "A" ja "B", kui soovid korraga näha huvipakkuvaid versioone. Versiooni "A" saab valida hiire vasaku, "B" keskmise nupuga. Nimekirjavaates saab liikuda ka kursoriklahvidega. Versioonide "A" ja "B" märkimiseks kasuta vastavalt kiirklahve <keycombo><keycap>Ctrl</keycap><keycap>A</keycap></keycombo> ja <keycombo><keycap>Ctrl</keycap><keycap>B</keycap></keycombo>. Vaates <guilabel>CVS väljund</guilabel> saab versioonide märkimiseks klõpsata nuppudele <guilabel>Vali versioon A</guilabel> ja <guilabel>Vali versioon B</guilabel>. </para>
<para>Klõps nupule <guibutton>Annoteerimine</guibutton> avab dialoogi, kus on näha versiooni "A" tekst. Iga rea ees on info selle viimase redigeerija ning redigeerimisaja kohta. Rohkem infot annoteeritud versioonide vaatamise kohta annab <xref linkend="annotate"/>. </para>
<para>Klõps nupule <guibutton>Võrdlemine</guibutton> kutsub välja käsu <command>cvs diff</command>, mille tulemuseks on dialoog, mis näitab kõiki erinevusi kahe märgitud versiooni vahel. Kui märgid versiooni "A", aga mitte versiooni "B", genereerib &cervisia; muudatused versiooni "A" ning faili kohalikus koopias parajasti eksisteeriva versiooni vahel. See lubab näha erinevusi faili sinu ja millise tahes &CVS;-is oleva versiooni vahel. Vaatamise hõlbustamiseks kasutatakse erinevaid värve lisatud, eemaldatud või muudetud ridade märkimiseks. Rohkem infot erinevuste vaatamise kohta annab <xref linkend="diff"/>. </para>
<para>Klõps nupule <guibutton>Loo paik...</guibutton> avab dialoogi, kus saab määrata millises vorminduses luuakse fail, mis sisaldab kõiki kahe näidatava versiooni vahelisi erinevusi. Kui märgid versiooni "A", aga mitte versiooni "B", genereerib &cervisia; muudatused versiooni "A" ning faili kohalikus koopias parajasti eksisteeriva versiooni vahel. See lubab luua paiga- ehk erinevustefaili sinu ja millise tahes &CVS;-is oleva versiooni vahel. Pärast paiga vorminduse määramist dialoogis ja klõpsu nupule <guibutton>OK</guibutton> antakse käsk <command>cvs diff</command>, mis loobki erinevustefaili. Ilmub dialoog <guilabel>Salvesta kui</guilabel>, kus tuleb määrata &cervisia; loodud paigafaili nimi ja asukoht, kui soovid seda ikka salvestada. Rohkem infot paikade loomise ja paigafailide vorminduse kohta annab <xref linkend="creatingpatches"/>. </para>
<para>Klõpsuga nupule <guibutton>Näita</guibutton> hangib &cervisia; versiooni "A" ning näitab seda antud failitüübi vaikerakenduses. </para>
<para>Klõpsuga nupule <guibutton>Sulge</guibutton> saab dialoogi kinni panna ja naasta peaaknasse. </para>
<para>Dialoogi <guilabel>CVS - Logifaili vaatamine</guilabel> aluseks oleva logi genereerimiseks annab &cervisia; käsu: </para>
<para>
<screen><command>cvs log <replaceable>failinimi</replaceable></command></screen>
</para>
</sect1>
<sect1 id="browsinghistory">
<title>Ajaloo lehitsemine</title>
<para>Kui hoidlas on logimine lubatud, võib &cervisia; näidata teatud sündmuste, näiteks väljavõtete ja sissekannete tegemise, värskendamiste ja väljalasete ajalugu. Vali menüüst <guimenu>Vaade</guimenu> käsk <guimenuitem>Ajalugu</guimenuitem>, mispeale &cervisia; annab käsu </para>
<para>
<screen><command>cvs history -e -a</command></screen>
</para>
<note><para>See tõmbab serverilt kogu logifaili, s.t. nimekirja kõigi kasutajate ja kõigi moodulite sündmuste kohta. See fail võib olla päris suur. </para></note>
<para>Nüüd võid kuupäevade kaupa sorteerituna näha sündmuste nimekirja. Teises veerus näidatakse sündmuse tüüpi: </para>
<itemizedlist>
<listitem><para>Tehtud väljavõte - veerus 'Autor' näidatud kasutaja tegi mooduli väljavõtte </para></listitem>
<listitem><para>Silt - kasutaja tarvitas käsku <command>cvs rtag</command>. Arvesta, et käsu <command>cvs tag</command> (mida teeb &cervisia; käsk <menuchoice><guimenu>Muud</guimenu><guimenuitem>Silt/haru...</guimenuitem></menuchoice>) kasutamist ajaloo andmebaasis ei leidu. Sellel on oma ajaloolised põhjused (täpsemat infot jagab &CVS; <acronym>KKK</acronym>). </para></listitem>
<listitem><para>Väljalase - kasutaja on mooduli välja lasknud. Tegelikult kasutatakse seda käsku väga harva ning sellel puudub eriline mõte. </para></listitem>
<listitem><para>Värskendatud, kustutatud - kasutaja on värskendanud faili, mis on hoidlast kustutatud. Selle tulemusena kustutati fail ka tööversioonist. </para></listitem>
<listitem><para>Värskendatud, kopeeritud - kasutaja on faili värskendanud, töökataloogi kopeeriti uus versioon. </para></listitem>
<listitem><para>Värskendatud, ühendatud - kasutaja on faili värskendanud, hoidla versioonis olevad muutused ühendati tööversiooni failiga. </para></listitem>
<listitem><para>Värskendatud, konflikt - kasutaja on faili värskendanud ning tuvastati konflikt tööversioonis tehtud muudatustega. </para></listitem>
<listitem><para>Tehtud sissekanne, muudetud - kasutaja on muudetud faili sisse kandnud. </para></listitem>
<listitem><para>Tehtud sissekanne, lisatud - kasutaja on faili lisanud ja sissekande teinud. </para></listitem>
<listitem><para>Tehtud sissekanne, eemaldatud - kasutaja on faili eemaldanud ja sissekande teinud. </para></listitem>
</itemizedlist>
<figure id="screenshot-history" float="1">
<title>&cervisia; ajaloo dialoog</title>
<mediaobject>
<imageobject><imagedata format="PNG" fileref="history.png"/></imageobject>
<textobject><phrase>&cervisia; ajaloo dialoog</phrase></textobject>
</mediaobject>
</figure>
<para>Nimekirja saab vastaval veerupäisel klõpsates selle veeru järgi sorteerida. Sorteerimaks ajalookirjeid huvipakkuva teema järgi, saab märkekastidega rakendada mitmesuguseid filtreid: </para>
<itemizedlist>
<listitem><para>Näita sissekannete tegemisi - näitab sissekandeid</para></listitem>
<listitem><para>Näita väljavõtete tegemisi - näitab väljavõtteid</para></listitem>
<listitem><para>Näita sildistamisi - näitab sildistamisi</para></listitem>
<listitem><para>Näita muid sündmusi - näitab sündmusi, mida ülaltoodud võimalused ei hõlma</para></listitem>
<listitem><para>Ainult kasutaja - näitab ainult konkreetse kasutajaga seotud sündmusi</para></listitem>
<listitem><para>Ainult failinimed - filtreerib failinimed vastavalt regulaaravaldisele</para></listitem>
<listitem><para>Ainult kataloogid - filtreerib katalooginimed vastavalt regulaaravaldisele</para></listitem>
</itemizedlist>
<para>Regulaaravaldistes saab kasutada järgmisi erimärke: </para>
<itemizedlist>
<listitem><para><literal>x*</literal>: sobib suvaline arv <literal>x</literal> esinemisi. </para></listitem>
<listitem><para><literal>x+</literal>: sobib üks või enam <literal>x</literal> esinemist. </para></listitem>
<listitem><para><literal>x?</literal>: sobib null või üks <literal>x</literal> esinemist. </para></listitem>
<listitem><para><literal>^</literal>: sobib stringi algus. </para></listitem>
<listitem><para><literal>$</literal>: sobib stringi lõpp. </para></listitem>
<listitem><para><literal>[a-cx-y]</literal>: sobib märgirühm, ⪚ antud juhul a,b,c,x,y. </para></listitem>
</itemizedlist>
</sect1>
</chapter>
<chapter id="advancedusage">
<title>Kasutamine edasijõudnutele</title>
<sect1 id="updatingto">
<title>Värskendamine sildi, haru või kuupäeva järgi</title>
<para>Mooduli harud on selle paralleelsed versioonid. Heaks näiteks nende praktilise kasutamise kohta on tarkvaraprojektide väljalasked. Pärast väljalaset on kahtlemata lähtekoodis vigu, mis ootavad parandamist, kuid samas soovib keegi kindlasti ka mõne hoopis uue võimaluse lisada. Mõlemat korraga on reeglina päris raske saavutada, sest uued võimalused toovad enamasti kaasa uusi vigu ning seeläbi muutub vanade vigade jälgimine keerukamaks. Selle dilemma lahendamiseks lubab &CVS; luua paralleelse versiooni, mida me nimetame "stabiilseks väljalaskeharuks" ja milles parandatakse ainult vigu, samal ajal kui peaharu (HEAD) on avatud ka uute võimaluste lisamisele. </para>
<para>Silte kasutatakse projekti versiooni tähistamiseks. &CVS; märgib iga faili kindla versiooni sildiga, nii et kui teed väljavõtte või värskendad konkreetse sildi järgi, saad alati failist ühe ja sama versiooni. Sestap ei saa erinevalt harust sildiga faili õigupoolest arendada. Silte on mõtet kasutada väljalasete, koodis tehtud suuremate muudatuste &etc; korral. </para>
<para>Kui arendad mõnd tarkvaraprojekti, ei ole mitte alati vajalik ega mõttekaski töötada põhiharus. Pärast väljalaset näiteks on mõttekas antud versioon mõneks ajaks suhteliselt rahule jätte, parandades seal ainult vigu, lastes töötada tarkvara tõlkijatel &etc; Selleks tuleb värskendada väljalaskeharu järgi. Sellisel juhul värskendatakse kõik sinu failid antud haru failide uusima versioonini. Pärast värskendamist saad muudatuste tegemisel need samasse harusse taas sisse kanda. </para>
<para>Samuti võib tekkida vajadus uurida mõnd viga, mis tekkis mingi sildiga tähistatud väljalaskes. Sellisel juhul pakub &CVS; võimalust hankida tarkvara just sellisel kujul, nagu see väljalaskes esines. Kui aga soovid hankida oma projekti mõne varasema versiooni, võid kohaliku töökoopia värskendada kindla kuupäeva järgi. See on mõttekas näiteks juhul, kui mingi viga tekkis kahe väljalaske vahel ja sul on ka üsna täpne ettekujutus, millal. Kui värskendad kuupäeva või sildi järgi, saab sinu failide versiooniks sama versioon, mis on antud kuupäevaga või sildiga failidel. </para>
<warning><para>Enne seda, kui värskendada mõne muu haru või sildi järgi, kontrolli, et oled oma senises tööharus kõik muudatused sisse kandnud. Kui sa seda mingil põhjusel teha ei saa ja tehtud muudatusi kaotada ka ei taha, siis ära värskenda uude harru, sest nii lähevad muudatused kaotsi. Teine võimalus on sooritada täiesti uus <link linkend="checkingout">väljavõte</link> ning töötada paralleelselt mõlema versiooniga. </para></warning>
<figure id="screenshot-updatetag" float="1">
<title>&cervisia; sildi järgi uuendamise dialoog</title>
<mediaobject>
<imageobject><imagedata format="PNG" fileref="updatetag.png"/></imageobject>
<textobject><phrase>&cervisia; sildi järgi uuendamise dialoog</phrase></textobject>
</mediaobject>
</figure>
<variablelist>
<varlistentry>
<term><guilabel>Uuenda harusse</guilabel></term>
<listitem><para>Selle valimisel saad faile värskendada teatud haru järgi. Sisesta haru nimi tekstikasti (või klõpsa nupule <guilabel>Laadi nimekiri</guilabel>, mis hangib &CVS;-serverist harude loendi, millest saad valida endale sobiva). </para></listitem>
</varlistentry>
<varlistentry>
<term><guilabel>Uuenda sildi järgi</guilabel></term>
<listitem><para>Selle valimisel saad faile värskendada teatud sildi järgi. Sisesta sildi nimi tekstikasti (või klõpsa nupule <guilabel>Laadi nimekiri</guilabel>, mis hangib &CVS;-serverist siltide loendi, millest saad valida endale sobiva). </para></listitem>
</varlistentry>
<varlistentry>
<term><guilabel>Uuenda kuupäeva järgi</guilabel></term>
<listitem><para>Selle valimisel saad faile värskendada teatud kuupäeva järgi. Alloleval väljal võid mitmel moel sisestada kuupäeva. See võib olla näiteks <literal>yyyy-mm-dd</literal>, kus <literal>yyyy</literal> on aasta, <literal>mm</literal> kuu (numbrilisel kujul) ja <literal>dd</literal> päev. Kasutada saab ka mõningaid ingliskeelseid fraase, näiteks <literal>yesterday</literal> (<quote>eile</quote>) ja <literal>2 weeks ago</literal> (<quote>2 nädala eest</quote>). </para></listitem>
</varlistentry>
</variablelist>
<note><para>Sildi või kuupäeva järgi värskendamine muudab sildi või kuupäeva 'kleepuvaks', s.t. sul ei ole enam võimalik nende failide puhul teha sissekandeid (kui just silt ei ole antud haru silt). Põhiharuga (tuntud ka kui <literal>HEAD</literal>) taasliitumiseks kasuta menüükäsku <menuchoice><guimenu>Muud</guimenu><guimenuitem>Värskenda HEAD-harusse</guimenuitem></menuchoice>. </para></note>
<para>Haru või sildi järgi värskendamiseks antakse käsk: <screen><command>cvs update -r <replaceable>silt</replaceable></command></screen>
</para>
<para>Kuupäeva järgi värskendamiseks antakse käsk: <screen><command>cvs update -D <replaceable>kuupäev</replaceable></command></screen>
</para>
<para>Peaharru (HEAD) värskendamiseks antakse käsk: <screen><command>cvs update <option>-A</option></command></screen>
</para>
</sect1>
<sect1 id="taggingbranching">
<title>Sildi ja haru omistamine</title>
<para>Me puudutame siin ainult sildi ja haru omistamise tehnilist külge. Kui oled lihtsalt hoidla <emphasis>kasutaja</emphasis>, mitte administraator, ei pruugi sellised probleemid sul ette tullagi. Kui aga oled administraator, tuleks esmalt tutvuda sildi omistamisega seotud mittetehniliste küsimustega, et saada arusaam, kui aeganõudev ja vigaderohke võib ühe projekti erinevate harude haldamine olla. Mõningaid lisamaterjale selle kohta pakub käsiraamatu lisa. </para>
<para>Sildi omistamisega tuleb tegemist teha enamasti väljalaske korral, et alati oleks võimalik pöörduda hõlpsasti tagasi projekti sellel hetkel valitsenud olukorra juurde. Silt on tavaliselt ühtlustatud projektinime ja versiooninumbriga. Näiteks &cervisia; 1.0 silt on <literal>CERVISIA_1_0</literal>. &cervisia; kasutab otsustamisel, milline on sobilik silt, &CVS; rangeid reegleid: see peab algama tähega ning sisaldama vaid tähti, numbreid, sidekriipse ja alakriipse. </para>
<para>Tavaliselt omistatakse silt kogu projektile (kuigi &CVS; lubab mõistagi sildi omistada ainult alamprojektile). Selleks vali ülemkataloog ning seejärel menüükäsk <menuchoice><guimenu>Muud</guimenu><guimenuitem>Silt/haru</guimenuitem></menuchoice>. Sisesta dialoogis sildi nimi, vajuta klahvi <keycap>Return</keycap> ja asi ants! </para>
<para>Haru loomine ei ole tegelikult märgatavalt keerulisem: märgista sildi omistamise dialoogis kast <guibutton>Luuakse selle sildiga haru</guibutton>. Olemasolev silt on võimalik ka kustutada, selleks vali peaaknas menüükäsk <menuchoice><guimenu>Muud</guimenu><guimenuitem>Eemalda silt</guimenuitem></menuchoice>. </para>
<para>Haru omistamise veel üks aspekt on muudatuste ühendamine harust käesolevasse harru. Kui kavatsed seda teha, vali menüükäsk <menuchoice><guimenu>Muud</guimenu><guimenuitem>Ühenda...</guimenuitem></menuchoice>. Ilmuv dialoog pakub kaks võimalust: </para>
<para>Ühendada kõik harus tehtud muudatused käesolevasse harru. Selleks märgi ära <guibutton>Ühenda harust</guibutton> ja kirjuta haru, millest soovid ühendada. &cervisia; annab seejärel käsu </para>
<para>
<screen><command>cvs update <option>-j</option> <replaceable>haru_loomise_kuupäev</replaceable></command></screen>
</para>
<para>Ühendada ainult haru kahe sildi vahelised muudatused. Seda on vaja siis, kui ühendad mitmel korral samast harust põhiharru. Selleks märgi ära <guibutton>Ühenda siltidevahelised muudatused</guibutton> ning sisesta (õiges järjekorras) kaks silti. See tähendab käsku </para>
<para>
<screen><command>cvs update <option>-j</option> <replaceable>haru_loomise_kuupäev1</replaceable> <option>-j</option> <replaceable>haru_loomise_kuupäev2</replaceable></command></screen>
</para>
</sect1>
<sect1 id="watches">
<title>Jälgijate kasutamine</title>
<para>Jälgija (inglise keeles <quote>watch</quote>) on &CVS;i tavapärane viis anda hoidla kasutajatele märku, kui faili on muudetud või kui mõni arendaja on hakanud faili redigeerima. Jälgijate kasutamine nõuab faili <filename><envar>$CVSROOT</envar>/CVSROOT/notify</filename> korrektset seadistamist. Seda siinkohal ei puudutata. Kui vajad rohkem infot, kuidas administraator taolisel korral käituma peaks, loe mõnda lisas soovitatud materjalidest. </para>
<para>&cervisia; tugi jälgijatele koosneb põhiliselt kuuest menüükäsust. </para>
<para>Jälgija lisamiseks ühele või mitmele failile vali menüükäsk <menuchoice><guimenu>Muud</guimenu><guimenuitem>Lisa jälgija...</guimenuitem></menuchoice>. Ilmuvas dialoogis saad määrata, millist tüüpi &CVS;i toega sündmustest märku antakse. Kui näiteks soovid märku saada vaid sissekannete tegemisel, märgi ära <guibutton>Ainult</guibutton> ja <guibutton>Sissekande tegemine</guibutton>. Kui soovid teada saada kõigist märgitud failidega toimuvatest sündmustest, vali <guibutton>Kõik</guibutton>. Valiku kinnitamisel antakse käsk </para>
<para>
<screen><command>cvs watch add -a commit <replaceable>failinimed</replaceable></command></screen>
</para>
<para>või mõne muu sarnase võtmega vastavalt sellele, millise sündmuse valid. </para>
<para>Kui mingid failid enam huvi ei paku, saab neilt jälgija eemaldada. Selleks vali menüükäsk <menuchoice><guimenu>Muud</guimenu><guimenuitem>Eemalda jälgija...</guimenuitem></menuchoice>. Ilmuvas dialoogis on samasugused valikud, nagu jälgija lisamise dialoogis. Valiku kinnitamisel annab &cervisia; käsu </para>
<para>
<screen><command>cvs watch remove <replaceable>failinimed</replaceable></command></screen>
</para>
<para>(võimalik on lisada valitud sündmuste jaoks võti <option>-a</option>). </para>
<para>On võimalik hankida ka nimekiri inimeste kohta, kes faile jälgivad. Selleks kasuta menüükäsku <menuchoice><guimenu>Muud</guimenu><guimenuitem>Näita jälgijaid</guimenuitem></menuchoice>. See annab käsu </para>
<para>
<screen><command>cvs watchers <replaceable>failinimed</replaceable></command></screen>
</para>
<para>&CVS;i kõige tavalisema pruukimise korral töötab iga arendaja omaenda liivakastis. Kui ta soovib mõnda faili muuta, avab ta selle oma redaktoris ning asub tööle. Keegi teine ei pruugi tema tööst teada saada, enne kui ta faili hoidlasse sisse kannab. </para>
<para>Mõned arendajate grupid aga eelistavad teistsugust töökorraldust, kus teised saavad sellest, et keegi on asunud mõne failiga tegutsema, teada <emphasis>otsekohe</emphasis>. See on &CVS;is samuti võimalik. Enne kui alustad faili redigeerimist, vali see &cervisia; peaaknas ning kasuta menüükäsku <menuchoice><guimenu>Muud</guimenu><guimenuitem>Muuda faile</guimenuitem></menuchoice>. See annab käsu </para>
<para>
<screen><command>cvs edit <replaceable>failinimed</replaceable></command></screen>
</para>
<para>Ühtlasi saadab see teadaande kõigile, kes on antud failile määranud jälgija <literal>redigeerimine</literal>. Samuti registreeritakse sind faili <emphasis>redigeerijana</emphasis>. Kõigi mingi faili redigeerijate nimekiri on võimalik saada menüükäsuga <menuchoice><guimenu>Muud</guimenu><guimenuitem>Näita muutjaid</guimenuitem></menuchoice>. See võrdub käsurea korraldusega </para>
<para>
<screen><command>cvs editors <replaceable>failinimed</replaceable></command></screen>
</para>
<para>Redigeerimisseanss lõpeb automaatselt, kui teed antud faili sissekande. Sel hetkel saadetakse teadaanne <literal>unedit</literal> kõigile, kes on antud faili jälgimise sisse lülitanud. Vahel võib mõistagi juhtuda, et sa ei soovi faili sisse kanda, vaid hoopis redigeerimisseansi lõpetada ja taastada faili varasema versiooni. Seda saab teha menüükäsuga <menuchoice><guimenu>Muud</guimenu><guimenuitem>Loobu muutustest</guimenuitem></menuchoice>. Arvesta, et &cervisia; küsib selle peale, kas sa seda tõesti soovid. Selle menüükäsu kasutamine tähendab, et kõik muutused, mida oled teinud alates menüükäsu <menuchoice><guimenu>Muud</guimenu><guimenuitem>Muuda faile</guimenuitem></menuchoice> kasutamisest, lähevad kaotsi. Kui olla täpne, annab &cervisia; sellel puhul käsu </para>
<para>
<screen><command>echo y | cvs unedit <replaceable>failinimed</replaceable></command></screen>
</para>
<para>Seni oleme rääkinud juhtumitest, kus arendajad kasutavad failide muutmise ja muutustest loobumise võimalust vabatahtlikult. Lisaks sellele toetab &CVS; meetodit, mis <emphasis>sunnib peale</emphasis> nende käskude kasutamise. Selle meetodi kasutamise käsk on <command>cvs watch on</command>, millel me pikemalt ei peatu, sest seda kasutab ennekõike hoidla administraator. Kuid arendaja seisukohalt on oluline tähele panna, et kui projekt sunnib faili muutmise käsu peale, tehakse töökoopia väljavõtted ainult <emphasis>lugemisõigusega</emphasis> (readonly). See tähendab, et vaikimisi ei ole võimalik faili redigeerida (kui sa just ei kasuta mõnda möödahiilimisvõimalust, näiteks <command>chmod</command>). Failile tekib kirjutamisõigus alles menüükäsu <menuchoice><guimenu>Muud</guimenu><guimenuitem>Muuda faile</guimenuitem></menuchoice> kasutamisel. See omandab taas vaid lugemisõiguse niipea, kui oled faili sisse kandnud või kasutanud menüükäsku <menuchoice><guimenu>Muud</guimenu><guimenuitem>Loobu muutustest</guimenuitem></menuchoice>. </para>
<para>&cervisia; redaktoriliides võib jälgijaid peale sundivate projektide korral abiks olla veel ühel viisil. Kui käivitasid redaktori vaid lugemisõigusega failiga sellel topeltklõpsu tehes või menüükäsku <menuchoice><guimenu>Fail</guimenu><guimenuitem>Redigeeri</guimenuitem></menuchoice> pruukides, ei saa sa tehtud muudatusi hiljem salvestada. Sellel on mõistagi oma põhjus: kui sa soovid faili muuta, pead kasutama käsku <command>cvs edit</command>, et need, kes antud faili jälgivad, saaksid teada, et oled asunud selle kallal tööle. </para>
<para>Sellisel juhul on soovitav lülitada sisse võimalus <menuchoice><guimenu>Seadistused</guimenu><guimenuitem>Automaatse redigeerimise lubamine (cvs edit)</guimenuitem></menuchoice>. Kui nüüd failil topeltklõpsu teed, annab &cervisia; enne redaktori käivitamist käsu <command>cvs edit</command>. Seejärel saad faili vabalt redigeerida. Kui oled töö lõpetanud, tee sissekanne ning sissekantud failid on taas vaid lugemisõigusega. </para>
</sect1>
<sect1 id="locking">
<title>Lukustamine</title>
<para>&CVS;i kasutamisel tavapäraselt rakendatav arendusmudel on <emphasis>piiramatud väljavõtted</emphasis>. Igal arendajal on oma liivakast, kus ta saab faile oma suva järgi redigeerida. Kui kasutatakse jälgimisvõimalusi, näiteks <command>cvs edit</command>, võib mitu arendajat failidega sünkroonselt töötada. Teise arendaja tehtud muudatused ühendatakse kohalikku liivakasti, kui faili värskendad. </para>
<para>Muud versioonikontrolli süsteemid, näiteks <acronym>RCS</acronym> ja <application>SourceSafe</application>, kasutavad teistsugust meetodit. Kui arendaja soovib faili redigeerida, peab ta selle <emphasis>lukustama</emphasis>. See tähendab, et korraga saab üht faili redigeerida vaid üks arendaja. Kui ta redigeerimise lõpetab, lukustus eemaldatakse. Ühelt poolt ei saa sellise meetodi korral kunagi ette tulla konflikte. Teisalt ei saa aga kaks arendajat korraga ühe faili kallal töötada isegi juhul, kui nad töötavad faili erinevate osade kallal. See võib tööd aeglustada. Siin ei ole õige koht arutada nende meetodite organisatoorsete plusside ja miinuste üle. Tasub siiski mainida, et kuigi &CVS; pakub lukustamisele teatud tuge, ei ole see &CVS;i korral sugugi eelistatud töömeetod. Seda ei peaks kasutama, kui sa ei ole just kindel, et projekti haldur seda soosib. </para>
<para>&cervisia;s saab faile lukustada järgmiselt. Vali peaaknas vajalik fail. Seejärel kasuta menüükäsku <menuchoice><guimenu>Muud</guimenu><guimenuitem>Lukusta failid</guimenuitem></menuchoice>. See annab käsu </para>
<para>
<screen><command>cvs admin -l <replaceable>failinimed</replaceable></command></screen>
</para>
<para>Vastupidise toimingu sooritamiseks kasuta menüükäsku <menuchoice><guimenu>Muud</guimenu><guimenuitem>Eemalda lukustus</guimenuitem></menuchoice>. See annab käsu</para>
<para>
<screen><command>cvs admin -u <replaceable>failinimed</replaceable></command></screen>
</para>
</sect1>
</chapter>
<chapter id="customization">
<title>&cervisia; seadistamine</title>
<para>&cervisia;t saab vastavalt kasutaja vajadustele ja eelistustele mitmeti kohandada. Mõningad võimalused, mida võib olla vajadus sageli muuta, on kättesaadavad menüüs <guimenu>Seadistused</guimenu>. Teised on koondatud dialoogi, mis avaneb menüükäsuga <menuchoice><guimenu>Seadistused</guimenu><guimenuitem>Cervisia seadistamine...</guimenuitem></menuchoice>. </para>
<sect1 id="customize-general">
<title>Üldine</title>
<variablelist>
<varlistentry id="customize-username">
<term><guilabel>Kasutaja andmed ChangeLog failis</guilabel></term>
<listitem><para>Kui kasutad menüükäsku <menuchoice><guimenu>Fail</guimenu><guimenuitem>Lisa ChangeLogi kirje...</guimenuitem></menuchoice>, luuakse uus ChangeLogi kirje käesoleva kuupäeva ja sinu kasutajanimega. Üldiselt peetakse heaks tooniks lisada igale ChangeLogi kirjele enda täielik nimi ja e-posti aadress. &cervisia; lisab need automaatselt, kui sa nad siin ära määrad. </para></listitem>
</varlistentry>
<varlistentry id="customize-cvspath">
<term><guilabel>CVS-i rakenduse asukoht või 'cvs':</guilabel></term>
<listitem><para>Siin saab määrata <command>cvs</command> käsureakliendi nime või otsingutee. Vaikimisi kasutab &cervisia; &CVS;-i käivitatavat faili, mis asub sinu otsinguteel (<envar>$PATH</envar>). </para></listitem>
</varlistentry>
</variablelist>
</sect1>
<sect1 id="customize-diff">
<title>Võrdluse näitaja</title>
<variablelist>
<varlistentry id="customize-context">
<term><guilabel>Kontekstiridade arv võrdlemise dialoogis:</guilabel></term>
<listitem><para>&cervisia; kasutab võrdlemisdialoogis käsul <command>diff</command> võtit <option>-U</option>. Selle tulemusena näitab <command>diff</command> igas erinevuse piirkonnas ainult piiratud arvu ridu. Siin saab määrata võtme <option>-U</option> parameetri. </para></listitem>
</varlistentry>
<varlistentry id="customize-diffopt">
<term><guilabel>Võrdlemise lisavalikud:</guilabel></term>
<listitem><para>Siin saab anda käsu <command>diff</command> lisavõtmed. Üsna levinud on võti <option>-b</option>, milel peale <command>diff</command> ignoreerib erinevusi tühikute arvus. </para></listitem>
</varlistentry>
<varlistentry id="customize-tabwidth">
<term><guilabel>Tabulaatori laius võrdlusdialoogis:</guilabel></term>
<listitem><para>Võrdlemise dialoogis hõlmavad sinu failis või käsu <command>diff</command> väljundis leiduvad tabeldusmärgid teatud kindla ruumi. Vaikimisi on selleks kaheksa märgi ruum, kuid siin saab määrata ka muu suuruse. </para></listitem>
</varlistentry>
<varlistentry id="customize-difffrontend">
<term><guilabel>Väline võrdlemise kasutajaliides:</guilabel></term>
<listitem><para>Kui kasutad mingeid võrdlusdialoogi avavaid võimalusi, näiteks <menuchoice><guimenu>Vaade</guimenu><guimenuitem>Erinevus hoidlast...</guimenuitem></menuchoice>, kutsub &cervisia; välja välise võrdlemise kasutajaliidese. Kui mõni neist on sulle eriti meelepärane, näiteks <application>Kompare</application>, <application>TkDiff</application> või <application>xxdiff</application>, saad selle siin määrata. </para></listitem>
</varlistentry>
</variablelist>
</sect1>
<sect1 id="customize-status">
<title>Olek</title>
<variablelist>
<varlistentry id="customize-startstatus-remote">
<term><guilabel>Kaughoidla liivakasti avamisel käivitatakse Fail->Olek automaatselt</guilabel></term>
<listitem><para>Selle märkimisel käivitatakse alati käsk <menuchoice><guimenu>Fail</guimenu><guimenuitem>Olek</guimenuitem></menuchoice>, kui avad liivakasti. Et see käsk võtab veidi aega ning vajab ühendust kaughoidla serverisse (mistõttu ei ole eriti mõttekas võrguühenduse puudumise korral), on vahest parem määrata see kohaliku ja kaughoidla jaoks erinev. </para></listitem>
</varlistentry>
<varlistentry id="customize-startstatus-local">
<term><guilabel>Lokaalhoidla liivakasti avamisel käivitatakse Fail->Olek automaatselt</guilabel></term>
<listitem><para>Selle sisselülitamisel käivitatakse kohaliku liivakasti avamisel alati käsk <menuchoice><guimenu>Fail</guimenu><guimenuitem>Olek</guimenuitem></menuchoice>. </para></listitem>
</varlistentry>
</variablelist>
</sect1>
<sect1 id="customize-advanced">
<title>Täpsem</title>
<variablelist>
<varlistentry id="customize-timeout">
<term><guilabel>Edenemisdialoogi näitamise ajavahemik (millisekundites):</guilabel></term>
<listitem><para>Sisuliselt kõik liivakastis käivitatud &CVS; käsud, mis puudutavad kaughoidlat, nõuavad ühendust &CVS; serveriga. Seda mõjutab ühenduse kiirus või ka näiteks serveri koormus. Seepärast avab &cervisia; selliste käskude puhul, nagu <menuchoice><guimenu>Vaade</guimenu><guimenuitem>Erinevus hoidlast...</guimenuitem></menuchoice>, dialoogi, mis näitab, et käsku veel täidetakse, ja ühtlasi võimaldab käsu täitmisest loobuda. Lisaks võimaldab dialoog näha &CVS;i veateateid. Et selline dialoog võib muutuda ka tüütavaks, näidatakse seda alles pärast teatud aja möödumist, milleks on vaikimisi 4 sekundit. Siin saab seda aega muuta. </para></listitem>
</varlistentry>
<varlistentry id="customize-compression">
<term><guilabel>Pakkimise tase vaikimisi:</guilabel></term>
<listitem><para><command>cvs</command> klient tihendab failid ja paigad, kui peab neid võrgus edastama. Pakkimise taseme seab käsurea võti <option>-z</option>. Siin saab määrata &cervisia; seda võtit konkreetsel tasemel kasutama. Siin määratud väärtust kasutatakse ainult vaikimisi, lisaks on hoidlate kaupa võimalik see määrata menüükäsuga <menuchoice><guimenu>Hoidla</guimenu><guimenuitem>Hoidlad...</guimenuitem></menuchoice>. </para></listitem>
</varlistentry>
<varlistentry id="customize-sshagent">
<term><guilabel>Kasutatakse töötavat või käivitatakse uus ssh-agent protsess</guilabel></term>
<listitem><para>Märgi see kast, kui kasutad <link linkend="rsh">ext (rsh) hoidlaid</link>, &ssh; kaugshelli hoidlaga suhtlemiseks ning programmi <application>ssh-agent</application> oma võtmete haldamiseks. </para></listitem>
</varlistentry>
</variablelist>
</sect1>
<sect1 id="customize-look">
<title>Välimus</title>
<variablelist>
<varlistentry id="customize-protocolfont">
<term><guilabel>Protokolliakna font...</guilabel></term>
<listitem><para>Sellele nupule klõpsates avaneb dialoog <guilabel>Fondi määramine</guilabel>, milles saab valida fondi, mida kasutatakse protokolliaknas. See on aken, mis näitab <command>cvs</command> kliendi väljundit. </para></listitem>
</varlistentry>
<varlistentry id="customize-annotatefont">
<term><guilabel>Annotatsiooniakna font...</guilabel></term>
<listitem><para>Sellele nupule klõpsates avaneb dialoog <guilabel>Fondi määramine</guilabel>, milles saab valida fondi, mida kasutatakse <link linkend="annotate">annotatsioonivaates</link>. </para></listitem>
</varlistentry>
<varlistentry id="customize-difffont">
<term><guilabel>Võrdlemisakna font...</guilabel></term>
<listitem><para>Sellele nupule klõpsates avaneb dialoog <guilabel>Fondi määramine</guilabel>, milles saab valida fondi, mida kasutatakse <link linkend="diff">võrdlusdialoogides</link>. </para></listitem>
</varlistentry>
<varlistentry id="customize-colors">
<term><guilabel>Värvid</guilabel></term>
<listitem><para>Klõps värvinuppudel avab dialoogi <guilabel>Värvi valimine</guilabel>, millega saab määrata värvi, mida kasutatakse peaaknas olekute <guilabel>Konflikt</guilabel>, <guilabel>Kohalik muudatus</guilabel> või <guilabel>Kaugmuudatus</guilabel> ning &cervisia; sisseehitatud võrdlusliideses olekute <guilabel>Võrdluse muudatus</guilabel>, <guilabel>Võrdluse lisamine</guilabel> või <guilabel>Võrdluse kustutamine</guilabel> näitamiseks. </para></listitem>
</varlistentry>
<varlistentry id="customize-splitter">
<term><guilabel>Peaaken poolitatakse rõhtsalt</guilabel></term>
<listitem><para>&cervisia; peaaken on tavaliselt jagatud vertikaalselt ülal asuvaks failipuuks ja all asuvaks &CVS;-i väljundi osaks. Siin saab aknad korraldada horisontaalselt. </para></listitem>
</varlistentry>
</variablelist>
</sect1>
</chapter>
<chapter id="appendix">
<title>Lisa</title>
<sect1 id="ignoredfiles">
<title>Ignoreeritavad failid</title>
<para>&cervisia; ei näita oma peamises failipuus sugugi mitte kõiki seal tegelikult leiduvaid faile. See on sarnane käsule <command>cvs</command>, aidates ära hoida asjatut segadust, kui vaadet risustavad ebavajalikud asjad, näiteks objektifailid. &cervisia; püüab selles osas võimalikult hästi jäljendada käsku <command>cvs</command>, s.t. hankida ignoreeritavate failide nimekirjad järgmistest allikatest: </para>
<itemizedlist>
<listitem><para>Kirjete staatiline nimekiri, kus on sellised elemendid, nagu failid laiendiga <literal role="extension">.o</literal> ja <filename>core</filename>. Täpsemat infot leiab &CVS;i käsiraamatust. </para></listitem>
<listitem><para>Failist <filename><envar>$HOME</envar>/.cvsignore</filename>. </para></listitem>
<listitem><para>Keskkonnamuutujast <envar>$CVSIGNORE</envar>. </para></listitem>
<listitem><para>Failist <filename>.cvsignore</filename> vastavas kataloogis. </para></listitem>
</itemizedlist>
<para><command>cvs</command> uurib lisaks veel kirjeid failis <filename><envar>$CVSROOT</envar>/CVSROOT/cvsignore</filename>, kuid see fail asub serveril ning &cervisia; peab olema võimeline käivituma ka võrguühenduse puudumisel. Kui töötad grupis, mis eelistab kasutada serveril asuvat ignoreeritavate failide nimekirja, on arvatavasti kasulik vaadata üle, mis seal seisab, ning asetada vastavad mustrid oma kodukataloogis faili <filename>.cvsignore</filename>. </para>
</sect1>
<sect1 id="information">
<title>Täiendav info ja abi</title>
<itemizedlist>
<listitem><para>&CVS; pakub põhjalikku dokumentatsiooni infolehekülgede näol, mis kannab nimetust "The Cederqvist". Kui see on korrektselt paigaldatud, saab seda sirvida, kui kirjutada rakenduse <application>kdehelp</application> või <application>khelpcenter</application> asukohareale <userinput>info:/cvs</userinput>. Samuti võib lihtsalt valida &cervisia; menüükäsu <menuchoice><guimenu>Abi</guimenu><guimenuitem>CVSi info</guimenuitem></menuchoice>. Cederqvisti võib leida ka HTML versioonina <ulink url="http://cvshome.org/docs/manual/cvs.html">internetis</ulink>. </para>
<para>Et seda raamatut hooldatakse koos &CVS;iga, kajastab see üldjuhul uusimat infot. Siiski on soovitatav lugeda ka mõningaid muid materjale, kui soovid &CVS;i kasutama õppida, eriti just järgmisi. </para></listitem>
<listitem><para>Karl Fogel on kirjutanud suurepärase raamatu <ulink url="http://cvsbook.red-bean.com/index.html">Open Source Development with CVS</ulink> (<quote>Vaba tarkvara arendamine CVSi abil</quote>). Umbes pool raamatust on pühendatud vaba tarkvara arenamisele. Teine pool kujutab endast &CVS;i tehnilist dokumentatsiooni. Tänuväärsel kombel on raamatu tehniline osa vabalt levitatav vastavalt GPLi tingimustele, nii et selle HTML versiooni võib iga soovija endale ise tõmmata. Ülalmainitud veebileheküljel on saadaval ka vigade nimekiri. </para></listitem>
<listitem><para>&CVS;i teemadele on pühendatud omaette <ulink url="http://mail.gnu.org/mailman/listinfo/info-cvs">meililist</ulink>. </para></listitem>
<listitem><para>Seadistuse haldamisele üldiselt on pühendatud USENETi grupp <literal>comp.software.config-mgmt</literal>. &CVS; on seal suhteliselt kõrvaline teema, kuid seal võib leida vägagi huvitavat materjali teiste versioonikontrolli süsteemide kohta ning nende võrdlust &CVS;iga. </para></listitem>
<listitem><para>Ning viimase, kuid sugugi mitte tähtsusetuimana on olemas ka (paraku üsna väheaktiivne) <ulink url="http://lists.sourceforge.net/mailman/listinfo/cervisia-user">&cervisia; meililist</ulink>. </para></listitem>
</itemizedlist>
</sect1>
<sect1 id="commandreference">
<title>Käskude seletused</title>
<!-- File Menu -->
<sect2 id="menufile">
<title>Menüü Fail</title>
<variablelist>
<varlistentry>
<term><menuchoice><guimenu>Fail</guimenu> <guimenuitem>Ava liivakast...</guimenuitem> </menuchoice></term>
<listitem><para>Avab peaaknas liivakasti. Vaata <xref linkend="mainscreen"/>. </para></listitem>
</varlistentry>
<varlistentry>
<term><menuchoice><guimenu>Fail</guimenu> <guimenuitem>Hiljutised liivakastid</guimenuitem> </menuchoice></term>
<listitem><para>Võimalus avada mõni hiljuti kasutatud liivakastidest. </para></listitem>
</varlistentry>
<varlistentry>
<term><menuchoice><guimenu>Fail</guimenu><guimenuitem>Lisa ChangeLogi kirje...</guimenuitem> </menuchoice></term>
<listitem><para>Avab ChangeLogi redaktori, kus saab kohe lisada uue käesoleva kuupäevaga kirje. Vaata <xref linkend="committingfiles"/>. </para></listitem>
</varlistentry>
<varlistentry>
<term><menuchoice><shortcut><keycombo><keycap>&Ctrl;</keycap><keycap>U</keycap></keycombo></shortcut> <guimenu>Fail</guimenu> <guimenuitem>Värskenda</guimenuitem> </menuchoice></term>
<listitem><para>Rakendab valitud failidele käsku 'cvs update' ning muudab vastavalt nende olekut ja versiooninumbrit. Vaata <xref linkend="mainscreen"/>. </para></listitem>
</varlistentry>
<varlistentry>
<term><menuchoice><shortcut><keycap>F5</keycap></shortcut> <guimenu>Fail</guimenu><guimenuitem>Olek</guimenuitem> </menuchoice></term>
<listitem><para>Rakendab valitud failidele käsku 'cvs -n update' ning muudab vastavalt nende olekut ja versiooninumbrit. Vaata <xref linkend="mainscreen"/>. </para></listitem>
</varlistentry>
<varlistentry>
<term><menuchoice><guimenu>Fail</guimenu><guimenuitem>Redigeeri</guimenuitem> </menuchoice></term>
<listitem><para>Avab valitud faili KDE antud failitüübile määratud vaikeredaktoris. </para></listitem>
</varlistentry>
<varlistentry>
<term><menuchoice><guimenu>Fail</guimenu><guimenuitem>Lahenda...</guimenuitem> </menuchoice></term>
<listitem><para>Avab valitud faili dialoogis, kus saab lahendada ühendamisel tekkinud konflikte. Vaata <xref linkend="resolvingconflicts"/>. </para></listitem>
</varlistentry>
<varlistentry>
<term><menuchoice><shortcut><keycap>#</keycap></shortcut> <guimenu>Fail</guimenu><guimenuitem>Tee sissekanne...</guimenuitem> </menuchoice></term>
<listitem><para>Võimaldab valitud failid sisse kanda. Vaata <xref linkend="committingfiles"/>. </para></listitem>
</varlistentry>
<varlistentry>
<term><menuchoice><shortcut><keycap>+</keycap></shortcut> <guimenu>Fail</guimenu><guimenuitem>Lisa hoidlasse...</guimenuitem> </menuchoice></term>
<listitem><para>Võimaldab lisada valitud failid hoidlasse. Vaata <xref linkend="addingfiles"/>. </para></listitem>
</varlistentry>
<varlistentry>
<term><menuchoice><guimenu>Fail</guimenu><guimenuitem>Lisa binaarfail...</guimenuitem> </menuchoice></term>
<listitem><para>Võimaldab lisada valitud failid hoidlasse binaarkujul (<command>cvs add <option>-kb</option></command>). Vaata <xref linkend="addingfiles"/>. </para></listitem>
</varlistentry>
<varlistentry>
<term><menuchoice><shortcut><keycap>-</keycap></shortcut> <guimenu>Fail</guimenu><guimenuitem>Eemalda hoidlast...</guimenuitem> </menuchoice></term>
<listitem><para>Võimaldab eemaldada valitud failid hoidlast. Vaata <xref linkend="removingfiles"/>. </para></listitem>
</varlistentry>
<!--TODO: add the revert action to the working with files chapter -->
<varlistentry>
<term><menuchoice><guimenu>Fail</guimenu><guimenuitem>Hangi vanem versioon</guimenuitem> </menuchoice></term>
<listitem><para>Tühistab kõik kohalikus liivakastis valitud faili(de)s tehtud muudatused ning taastab versiooni hoidla põhjal (käsk <command>cvs update</command> võtmega <option>-C</option>). </para></listitem>
</varlistentry>
<varlistentry>
<term><menuchoice><shortcut><keycombo><keycap>&Ctrl;</keycap><keycap>Q</keycap></keycombo></shortcut> <guimenu>Fail</guimenu><guimenuitem>Välju</guimenuitem> </menuchoice></term>
<listitem><para>Lõpetab &cervisia; töö </para></listitem>
</varlistentry>
</variablelist>
</sect2>
<!-- View Menu -->
<sect2 id="menuview">
<title>Vaatemenüü</title>
<variablelist>
<varlistentry>
<term><menuchoice><shortcut><keycap>Escape</keycap></shortcut> <guimenu>Vaade</guimenu><guimenuitem>Peata</guimenuitem> </menuchoice></term>
<listitem><para>Peatab kõik töötavad alamprotsessid. </para></listitem>
</varlistentry>
<varlistentry>
<term><menuchoice><shortcut><keycombo><keycap>&Ctrl;</keycap><keycap>L</keycap></keycombo></shortcut> <guimenu>Vaade</guimenu><guimenuitem>Näita logifaili...</guimenuitem> </menuchoice></term>
<listitem><para>Avab valitud failiversioonide logisirvija. Vaata <xref linkend="browsinglogs"/>. </para></listitem>
</varlistentry>
<varlistentry>
<term><menuchoice><shortcut><keycombo><keycap>&Ctrl;</keycap><keycap>A</keycap></keycombo></shortcut> <guimenu>Vaade</guimenu> <guimenuitem>Näita annotatsiooni...</guimenuitem> </menuchoice></term>
<listitem><para>Näitab valitud faili annotatsioonivaadet, s.t. vaadet, kus iga rea puhul on näha, kes seda viimati redigeeris. Vaata <xref linkend="annotate"/>. </para></listitem>
</varlistentry>
<varlistentry>
<term><menuchoice><shortcut><keycombo><keycap>&Ctrl;</keycap><keycap>D</keycap></keycombo></shortcut> <guimenu>Vaade</guimenu><guimenuitem>Erinevus hoidlast (BASE)...</guimenuitem> </menuchoice></term>
<listitem><para>Näitab erinevusi liivakastis valitud faili ja viimati värskendatud versiooni (BASE) vahel. Vaata <xref linkend="diff"/>. </para></listitem>
</varlistentry>
<varlistentry>
<term><menuchoice><shortcut><keycombo><keycap>&Ctrl;</keycap><keycap>D</keycap></keycombo></shortcut> <guimenu>Vaade</guimenu><guimenuitem>Erinevus hoidlast (HEAD)...</guimenuitem> </menuchoice></term>
<listitem><para>Näitab erinevusi livakastis valitud faili ja viimati värskendatud versiooni (HEAD) vahel. Vaata <xref linkend="diff"/>. </para></listitem>
</varlistentry>
<varlistentry>
<term><menuchoice><guimenu>Vaade</guimenu><guimenuitem>Viimane muudatus...</guimenuitem> </menuchoice></term>
<listitem><para>Näitab erinevusi valitud faili viimati värskendatud versiooni (BASE) ja sellele eelneva versiooni vahel. Vaata <xref linkend="diff"/>. </para></listitem>
</varlistentry>
<varlistentry>
<term><menuchoice><guimenu>Vaade</guimenu><guimenuitem>Ajalugu...</guimenuitem> </menuchoice></term>
<listitem><para>Näitab &CVS;-i ajalugu, nagu server selle tagastab. Vaata <xref linkend="browsinghistory"/>. </para></listitem>
</varlistentry>
<!--TODO: add hide menus to mainscreen section-->
<varlistentry>
<term><menuchoice><guimenu>Vaade</guimenu><guimenuitem>Peida kõik failid</guimenuitem> </menuchoice></term>
<listitem><para>Valimisel näidatakse peaaknas ainult katalooge. Vaata <xref linkend="mainscreen"/>. </para></listitem>
</varlistentry>
<varlistentry>
<term><menuchoice><guimenu>Vaade</guimenu><guimenuitem>Peida muutmata failid</guimenuitem> </menuchoice></term>
<listitem><para>Valimisel peidetakse peaaknas tundmatud ja värsked failid. Vaata <xref linkend="mainscreen"/>. </para></listitem>
</varlistentry>
<varlistentry>
<term><menuchoice><guimenu>Vaade</guimenu><guimenuitem>Peida eemaldatud failid</guimenuitem> </menuchoice></term>
<listitem><para>Valimisel peidetakse peaaknas eemaldatud failid. Vaata <xref linkend="mainscreen"/>. </para></listitem>
</varlistentry>
<varlistentry>
<term><menuchoice><guimenu>Vaade</guimenu><guimenuitem>Peida CVSivälised failid</guimenuitem> </menuchoice></term>
<listitem><para>Valimisel peidetakse peaaknas failid, mida pole CVS-is. Vaata <xref linkend="mainscreen"/>. </para></listitem>
</varlistentry>
<varlistentry>
<term><menuchoice><guimenu>Vaade</guimenu><guimenuitem>Peida tühjad kataloogid</guimenuitem> </menuchoice></term>
<listitem><para>Valimisel peidetakse peaaknas nähtavate kirjeteta kataloogid. Vaata <xref linkend="mainscreen"/>. </para></listitem>
</varlistentry>
<varlistentry>
<term><menuchoice><guimenu>Vaade</guimenu><guimenuitem>Rulli failipuu lahti</guimenuitem> </menuchoice></term>
<listitem><para>Avab failipuu kõik harud, nii et näha on kõik failid ja kataloogid. Vaata <xref linkend="mainscreen"/>. </para></listitem>
</varlistentry>
<varlistentry>
<term><menuchoice><guimenu>Vaade</guimenu><guimenuitem>Rulli failipuu kokku</guimenuitem> </menuchoice></term>
<listitem><para>Sulgeb failipuu kõik harud. Vaata <xref linkend="mainscreen"/>. </para></listitem>
</varlistentry>
</variablelist>
</sect2>
<!-- Advanced Menu -->
<sect2 id="menuadvanced">
<title>Menüü Muud</title>
<variablelist>
<varlistentry>
<term><menuchoice><guimenu>Muud</guimenu><guimenuitem>Silt/haru...</guimenuitem> </menuchoice></term>
<listitem><para>Valitud failidele sildi või haru omistamine. Vaata <xref linkend="taggingbranching"/>. </para></listitem>
</varlistentry>
<varlistentry>
<term><menuchoice><guimenu>Muud</guimenu><guimenuitem>Eemalda silt...</guimenuitem> </menuchoice></term>
<listitem><para>Eemaldab valitud failidelt konkreetse sildi. Vaata <xref linkend="taggingbranching"/>. </para></listitem>
</varlistentry>
<varlistentry>
<term><menuchoice><guimenu>Muud</guimenu><guimenuitem>Värskenda sildi/kuupäeva järgi...</guimenuitem> </menuchoice></term>
<listitem><para>Annab valitud failidele konkreetse sildi või kuupäeva, muutes selle kleepuvaks. Vaata <xref linkend="updatingto"/>. </para></listitem>
</varlistentry>
<varlistentry>
<term><menuchoice><guimenu>Muud</guimenu><guimenuitem>Värskenda HEAD-harusse...</guimenuitem> </menuchoice></term>
<listitem><para>Annab valitud failidele vastava HEAD versiooni. Vaata <xref linkend="updatingto"/>. </para></listitem>
</varlistentry>
<varlistentry>
<term><menuchoice><guimenu>Muud</guimenu><guimenuitem>Ühenda...</guimenuitem> </menuchoice></term>
<listitem><para>Ühendab konkreetse haru või kahe sildi vahelised muudatused valitud failidesse. Vaata <xref linkend="taggingbranching"/>. </para></listitem>
</varlistentry>
<varlistentry>
<term><menuchoice><guimenu>Muud</guimenu><guimenuitem>Lisa jälgija...</guimenuitem> </menuchoice></term>
<listitem><para>Lisab jälgija valitud failide sündmustele. Vaata <xref linkend="watches"/>. </para></listitem>
</varlistentry>
<varlistentry>
<term><menuchoice><guimenu>Muud</guimenu><guimenuitem>Eemalda jälgija...</guimenuitem> </menuchoice></term>
<listitem><para>Eemaldab jälgija valitud failide sündmustelt. Vaata <xref linkend="watches"/>. </para></listitem>
</varlistentry>
<varlistentry>
<term><menuchoice><guimenu>Muud</guimenu><guimenuitem>Näita jälgijaid</guimenuitem> </menuchoice></term>
<listitem><para>Näitab valitud failide jälgijaid. Vaata <xref linkend="watches"/>. </para></listitem>
</varlistentry>
<varlistentry>
<term><menuchoice><guimenu>Muud</guimenu><guimenuitem>Muuda faile</guimenuitem> </menuchoice></term>
<listitem><para>Rakendab valitud failidele käsku <command>cvs edit</command>. Vaata <xref linkend="watches"/>. </para></listitem>
</varlistentry>
<varlistentry>
<term><menuchoice><guimenu>Muud</guimenu><guimenuitem>Loobu muutustest</guimenuitem> </menuchoice></term>
<listitem><para>Rakendab valitud failidele käsku <command>cvs unedit</command>. Vaata <xref linkend="watches"/>. </para></listitem>
</varlistentry>
<varlistentry>
<term><menuchoice><guimenu>Muud</guimenu><guimenuitem>Näita muutjaid</guimenuitem> </menuchoice></term>
<listitem><para>Rakendab valitud failidele käsku <command>cvs editors</command>. Vaata <xref linkend="watches"/>. </para></listitem>
</varlistentry>
<varlistentry>
<term><menuchoice><guimenu>Muud</guimenu><guimenuitem>Lukusta failid</guimenuitem> </menuchoice></term>
<listitem><para>Lukustab valitud failid. Vaata <xref linkend="locking"/>. </para></listitem>
</varlistentry>
<varlistentry>
<term><menuchoice><guimenu>Muud</guimenu><guimenuitem>Eemalda lukustus</guimenuitem> </menuchoice></term>
<listitem><para>Eemaldab valitud failide lukustuse. Vaata <xref linkend="locking"/>. </para></listitem>
</varlistentry>
<varlistentry>
<term><menuchoice><guimenu>Muud</guimenu><guimenuitem>Loo hoidla suhtes paigafail...</guimenuitem> </menuchoice></term>
<listitem><para>Loob liivakastis tehtud muudatuste põhjal paigafaili. Vaata <xref linkend="creatingpatches"/>. </para></listitem>
</varlistentry>
</variablelist>
</sect2>
<!-- Repository Menu -->
<sect2 id="menurepository">
<title>Menüü Hoidla</title>
<variablelist>
<varlistentry>
<term><menuchoice><guimenu>Hoidla</guimenu><guimenuitem>Loo...</guimenuitem> </menuchoice></term>
<listitem><para>Avab dialoogi, mis võimaldab luua uue kohaliku hoidla. Vaata <xref linkend="accessing-repository"/>. </para></listitem>
</varlistentry>
<varlistentry>
<term><menuchoice><guimenu>Hoidla</guimenu><guimenuitem>Tee väljavõte...</guimenuitem> </menuchoice></term>
<listitem><para>Avab dialoogi, mis võimaldab teha hoidlast mooduli väljavõtte. Vaata <xref linkend="checkingout"/>. </para></listitem>
</varlistentry>
<varlistentry>
<term><menuchoice><guimenu>Hoidla</guimenu><guimenuitem>Impordi...</guimenuitem> </menuchoice></term>
<listitem><para>Avab dialoogi, mis võimaldab importida paketi hoidlasse. Vaata <xref linkend="importing"/>. </para></listitem>
</varlistentry>
<varlistentry>
<term><menuchoice><guimenu>Hoidla</guimenu><guimenuitem>Hoidlad...</guimenuitem> </menuchoice></term>
<listitem><para>Võimaldab seadistada sageli kasutatavaid hoidlaid ja juurdepääsu neile. Vaata <xref linkend="accessing-repository"/>. </para></listitem>
</varlistentry>
</variablelist>
</sect2>
<!-- Settings Menu -->
<sect2 id="menuoptions">
<title>Seadistustemenüü</title>
<variablelist>
<varlistentry>
<term><menuchoice><guimenu>Seadistused</guimenu><guimenuitem>Tööriistariba näitamine</guimenuitem> </menuchoice></term>
<listitem><para>Määrab, kas tööriistariba näidata või mitte. </para></listitem>
</varlistentry>
<varlistentry>
<term><menuchoice><guimenu>Seadistused</guimenu><guimenuitem>Värskendamisel luuakse kataloogid</guimenuitem> </menuchoice></term>
<listitem><para>Määrab, kas värskendamisel luuakse liivakastis kataloogid, mida seal varem polnud (käsu <command>cvs update</command> võti <option>-d</option>). </para></listitem>
</varlistentry>
<varlistentry>
<term><menuchoice><guimenu>Seadistused</guimenu><guimenuitem>Värskendamisel eemaldatakse tühjad kataloogid</guimenuitem> </menuchoice></term>
<listitem><para>Määrab, kas värskendamisel eemaldatakse liivakastist tühjad kataloogid (käsu <command>cvs update</command> võti <option>-P</option>). </para></listitem>
</varlistentry>
<varlistentry>
<term><menuchoice><guimenu>Seadistused</guimenu><guimenuitem>Rekursiivne värskendamine</guimenuitem> </menuchoice></term>
<listitem><para>Määrab, kas värskendamine on rekursiivne (käsu <command>cvs update</command> võti <option>-r</option>). </para></listitem>
</varlistentry>
<varlistentry>
<term><menuchoice><guimenu>Seadistused</guimenu><guimenuitem>Rekursiivne sissekannete tegemine ja eemaldamine</guimenuitem> </menuchoice></term>
<listitem><para>Määrab, kas sissekandmised ja eemaldamised on rekursiivsed (vastavalt käsu <command>cvs add</command> ja <command>cvs remove</command> võti <option>-r</option>). </para></listitem>
</varlistentry>
<varlistentry>
<term><menuchoice><guimenu>Seadistused</guimenu><guimenuitem>Automaatse redigeerimise lubamine (cvs edit)</guimenuitem> </menuchoice></term>
<listitem><para>Määrab, kas käsku <command>cvs edit</command> rakendatakse automaatselt alati, kui faili redigeerid. </para></listitem>
</varlistentry>
<varlistentry>
<term><menuchoice><guimenu>Seadistused</guimenu> <guimenuitem>Kiirklahvide seadistamine...</guimenuitem> </menuchoice></term>
<listitem><para>Avab kiirklahvide seadistamise dialoogi. </para></listitem>
</varlistentry>
<varlistentry>
<term><menuchoice><guimenu>Seadistused</guimenu> <guimenuitem>Tööriistaribade seadistamine...</guimenuitem> </menuchoice></term>
<listitem><para>Avab &cervisia; tööriistaribade seadistamise dialoogi. </para></listitem>
</varlistentry>
<varlistentry>
<term><menuchoice><guimenu>Seadistused</guimenu><guimenuitem>Cervisia seadistamine...</guimenuitem> </menuchoice></term>
<listitem><para>Avab &cervisia; seadistustedialoogi. </para></listitem>
</varlistentry>
</variablelist>
</sect2>
<!-- Help -->
<sect2 id="menuhelp">
<title>Abimenüü</title>
<variablelist>
<varlistentry>
<term><menuchoice><shortcut><keycap>F1</keycap></shortcut> <guimenu>Abi</guimenu><guimenuitem>Käsiraamat</guimenuitem> </menuchoice></term>
<listitem><para>Käivitab KDE abikeskuse &cervisia; käsiraamatuga (sellesamaga, mida praegu loed). </para></listitem>
</varlistentry>
<varlistentry>
<term><menuchoice><guimenu>Abi</guimenu><guimenuitem>Saada vearaport...</guimenuitem> </menuchoice></term>
<listitem><para>Avab veateate saatmise dialoogi. </para></listitem>
</varlistentry>
<varlistentry>
<term><menuchoice><guimenu>Abi</guimenu> <guimenuitem>&cervisia; info</guimenuitem> </menuchoice></term>
<listitem><para>Näitab versiooni ja autorit. </para></listitem>
</varlistentry>
<varlistentry>
<term><menuchoice><guimenu>Abi</guimenu><guimenuitem>KDE info</guimenuitem> </menuchoice></term>
<listitem><para>Näitab KDE versiooni ja muud infot. </para></listitem>
</varlistentry>
<varlistentry>
<term><menuchoice><guimenu>Abi</guimenu><guimenuitem>CVS käsiraamat</guimenuitem> </menuchoice></term>
<listitem><para>Avab KDE abikeskuses &CVS; infoleheküljed. </para></listitem>
</varlistentry>
</variablelist>
</sect2>
</sect1>
</chapter>
<chapter id="credits-and-licenses">
<title>Autorid ja litsents</title>
&underFDL; &underGPL; </chapter>
</book>
|