Πηγές :
apt-get install cvs
Αν δεν ξεκινήσει η αυτόματη ρύθμιση από το πακέτο, εκτελούμε
dpkg-reconfigure cvs
Έστω ότι θέλουμε να δημιουργήσουμε ένα νέο φάκελο με αρχεία στα οποία θα υπάρχει έλεγχος εκδόσεων κεντρικά από τον server και θα μπορούν πολλοί χρήστες να κάνουν αλλαγές. Ο φάκελος θα έχει όνομα my_cvs_module και θα βρίσκεται στον server κάτω από το /var/lib/cvs/
Θα ορίσουμε προσωρινά τον κατάλογο /var/lib/cvs/my_cvs_module ως CVSROOT (ριζικό κατάλογο CVS)
Ως υπερχρήστης εκτελούμε
export CVSROOT=/var/lib/cvs/my_cvs_module mkdir $CVSROOT
Ορίζουμε ομάδα src,
chown -R root.src $CVSROOT
στην οποία θα προσθέσουμε στην συνέχεια χρήστες, π.χ.
adduser vagelis src adduser manos src
που θα έχουν δικαιώματα εγγραφής στο αποθετήριό μας
chmod -R g+w $CVSROOT
Τέλος αρχικοποιούμε το αποθετήριό μας (η cvs init αρχικοποιεί τον φάκελο που δείχνει η μεταβλητή $CVSROOT)
cvs init
Δημιουργούμε έναν τοπικό φάκελό στον οποίο θα δουλεύουμε
mkdir -p ~/tmp/mycvscheckouts/ cd ~/tmp/mycvscheckouts/ export CVSROOT=/var/lib/cvs/ cvs co my_cvs_module
Εάν δεν είχαμε μηνύματα λάθους σημαίνει ότι η ρύθμιση του cvs server έχει γίνει σωστά
Η σύνδεσή μας θα γίνεται μέσω ssh οπότε θα πρέπει ήδη να λειτουργεί εξυπηρετητής ssh στον server Θα δοκιμάσουμε σύνδεση μέσω ssh τοπικά. (Θα σβήσουμε τον φάκελο my_cvs_module από την προηγούμενη δοκιμή ώστε να είμαστε απόλυτα σίγουροι ότι δουλεύει και μέσω ssh)
cd ~/tmp/mycvscheckouts rm -rf my_cvs_module export CVSROOT=":ext:vagelis@localhost:/var/lib/cvs/" export CVS_RSH=ssh cvs co my_cvs_module vagelis@localhost's password:
Εάν δεν είχαμε μηνύματα λάθους σημαίνει ότι η σύνδεση και μέσω ssh είναι εντάξει Δοκιμάζουμε τέλος σύνδεση από απομακρυσμένο υπολογιστή εκτελώντας τις ίδιες εντολές, αλλάζοντας μόνο το localhost στην εξωτερική διεύθυνση του server
export CVSROOT=":ext:vagelis@localhost:/var/lib/cvs/"
σε π.χ.
export CVSROOT=":ext:vagelis@mydomain.com:/var/lib/cvs/"
Η σύνδεσή μας είναι ασφαλής έτσι όμως χρειάζεται να δίνουμε κάθε φορά το password. Χρησιμοποιώντας κάποιον πελάτη όπως cervisia αυτό θα χρειαζόταν να γίνεται δεκάδες φορές ενώ δουλεύουμε. Για να το αποφύγουμε μπορούμε να ρυθμίσουμε σύνδεση με ssh μέσω κλειδιού όποτε και δεν θα μας ζητείται το password. Για την ρύθμιση αυτή όπως και για την σύνδεση σε ssh server που ακούει σε άλλη θύρα από την 22 δείτε τις παρακάτω οδηγίες : SSH - Ασφαλής απομακρυσμένη σύνδεση σε γραμμή εντολών
Θα εγκαταστήσουμε την γραφική εφαρμογή πελάτη cervisia
aptitude install cervisia
Από το μενού Χώρος Αποθήκευσης/Χώροι Αποθήκευσης επιλέγουμε Προσθήκη και καταχωρούμε τα παρακάτω
Χώρος αποθήκευσης | :ext:vagelis@mydomain.com:/var/lib/cvs |
---|---|
Χρήση απομακρυσμένου κελύφους | ssh |
Από το μενού Χώρος Αποθήκευσης/Έλεγχος Εξόδου (checkout), επιλέγουμε τον χώρο αποθήκευσης που ορίσαμε πριν καθώς και
Άρθρωμα | my_cvs_module |
---|---|
Φάκελος εργασίας | ~/tmp/mycvscheckouts |
Προσοχή ο φάκελος εργασίας να είναι σε σύστημα αρχείων linux (ext2,ext3, κτλ)
Από το μενου Αρχείο/Άνοιγμα Τοπικού Αντιγράφου ανοίγουμε τον τοπικό φάκελο εργασίας ~/tmp/mycvscheckouts/my_cvs_module
Θα προσθέσουμε έναν νέο φάκελο και ένα αρχείο κειμένου στο αποθετήριο και στην συνέχεια ένα αρχείο ως δυαδικού τύπου (π.χ. εικόνα)
Καλό είναι να ενημέρόσουμε όλα τα τοπικά αρχεία και τους φακέλους με τις αλλαγές από το αποθετήριο
Αφού έχουμε κάνει ενημέρωση, μπορούμε να κάνουμε αλλαγές στο τοπικό αρχείο και όταν θελήσουμε να τις καταχωρήσουμε στο αποθετήριο από το μενού Αρχείο/Καταχώρηση