B GIÁO D
O
I H C DÂN L P H I PHÒNG
-------o0o-------
I H C DÂN L P H I PHÒNG
-------o0o-------
H TH NG QU N LÝ PHIÊN B
ÁN T T NGHI
I H C H CHÍNH QUY
Ngành: Công ngh Thông tin
N
I H C DÂN L P H I PHÒNG
-------o0o-------
H TH NG QU N LÝ PHIÊN B
ÁN T T NGHI P
I H C H CHÍNH QUY
Ngành: Công ngh Thông tin
Sinh viên th c hi n: Ph m Trung M nh
ng d n: ThS Nguy n Tr
Mã s sinh viên:
1351010013
N
B GIÁO D
O
I H C DÂN L P H I PHÒNG
C NG HÒA XÃ H I CH
T NAM
c l p - T do - H nh phúc
-------o0o-------
NHI M V THI T K T T NGHI P
Sinh viên: Ph m Trung M nh
L p:
CT1301
Mã SV: 1351010013
Ngành: Công ngh Thông tin
tài: H th ng qu n lý phiên b
n
NHI M V
TÀI
1. N i dung và các yêu c u c n gi i quy t trong nhi m v
tài t t nghi p
a. N i dung
N
c các khái ni
n v qu n lý phiên b n
N
n lý phiên b n
t, th nghi
Nghiêm túc th c hi n các nhi m v và n
b. Các yêu c u c n gi i quy t
Các ph n m m c n thi
xây d ng
Web Server: Xampp
H qu n tr
d li u MySQL.
ng d n.
CÁN B
NG D
TÀI T T NGHI P
ng d n th nh t:
H và tên: Nguy n Tr
H c hàm, h c v : Th
i H c Dân L p H i Phòng
N
ng d
ng d n th hai:
H
H c hàm, h c v
N
ng d
tài t t nghi
Yêu c u ph
n nhi m v
n nhi m v
Sinh viên
Cán b
ng d
ThS Nguy n Tr
HI
NG
n H u Ngh
án t t nghi p
p H i Phòng
PH N NH N XÉT TÓM T T C A CÁN B
Tinh th
c
NG D N
tài t t nghi p:
........................................................................................................................
........................................................................................................................
........................................................................................................................
........................................................................................................................
........................................................................................................................
........................................................................................................................
ng c
ra trong nhi m v
tài t t nghi p (so v i n i dung yêu c
tài t t nghi p)
........................................................................................................................
........................................................................................................................
........................................................................................................................
........................................................................................................................
........................................................................................................................
........................................................................................................................
........................................................................................................................
m c a cán b
ng d n:
m ghi b ng s và ch )
........................................................................................................................
........................................................................................................................
Cán b
ng d n chính
( Ký, ghi rõ h tên )
Ph m Trung M nh - CT1301
1
án t t nghi p
p H i Phòng
tài t t nghi p (v các m
th c t , ...)
lý lu n, thuy t
.............................................................................................................................
.............................................................................................................................
.............................................................................................................................
.............................................................................................................................
.............................................................................................................................
.............................................................................................................................
.............................................................................................................................
.............................................................................................................................
.............................................................................................................................
.............................................................................................................................
.............................................................................................................................
.............................................................................................................................
................................................................................................................2. Cho
m c a cán b ph n bi n
(
m ghi b ng s và ch )
........................................................................................................................
........................................................................................................................
Ngày.....
Cán b ch m ph n bi n
( Ký, ghi rõ h tên )
Ph m Trung M nh - CT1301
2
án t t nghi p
p H i Phòng
M C L C ...................................................................................................................3
DANH M C HÌNH NH ..........................................................................................5
DANH M C CÁC B NG .........................................................................................8
M TS
L IC
L
THU T NG .............................................................................................9
...........................................................................................................10
U ..........................................................................................................11
TH NG QU N LÝ PHIÊN B N ............................................12
.......................12
1.2. Các công c h tr qu n lý phiên b n hi n nay ....................................12
1.3. Gi i thi u...............................................................................................13
1.4. L ch s phát tri n ..................................................................................14
1.5. Các khái ni m và thu t ng quan tr ng ................................................14
.....................................................................................14
c làm vi c ..........................................................................15
1.5.3. Khóa...............................................................................................15
1.5.4. D án, module và t p tin................................................................15
1.5.5. Phân nhánh.....................................................................................16
1.5.6. Ghép t p tin....................................................................................16
1.5.7. Phiên b n........................................................................................16
1.6. Ki n trúc c a h th ng qu n lý phiên b n.............................................17
1.6.1. H th ng qu n lý phiên b n c c b ...............................................17
1.6.2. H th ng qu n lý phiên b n t p trung............................................18
1.6.3. H th ng qu n lý phiên b n phân tán ............................................19
1.6.4. Các thao tác c a h th ng qu n lý phiên b n t p trung .................20
1.6.5. Các thao tác c a h th ng qu n lý phiên b n phân tán..................28
Ph m Trung M nh - CT1301
3
án t t nghi p
p H i Phòng
c x lý..........................................................................29
1.7.1. V
chia s t p tin.....................................................................29
1.7.2. Các gi i pháp khóa
s
i
1.7.3. Các gi i pháp sao chép
m khóa.......................................30
ch nh s a
h p nh t .............................31
T K H TH NG....................................34
2.1. T ng quan v h th ng qu n lý phiên b
2.2. Bài toán qu n lý phiên b
n...............................34
n ......................................................35
2.2.1. Mô t bài toán ................................................................................35
nh mô hình nghi p v ..........................................................35
2.2.3. Phân tích h th ng .........................................................................49
2.2.4. Thi t k h th ng ...........................................................................75
......................................................79
3.1. Gi i thi u ng d ng ..............................................................................79
3.1.1. Thông tin k thu t..........................................................................79
3.1.2. K t qu
c............................................................................79
3.2. Giao di n c
...................................................................79
3.2.1.Giao di
p .......................................................................79
3.2.2.Giao di n qu n lý............................................................................80
3.2.3.Giao di n thêm tài li u....................................................................81
3.2.4.Giao di
i dùng ............................................................82
3.2.5.Giao di n thêm danh m c và b ph n ............................................83
3.2.6.Giao di n tìm ki m .........................................................................83
3.2.7.Checkout t p tin ..............................................................................84
3.2.8.Checkin t p tin ................................................................................84
3.2.9.Xem l ch s t p tin..........................................................................85
K T LU N ...............................................................................................................86
TÀI LI U THAM KH O .......................................................................................87
Ph m Trung M nh - CT1301
4
án t t nghi p
p H i Phòng
h th ng qu n lý phiên b n c c b ........................................17
h th ng qu n lý phiên b n t p trung....................................18
h th ng qu n lý phiên b n phân tán .....................................19
Hình 1.4 : T o m i m t kho
r ng.........................................................20
Hình 1.5: T o m t b n sao làm vi c.................................................................21
Hình 1.6 : Áp d
i trong b n sao v
Hình 1.8 :C p nh t các b n sao làm vi
i m i. .....23
iv
....................23
Hình 1.8 : H th ng qu n lý phiên b n t p trung .............................................28
Hình 1.9 : H th ng qu n lý phiên b n phân tán..............................................28
Hình 1.1
y ..................................................................................29
Hình 1.11 : Thao tác l y ...................................................................................29
Hình 1.12 : V
c n tránh............................................................................30
Hình 1.13: Gi i pháp khóa-s
i-m khóa ...................................................30
Hình 1.14 : Gi i pháp sao chép-ch nh s a-h p nh t ........................................32
Hình 1.15 : Gi i pháp b n sao-ch nh s a-h p nh t (ti p theo) ........................32
Hình 2.1 : Ki n trúc c a m t ng d ng qu n lý phiên b n ..............................34
Hình 2.2 : Mô hình ca s d ng m c t ng quát.................................................38
Hình 2.3: Bi
ca s d
n lý b ph
Hình 2.4 : Bi
ca s d
Hình 2.5 : Bi
ca s d
n lý danh m
Hình 2.6 : Bi
ca s d
n lý tài li
Hình 2.7 : Bi
tu n t th c thi ca s d
Hình 2.8 : Bi
c ng tác th c thi ca s d
b ph n ...................49
Hình 2.9 : Bi
tu n t th c thi ca s d
m b ph
...............................41
Hình 2.10 : Bi
c ng tác th c thi ca s d
Hình 2.11 : Bi
tu n t th c thi ca s d
Hình 2.12 : Bi
c ng tác th c thi ca s d
Hình 2.13 : Bi
c ng tác th c thi ca s d
Ph m Trung M nh - CT1301
......................................39
..................................43
.......................................45
ph
.....................49
..............50
m b ph n ..........50
C p nh tb ph n ...............51
p nh tb ph
............51
b ph n ...................52
5
án t t nghi p
Hình 2.14 : Bi
p H i Phòng
c ng tác th c thi ca s d
b ph n ...................52
n lý b ph n ................................53
Hình 2.16 : Bi
tu n t th c thi ca s d
Thêm danh m c .................54
Hình 2.17 : Bi
c ng tác th c thi ca s d
Thêm danh m c ...............54
Hình 2.18 : Bi
tu n t th c thi ca s d
m danh m c ..........55
Hình 2.19 : Bi
c ng tác th c thi ca s d
m danh m c .......55
Hình 2.20 : Bi
tu n t th c thi ca s d
Hình 2.21 : Bi
c ng tác th c thi ca s d
Hình 2.22 : Bi
tu n t th c thi ca s d
Hình 2.24
p nh t danh m c ...........56
p nh t danh m
.........56
Xóa danh m c ...................57
n lý danh m
.............................58
Hình 2.25 : Bi
tu n t th c thi ca s d
i dùng .............59
Hình 2.26 : Bi
c ng tác th c thi ca s d
Hình 2.27 : Bi
tu n t th c thi ca s d
Hình 2.28 : Bi
c ng tác th c thi ca s d
Hình 2.29 : Bi
tu n t th c thi ca s d
Hình 2.30 : Bi
c ng tác th c thi ca s d
Hình 2.31 : Bi
tu n t th c thi ca s d
i dùng ................62
Hình 2.32 : Bi
c ng tác th c thi ca s d
i dùng ..............62
...........59
m
i dùng .......60
m
i dùng ....60
p nh t
i dùng ........61
p nh t
Hình 2.33 : Mô hình phân tích
i dùng ......61
..........................63
Hình 2.34 : Bi
tu n t th c thi ca s d
.....................63
Hình 2.35
c ng tác th c thi ca s d
u ..................64
Hình 2.36 : Bi
tu n t th c thi ca s d
Hình 2.37 : Bi
c ng tác th c thi ca s d
Hình 2.38 : Bi
tu n t th c thi ca s d
Hình 2.39 : Bi
c ng tác th c thi ca s d
Hình 2.40 : Bi
tu n t th c thi ca s d
Hình 2.41 : Bi
c ng tác th c thi ca s d
Hình 2.42 : Bi
tu n t th c thi ca s d
...............67
Hình 2.43 : Bi
c ng tác th c thi ca s d
.............68
Ph m Trung M nh - CT1301
m tài li
m tài li
p nh t tài li
..............64
............65
................65
p nh t tài li
.............66
.......................66
Xóa tài li
.....................67
6
án t t nghi p
p H i Phòng
Hình 2.44 : Bi
tu n t th c thi ca s d
.................68
Hình 2.45 : Bi
c ng tác th c thi ca s d
...............69
Hình 2.46 : Bi
tu n t th c thi ca s d
Hình 2.47 : Bi
c ng tác th c thi ca s d
Hình 2.48 : Bi
tu n t th c thi ca s d
Hình 2.49 : Bi
c ng tác th c thi ca s d
Hình 2.50 : Bi
tu n t th c thi ca s d
Hình 2.51 : Bi
c ng tác th c thi ca s d
Hình 2.52 : Bi
tu n t th c thi ca s d
Hình 2.53 : Bi
c ng tác th c thi ca s d
Hình 2.54
n lý tài li
ch s tài li
ch s tài li
c h i tài li
................70
..............71
t tài li
..............71
ttài li
y tr
.............72
...72
y tr
.73
.................................74
n lý b ph
Hình 2.56 : Mô hình l p thi t k gói ca s d
n lý danh m
Hình 2.57 : Mô hình l p thi t k gói ca s d
Hình 2.59 : Mô hình thi t k
.........70
c h itài li
Hình 2.55 : Mô hình l p thi t k gói ca s d
Hình 2.58 : Mô hình l p thi t k gói ca s d
..........69
..............75
............75
.........76
n lý tài li
................77
d li u.......................................................78
Hình 3.1: Giao di
p.........................................................................79
Hình 3.2: Giao di
p thành công................................................80
Hình 3.3: Giao di n qu n lý .............................................................................80
Hình 3.4: Giao di n thêm tài li u .....................................................................81
Hình 3.5: Giao di n khi thêm tài li u thành công ............................................81
Hình 3.6: Giao di
i dùng..............................................................82
Hình 3.7: Giao di n thêm b ph n ...................................................................83
Hình 3.8: Giao di n thêm danh m c.................................................................83
Hình 3.9: Giao di n tìm ki m...........................................................................83
Hình 3.10: Giao di n checkout t p tin..............................................................84
Hình 3.11: Giao di n checkin t p tin................................................................84
Hình 3.12: Giao di n xem l ch s t p tin .........................................................85
Ph m Trung M nh - CT1301
7
án t t nghi p
p H i Phòng
B ng 1.1 : Ba th h c a qu n lý phiên b n .....................................................14
B ng 2.1 : Các ch
ng nghi p v ................................................................36
B ng 2.2 : Các tác nhân h th ng .....................................................................36
B ng 2.3 : B ng bi u di n mô hình h th ng nghi p v ..................................37
B ng 2.4 : Ca s d
ph
B ng 2.5 : Ca s d
...........................................................39
m b ph
....................................................40
B ng 2.6 : Ca s d
a b ph
..............................................................40
B ng 2.7 : Ca s d
ph
.............................................................40
B ng 2.8 : Ca s d
.....................................................41
B ng 2.9 : Ca s d
...............................................42
B ng 2.10 : Ca s d
p nh
........................................42
B ng 2.11 : Ca s d
...............................................................42
B ng 2.12 : Ca s d
......................................................43
B ng 2.13 : Ca s d
B ng 2.14 : Ca s d
m danh m
a danh m
...............................................44
.........................................................44
B ng 2.15 : Ca s d
........................................................44
B ng 2.16 : Ca s d
..........................................................45
B ng 2.17 : Ca s d
B ng 2.18 : Ca s d
m tài li
p nh t tài li
....................................................46
.....................................................46
B ng 2.19 : Ca s d
.............................................................46
B ng 2.20 : Ca s d
....................................................47
B ng 2.21 : Ca s d
......................................................47
B ng 2.22 : Ca s d
B ng 2.23 : Ca s d
ch s tài li
c h i tài li
B ng 2.24 : Ca s d
B ng 2.25 : Ca s d
Ph m Trung M nh - CT1301
t tài li
y tr
................................................47
......................................................48
....................................................48
.........................................48
8
án t t nghi p
STT
1
p H i Phòng
Thu t ng
Version
Di n gi i
H th ng qu n lý phiên b n.
Control System
(VCS)
2
Centralized
H th ng qu n lý phiên b n t p trung.
Version
Control
System(CVCS)
3
Distributed
Version
Control System
(DVCS)
H th ng qu n lý phiên b n phân tán.
4
Local Version
Control
H th ng qu n lý phiên b n c c b .
Systems
(LVCS)
5
Concurrent
Versioning
System(CVS)
H th ng phiên b
6
Checkout
L y m t t p tin t kho ch a ra làm vi c.
7
Checkin
C p nh t m t t
8
Commit
Gi ng commit.
Ph m Trung M nh - CT1301
ng th i.
khi checkout.
9
án t t nghi p
p H i Phòng
c h t em xin bày t tình c m và lòng bi
th y Nguy n Tr
t nhi u th i gian quý báu, tr c ti
ng d n t n tình giúp
, ch b o em trong su
án t t nghi p.
Em xin chân thành c
t c các th y cô giáo trong Khoa Công ngh
T
ng i H c Dân L p H i Phòng, chân thành c
y giáo,
cô giáo tham gia gi ng d y và truy
t nh ng ki n th c quý báu trong su t th i
gian em h c t p t
ng,
các v
mình nghiên c u,
c và ph n bi
em có th
án c a em giúp em hi
án này.
Tuy có nhi u c g ng trong quá trình h c t p, trong th i gian th c t
tránh kh i nh ng thi u sót, em r t
b
c s góp ý quý báu c a t t c các th y giáo,
k t qu c
c hoàn thi
t c các
Em xin chân thành c
H i Phòng,
Sinh viên
Ph m Trung M nh
Ph m Trung M nh - CT1301
10
án t t nghi p
p H i Phòng
Các h th ng thông tin trong các t ch c ngày càng ph c t p, h th
b
c chu n hóa và qu n lý theo các quy trình tiên ti n. Các t ch
ct
th
n cao, t các công ty nh
n l n, t các trung tâm nghiên c u n các
doanh nghi p s n xu t và c các công ty phát tri n ph n m
u c n có h th ng
qu
c biên t p qua nhi
n, m i l n s
là m t phiên b n khác nhau. Vi c qu n lý các phiên b n r t ph c t
ng.
Riên
i v i các công ty ph n m m, ngoài các phiên b n v
n hành chính
còn c n qu n lý các phiên b n v mã ngu n ph n m m. Mã ngu n ph n m m khi
n. Vi c phân b các công vi c cho l p trình viên
l p trìnhvà thu v các mã ngu n r
ng b chúng là công vi c khó nh t c a nh ng
ng nhóm ph n m m ho c c
i qu n tr d án.
Vi c tìm hi u và nghiên c u xây d ng m t h th ng qu n lý phiên b n là
côngvi c ph c t
t lý thú và c n thi t. Xu t phát t yêu c u c a t ng t
ch
a các h th
u chung v n d a
trên nh ng ch
o, phân ph i, c p nh
ng b phiên
b n,...
T
ng ti p c
n hành th c hi
H th ng qu n lý
phiên b
n
mm
u ki n trúc, quy trình xây d ng h
th ng qu n lý phiên b n và các ch
a chúng. Trong khóa lu
tìm hi u các ki n th c liên quan và th nghi m xây d ng m t h th ng qu n lý
phiên b
n d a trên n n Web.
Khóa lu
c t ch c thành các ph
:Trình bày v ki n trúc c a h th ng qu n lý phiên b n và các khái
ni m liên quan.
: Phân tích, thi t k h th ng qu n lý phiên b
:
ng d ng qu n lý phiên b
n.
n.
K t lu n
Tài li u tham kh o
Ph m Trung M nh - CT1301
11
án t t nghi p
p H i Phòng
:
1.1.
Qu n lý phiên b n (control version) trong phát tri n ph n m
các ng d ng qu n lý phiên b n
n c a các t ch
ng
n u không nói là quan tr ng nh t.
n
các phiên b n
n
ch c. Tuy nhiên,
c t ch c
a
n
,
n lý phiên b
: Subversion, Tortoisesvn, LogicalDOC, KnowledgeTree
,
t
phiên b n riêng c
c
t
y
.
,
i p
,
quan,
,
oát
.
công ngh
. Tuy nhiên,
,
dùn
.
,
phiên b n Subversion, Tortoisesvn, Git,
Bazaar, Mercurial, KnowledgeTree Các ph n m
u là mã ngu n m , vì
v y vi
t là khá d dàng.
Ph m Trung M nh - CT1301
12
án t t nghi p
p H i Phòng
1.3.
M t h th ng ki m soát phiên b n là m t ph n m m giúp các nhà phát tri n
trên m t nhóm ph n m m làm vi
toàn b l ch s
c a công vi c. H th ng có kh
c p nh t, so sánh và k t h p tài nguyên m i
H th ng qu n lý phiên b n gi i quy
c các v
Khi m t nhóm làm vi c trên cùng m t d án, vi c nhi
i cùng ch nh s a
n i dung c a m t t
u không th tránh kh i. h th ng qu n lý phiên
b n cung c p các ch
có th th c hi n vi c này m
n và
an toàn
H th ng qu n lý phiên b
c thi t k v i m
h th ng qu n
lý phiên b n Concurrent Versioning System (CVS)
c
m. H th ng qu n lý phiên b n có th
cs d
qu n lý b t c h
th ng phiên b n nào
H th ng qu n lý phiên b nlà h th ng qu n lý m nh m , h u d ng, và linh
ho t.
H th ng qu n lý phiên b n qu n lý t
c theo th i gian
H th ng qu n lý phiên gi
t h th ng t p tin máy ch mà các máy
khách có th t i xu ng và t i lên các t p tin m t cá
ng
t bi t c a h th ng qu n lý phiên
i t t c nh
i
trên h th ng t p tin: t p tin
i lúc nào,
nào,
i nó
H th ng qu n lý phiên
ph c h i l i nh ng phiên b n
m tcách chính xác. Các ch
c làm vi c nhóm tr nên
hi u qu
t nhi u
ng, máy khách và máy ch k t n i thông qua m ng LAN ho c
Internet. Máy khách và máy ch có th cùng ch y trên m t máy n u h th ng
qu n lý phiên có nhi m v theo v t l ch s c a d án do các nhà phát tri n
ph n m m phát tri n trong n i b
H th ng qu n lý phiên h tr khá nhi u giao th
k t n i gi a máy khách
và máy ch
Ph m Trung M nh - CT1301
13
án t t nghi p
p H i Phòng
1.4.
Networking
Operations
Concurrency
Examples
First
None
One file at a time Locks
RCS, SCCS
Second
Centralized
Multi-file
Merge before
commit
CVS, SourceSafe,
Subversion, Team
Foundation Server
Third
Distributed
Changesets
Commit before
merge
Bazaar, Git, Mercurial
B ng 1.1 :Ba th h c a qu n lý phiên b n
L ch s b
ng t i
a các công c qu n lý phiên b n cho th y m t phong
.
Trong các công c th h
u tiên.M
i có th làm vi c trên m t t p tin
t i m t th
m.
Các công c th h th hai là m t chút công b ng
s
i cùng m t
lúc, v i m t h n ch
i s d ng ph i h p nh t các phiên b n
hi n t i
c khi commit.
Các công c th h th ba cho phép commit
c khi h p nh t.
1.5
1.5.1.
(repository) là m
c a các t
Control System).
Có th
m i b n chính (master copy)
d li u c a m t VCS(Version
riêng cho t ng t p tin ho c chung cho m i t p tin.
ng phát tri n nhóm,
ng n m trên m t máy ch
riêng.
có th
: mã ngu n,
u, các tài li u khác (hình nh, âm
thanh, ...)
có th
m i th . V y các lo i t
N u không có phiên b n c p nh t c a t p tin
xây d
c ng d ng c
t p tin
.
Ph m Trung M nh - CT1301
, chúng ta không th
c cho vào
14
án t t nghi p
p H i Phòng
1.5.2.
c làm vi c (working folder) là m
t p tin và hi u ch nh.
c làm vi
khi làm vi c nhóm.
y phiên b n c a
t trên máy client cho t ng thành viên trong
Khi các phiên b
c l y ra,
các b n sao phiên b
nh mà m t VCS s
1.5.3. Khóa
th
Khi làm vi c nhóm, các thành viên có th hi u ch nh cùng m t t p tin t i m t
t là
u t t y u x y ra
t? Tùy ch n khóa
khóa (locking
ch
t. Có 2 lo i khóa:
Khóa nghiêm ng t (strict locking): Trong khóa này, khi m t t
c l y ra
hi u ch nh, nó s b
t thu c tính là read, thành viên có th
hi u ch nh n i dung c a nó. Ch khi nào t p t
c c p nh t, thành viên khác m i có th l y ra l i.
V
: n u m t thành viên l y ra hi u ch
thành viên khác s
c.
p nh t, nh ng
Khóa t do (optimistic locking): Khóa t do cho phép khi m t t
cl y
ra s a,
n c p nh t d li u trong t
Và khi hai thành viên cùng check in t
c hi u ch nh, nguyên t c sau
c th c hi n:
- N u 2 b n c p nh t không cùng c p nh t 1 dòng, vi c c p nh t s ghép
2b
i.
- N u 2 b n cùng c p nh t 1 dòng, VCS s
cho h t ch n vi c c p nh t.
1.5.4.
, module
D án là m t
c
toàn b thông tin c a các t p tin c a nhóm. M t
nhóm có th th c hi n nhi u d án khác nhau. Các d án này có th chia s các t p
tin (shared file). M
ng có m t d án g c cho m i d án.
t d án con (sub-project) n m trong m t d án m .
T p tin trong d án có th thu c v m t ho c nhi u d án (shared file).
Ph m Trung M nh - CT1301
15
án t t nghi p
p H i Phòng
1.5.5. Phân nhánh
Khi làm vi c nhóm, m
u có m t ph n mã chung, g i là nhánh
chính (mainline
u làm vi c v i m t ph n c a nhánh chính.
Khi có yêu c u tách m t ph
, ví d
t o m t phiên b
th
nghi m, các thành viên c a nhóm phân ph i th nghi
cl pv i
nhánh chính. Gi i pháp là dùng phân nhánh.
Chia nhánh (branching) là m
c a h th ng qu n lý phiên b n cho
phép tách m t ph n c a d án ra riêng. Ph n này s ho
c l p v i d án
, vi
i.
Ví d : n u m t t p tin config.php trong nhánh chính có s phiên b n là 1.14 và
m t nhánh m
c t o ra, config.php s có s phiên b n trong nhánh là 1.14.1.1.
Vi c hi u ch nh t
cho ch s phiên b n m i trong
nhánh chính là 1.15 tuy nhiên n u hi u ch nh t
rong nhánh thì nó có s
phiên b n m i là 1.14.1.2.
1.5.6.
Có nhi u nhánh (branch) có th
c tách ra làm vi
c l p. N u h trong
khi làm th y r ng có m t s l i (bug) phát sinh và có
ng t i nhánh chính.
H s
c p nh t nhanh nh t mã trong nhánh chính và dùng cách ghép t p
tin (merge).
Ghép t p tin s cho phép lo i b
phiên b n khác nhau c a h th ng.
c vi c ph i c t dán nhi u l n trên các
1.5.7.
M i t p tin có th có nhi u phiên b n (version). Các phiên b
khác nhau. M i l n chúng ta hi u ch nh n i dung t p tin và c p nh
c a VCS, phiên b n s
c c p nh t.
M t s VCS s d ng h th ng phiên b n 1, 2, 3, ... trong khi có m t s khác s
d ng h th ng 1.0, 1.1, 1.2, ... Các VCS
n cu i cùng và các thay
i c a phiên b n cu i so v i phiên b
Các s phiên b
, 1.1, hay 1.2,
c g i là revision(b n s a
i).
i s phiên b n, VCS
i c p nh t và m t s ghi chú n u có.
bi
ngày gi c p nh t,
M tv
nh
này là làm sao các thành viên trong nhóm
c các phiên b n c a d án. S phiên b n trong d án s
i khi phiên
Ph m Trung M nh - CT1301
16
án t t nghi p
b nc at
d án v
p H i Phòng
i. Các VCS
d ng thêm m t cách ghi nh n phiên b n
labeling
, cho dù s phiên b n c a d
i, nhãn c a
i [9].
1.6.Ki n trúc c a h th ng qu n lý phiên b n
H u h t h th ng qu n lý phiên b n ph bi n hi
c chia thành 3 lo i
chính:Qu n lý phiên b n c c b (Local Version Control Systems), Qu n lý phiên
b nt p trung (Centralized Version Control System) và qu n lý phiên b n phân
tán( Distributed Version Control System)
1.6.1.
n lý phiên b
c nhi
i l a ch
sao chép
các t p tin vào m
c khác (có th là m
u theo th i gian).
t ph bi n vì nó r
n
i r t d b l i. R t d
nh m khi vô tình ghi các t p tin sai ho c chép các t p tin mà b n không mong mu n
.
gi i quy t các v
này các l p trình viên phát tri n h th ng qu n lý
phiên b n c c b
d li
n mà gi t t c nh
i
i s qu n lý các phiên b n s
i (Xem hình1)[8].
Local Computer
Checkout
Version database
Version 3
Version 2
Version 1
Hình 1.1:
h th ng qu n lý phiên b n c c b
M t trong nh ng công c qu n lý phiên b n ph bi n là m t h th ng g i là
RCS(Revision Control System). Hi n v
c s d ng trong các máy tính ngày
nay. Th m chí c h
u hành Mac OSn i ti ng bao g m các l nh RCS
t
các công c phát tri n. Công c này v
n ho
ng b ng cách gi t p h p b n
vá t m t phiên b n khác trong m t d
c bi t trên
t ob t
k t p tin trông gi ng
t i b t k th
m nào b ng cách c ng t t c các
b n vá l i l i.
Ph m Trung M nh - CT1301
17
án t t nghi p
p H i Phòng
1.6.2.
V
quan tr ng mà m
i g p ph i là c n ph i h p tác v i các nhà phát
tri n trên các h th ng khác.
gi i quy t v
này, h th ng qu n lý phiên b n
t p trung
c phát tri n. Nh ng h th ng ch ng h
(Concurrent
Versioning System)
có máy ch duy nh t ch a t t c các t p tin phiên
b n và m t s máy khách ki m tra các t
. Trong nhi
c chu n hóa trong qu n lý phiên b n (Xem hình 2) [8].
Computer A
Central VCS Server
Checkout
Version database
Version 3
Version 2
Computer A
Checkout
Hình 1.2 :
Version 1
h th ng qu n lý phiên b n t p trung
Các thi t l p này cung c p nhi u l i th
c bi t là trên h th ng qu n lý
phiên b n c c b . Ví d
n nh
nh trên d
. Các
i qu n lý có quy n ki m soát các h t m n và nó d
qu n lý m t
CVS
i vi
i phó v
d li u c c b trên t t c các máy khách.
T i th
m này h th ng qu n lý phiên b n ph bi n nh
c bi
n là
c coi là m t h th ng qu n lý phiên b n t p trung. Khái ni m chính
c a h th ng phiên b n t p trung là ho
ng trong quan h khách hàng và máy
ch . Kho n m m
p truy c p cho nhi u máy khách. Nó r t gi ng
v i FTP t
n có m t máy khách FTP có k t n i v i m t máy ch FTP. M i
s
i dùng, commit và thông tin ph
c g i và nh n t
trung tâm này
Ph m Trung M nh - CT1301
18
án t t nghi p
p H i Phòng
m c a h th ng qu n lý phiên b n t ptrung:
- D hi u.
- Có quy n qu
- R
i dùng và quy n truy c p.
im ib
u.
m c a h th ng qu n lý phiên b n t ptrung:
- Ph thu c vào quy n truy c p máy ch .
qu n lý m t máy ch và các b
- R nhánh và h p nh t khó s d ng[6].
.
1.6.3.
th ng qu n lý phiên b n phân tán (DVCS)
Git,
Mercurial, Bazaar ho c Darcs) máy khách c n ki m tra các nh ch p m i nh t c a
các t p tin. Vì v y, n u b t k máy ch b h ng, các h th ng này s c ng tác thông
qua nó, b t k nh ng kho c a máy khách có th sao chép l i các thi t l p c a máy
ch
khôi ph c l i nó. M i th checkout là b
c a t t c các d
li u (Xem hình 3) [8].
Hình 1.3:
Ph m Trung M nh - CT1301
h th ng qu n lý phiên b n phân tán
19