Install CVS server
Pendahuluan:
Hi semua, sebelumnya saya ingin jelaskan terlebih dahulu apa itu CVS menurut saya, CVS adalah aplikasi berbasiskan open source yang berfungsi sebagai repository dan versioning, CVS dan Subversion adalah sejenis, namun pengembangan subversion jauh diatas CVS, Subversion yang pada materi sebelumnya sudah pernah saya bahas. berikut cara instalasi yang sudah saya pernah coba, jika ada kesalahan mohon dimaafkan dan jika ada pertanyaan mohon langsung PM dengan saya
Skenario
1. dalam hal ini saya buatkan contoh CVS server di install di server 192.168.0.12
2. path root directorynya adalah /home/infra/cvsroot
3. user = infra, passowrd = infra
Saya tidak membahas penggunaan CVS secara detail ya, mohon mencari sendiri caranya di google
INSTALL
CVS SERVER + CLIENT
server side
- install CVS server
#
yum install CVS
atau
tar -zxvf file.tar.gz
cd cvs xxxxx
./configure
make
make install
- create user and group
# groupadd develop
# useradd -M -s /sbin/nologin
infra -G develop
NOTE : untuk membuat user yang
bisa dipakai untuk login hilangkan gunakan useradd infra -G
develop
- cek service CVS
cat /etc/services | grep
2401
cvspserver 2401/tcp
# CVS client/server operations
cvspserver 2401/udp
# CVS client/server operations
- Edit atau Tambahkan file CVS
# vi /etc/xinetd.d/cvs
# default: off
# description: The CVS
service can record the history of your source \
# files. CVS
stores all the versions of a file in a single \
# file in a
clever way that only stores the differences \
# between
versions.
service cvspserver
{
disable
= no
port
= 2401
socket_type
= stream
protocol
= tcp
wait
= no
user
= root
passenv
= PATH
server
= /usr/bin/cvs
env
= HOME=/home/infra/cvsroot
server_args
= -f --allow-root=/home/infra/cvsroot pserver
# bind
= 127.0.0.1
}
bila anda ingin mengganti
default home folder CVS nya, rubah saja pada env dan
server_args
- Restart service xinetd
# /etc/xinetd.d/xinetd restart
pastikan port 2401 sudah open
dengan mengetikkan nmap localhost
- Buat file repositories dan hak akses nya
# cvs -d home/infra/cvsroot
init
# chown -R infra.develop
home/infra/cvsroot
# chmod ug+rwx
home/infra/cvsroot
# chmod o-rwx
home/infra/cvsroot
# chmod g+s home/infra/cvsroot
- buat file untuk generate password agar password ter enkripsi dan random, sebagai contoh saya tempatkan file tersebut di /tmp
# vi random.pl
#!/usr/bin/perl
srand (time());
my $randletter = "(int
(rand (26)) + (int (rand (1) + .5) % 2 ? 65 :97))";
my $salt = sprintf ("%c%c",
eval $randletter, eval $randletter);
my $plaintext = shift;
my $crypttext = crypt
($plaintext, $salt);
print "${crypttext}\n";
ganti premission nya menjadi
# chmod 777 /tmp/random.pl &&
chown .develop /tmp/random.pl
untuk test file tersebut gunakan
perintah berikut
# /tmp/random.pl passwordnya
tdo0P9yxNTGrU → copy kode
tesebut
- buat file untuk mengecek passoword
# cd
/home/infra/cvsroot/CVSROOT
# vi passwd
# echo infra:tdo0P9yxNTGrU >
passwd
# chmod 777
/home/infra/cvsroot/CVSROOT/passwd && chown .develop
/home/infra/cvsroot/CVSROOT/passwd
- edit file config
# cd /home/infra/cvsroot/CVSROOT
# vi config
hilangkan tanda # pada
baris
#SystemAuth=no
Menjadi
SystemAuth=no
- Restart service xinetd
# /etc/xinetd.d/xinetd restart
- edit file modul
# cd
/home/infra/cvsroot/CVSROOT
# echo karir -a background
backup crm crm_login daily data fonts functions htmltoexcel iklan
images jobs library logos logs photos programs request scripts styles
tables utility >> /home/infra/cvsroot/CVSROOT/moduls
Note : perintah diatas menunjukan lingkup folder yang digunakan, jadi jika anda ada keperluan lainnya, anda dapat tambahkan sendiri
- Buat enviroment
login menggunakan user yang
akan dibuatkan enviroment nya (contoh web)
# echo export
CVSROOT=/home/infra/cvsroot >> /home/infra/.bash_profile
Client Side
setting di client (WINCVS)
yang perlu di perhatikan untuk
sisi client adalah path untuk menunjukan CVSROOT, gunakan script
berikut ini
:pserver;username=infra;password=infra;hostname=192.168.0.12:/home/infra/cvsroot
keterangan :
pserver
=adalah protocol yang digunakan
username=adalah
user yang sudah teregistrasi di server
password=adalah
password yang sudah di encrypt (lihat no.7)
hostname=adalah
ipserver/DNS yang terinstall CVS server
CVSROOT=adalah
path yang menunjukan directory repositories di server
beberapa fungsi yang sering
digunakan dalam CVS
- Login = sebuah menu untuk mengetest CVS script
- Logout = sebuah menu untuk mengetest CVS script
- CVScheckout = untuk mengambil / export dari repo
- import modules = untuk upload repositories structure
- update = untuk melakukan perubahan file di server
- commit = untuk permanent kan file yang sudah di rubah
Comments
Post a Comment