Διαφορά μεταξύ των αναθεωρήσεων του "GIT"
Γραμμή 27: | Γραμμή 27: | ||
'W' => { | 'W' => { | ||
'developer1' => 1 | 'developer1' => 1 | ||
+ | }, | ||
+ | 'R' => { | ||
+ | 'developer2' => 1 | ||
+ | }, | ||
+ | 'W' => { | ||
+ | 'developer2' => 1 | ||
}, | }, | ||
'developer1' => [ | 'developer1' => [ |
Τελευταία αναθεώρηση της 16:31, 15 Απριλίου 2017
Προκειμένου να δημιουργήσουμε νέο αποθετήριο π.χ. με όνομα estia με το πακέτο gitolite για πρόσβαση των προγραμματιστών με ονόματα developer1 και developer2 εκτελούμε τις παρακάτω εντολές στο διακομιστή (git hub)
server# cd /var/lib/gitolite server# mkdir -p repositories/estia.git server# cd repositories server# git --bare init estia.git server# cd estia.git/ server# ln -s /usr/share/gitolite/hooks/common/update update server# ln -s /usr/share/gitolite/hooks/common/gitolite-hooked . server# cd .. server# chown -R gitolite:gitolite estia.git server# chmod 755 estia.git/hooks/update server# vi .gitolite/conf/gitolite.conf
προσθέτουυμε στο τέλος του gitolite.conf το παρακάτω
repo estia RW+ = developer1 developer2 server# vi gitolite.conf-compiled.pm
προσθέτουυμε στο τέλος του gitolite.conf-compiled.pm το παρακάτω. Προσοχή στο σημείο που περιέχει τη δήλωση refs/.* για κάθε χρήστη πρέπει να υπάρχει μοναδικός αύξοντας αριθμός π.χ. για το επόμενο repo 995. ,
'estia' => { 'R' => { 'developer1' => 1 }, 'W' => { 'developer1' => 1 }, 'R' => { 'developer2' => 1 }, 'W' => { 'developer2' => 1 }, 'developer1' => [ [ 995, 'refs/.*', 'RW+' ] ] 'developer2' => [ [ 996, 'refs/.*', 'RW+' ] ] }
μετά πηγαίνουμε στον client δηλαδή τον προσωπικό μας υπολογιστή. Τρέχουμε το git client δημιουργούμε ένα φάκελο με το όνομα του νέου project μας π.χ.estia πληκτρολογώντας
$ mkdir estia $ git clone ssh://gitolite@{Server FQDN or IP address}:{TCP/IP port No}/estia estia
ΠΡΟΣΟΧΗ! Στο γονικό φάκελο πρέπει να υπάρχει ένας κρυφός φάκελος με όνομα .ssh που περιέχει π.χ. το αρχείο id_rsa που περιέχει το ιδιωτικό κλειδί του χρήστη και το δημόσιο κλειδί π.χ. στο αρχείο με όνομα id_rsa.pub που από πριν δημιουργήσαμε π.χ. με το PuTTYgen. Tο βασικό αρχείο είναι το known_hosts που εκεί μέσα δηλώνεται ο git server μαζί με το public key του χρήστη ssh που θα έχει πρόσβαση στο αποθετήριο. Η ίδια δήλωση υπάρχει στο authorized_keys που βρίσκεται στον αντίστοιχο φάκελο .ssh μέσα στο γονικό φάκελο του gitolite του server του git hub μόνο που αντί για τη διεύθυνση του server δηλώνουμε με κατάλληλη σύνταξη το όνομα χρήστη π.χ. developer1. Εκτελούμε τις παρακάτω εντολές π.χ. για να φορτώσουμε στο git hub τα source files του project μας
$ cd estia $ git add *.pas $ git add *.txt
κοκ για ότι φακέλους θέλουμε να παρακολουθεί το git. Και τέλος εκτελούμε
$ git commit -m -a "ESTIA GIT START"
άπαξ μόνο την πρώτη φορά
$ git push origin master
και βεβαιωνόμαστε ότι μπορούμε να διαβάσουμε το project εκτελώντας
$ git pull
Για να αποθηκεύσουμε τις αλλαγές που κάναμε στο project εκτελούμε κάθε φορά
$ git commit -m -a "ESTIA new routine added" $ git push
Για να δούμε τις αλλαγές μας μπορουμε να εκτελέσουμε το παρακάτω
$ git gui
Στο μενού Αποθετήριο->Απεικόνιση Ιστορικού Όλων των Κλάδων