Tr
ng ĐH Công nghi p Hà N i
Khoa Công ngh thông tin
ườ
ệ
ộ
ệ
NH N XÉT C A GI NG VIÊN H
NG D N
Ủ
Ậ
Ả
ƯỚ
Ẫ
....................................................................................................................................................... ........................................................................................................................................................ ........................................................................................................................................................ ........................................................................................................................................................ ........................................................................................................................................................ ........................................................................................................................................................ ........................................................................................................................................................ ........................................................................................................................................................ ........................................................................................................................................................ ........................................................................................................................................................ ........................................................................................................................................................ ........................................................................................................................................................ ........................................................................................................................................................ ........................................................................................................................................................ ........................................................................................................................................................ ........................................................................................................................................................ ........................................................................................................................................................ ........................................................................................................................................................ ........................................................................................................................................................ ........................................................................................................................................................
Tr
ng ĐH Công nghi p Hà N i
Khoa Công ngh thông tin
ườ
ệ
ộ
ệ
........................................................................................................................................................ ........................................................................................................................................................ ........................................................................................................................................................ ........................................................................................................................................................ ........................................................................................................................................................ ........................................................................................................................................................ ........................................................................................................................................................ ........................................................................................................................................................ ........................................................................................................................................................ ........................................................................................................................................................ ........................................................................................................................................................ ........................................................................................................................................................ ........................................................................................................................................................ ........................................................................................................................................................
Hà N iộ , Ngày … tháng … năm 2013 (Ký tên)
Nguy n Trung Phú
ễ
Tr
ng ĐH Công nghi p Hà N i
Khoa Công ngh thông tin
ườ
ệ
ộ
ệ
Tr
ng ĐH Công nghi p Hà N i
Khoa Công ngh thông tin
ườ
ệ
ộ
ệ
L I NÓI Đ U
Ờ
Ầ
Công ngh thông tin ngày nay r t phát tri n, nhu c u tìm hi u và s d ng các source ể
ử ụ
ệ
ể
ấ
ầ
code cũng tăng lên. V i nh ng u đi m mà nh ng ph n m m mã ngu n m t o ra, chúng
ở ạ
ữ
ư
ữ
ể
ề
ầ
ớ
ồ
nhanh chóng đ
c ti p m i ng
ượ
ế
ọ
ườ ế
ồ i ti p nh n. V i m c đích phát tri n các d án mã ngu n
ụ
ự
ể
ậ
ớ
m , Google đã đ a ra d ch v Google Code.
ư
ụ
ở
ị
Google Code là s n ph m c a Google đ a ra, nh m gia tăng ch t ch m i quan h ư
ẽ ố
ủ
ả
ẩ
ằ
ặ
ệ
ẫ ử ụ gi a Google và các nhà phát tri n các d án mã ngu n m . Qua đ tài “H ng d n s d ng
ướ
ữ
ự
ể
ề
ồ
ở
Google Code và TortoiseSVN” giúp chúng em hi u h n v d ch v Google Code, cũng nh
ề ị
ụ
ể
ơ
ư
cách s d ng Google Code đ l u tr
các d án, s d ng TortoiseSVN trong vi c qu n lí
ử ụ
ể ư
ữ
ử ụ
ự
ệ
ả
mã ngu n trên Google Code.
ồ
Chúng em trân tr ng c m n th y Nguy n Trung Phú đã h
ng d n chúng em
ả ơ
ễ
ầ
ọ
ướ
ẫ
nhi
t tình trong các ti
t h c đ chúng em có c h i hoàn thành bài t p l n này!
ệ
ế ọ ể
ậ ớ
ơ ộ
Trong quá trình nghiên c u, tìm hi u, m c dù đã c g ng h t s c nh ng v n không th
ế ứ
ố ắ
ứ
ữ
ể
ặ
ẫ
ể
tránh đ
c nh ng sai sót, r t mong nh n đ
c s đóng góp chân thành t
cô và các b n đ
ượ
ữ
ấ
ậ
ượ ự
ừ
ạ
ể
chúng em có c h i hoàn thành bài t p l n này!
ậ ớ
ơ ộ
Nhóm 20 – L p KTPM1 K5 ớ
Tr
ng ĐH Công nghi p Hà N i
Khoa Công ngh thông tin
ườ
ệ
ộ
ệ
CH
NG I: T NG QUAN V GOOGLE CODE
ƯƠ
Ổ
Ề
1. Khái ni m ph n m m mã ngu n m
ồ ệ ề ầ ở
Ph n m m ngu n m là nh ng ph n m m đ c cung c p d ữ ề ề ầ ầ ồ ở ượ ấ ướ ả i c
d ng mã và ngu n, không ch là mi n phí v giá mua mà ch y u là mi n phí ạ ủ ế ễ ề ễ ồ ỉ
v b n quy n: ng ề ả ề ườ ấ i dùng có quy n s a đ i, c i ti n, phát tri n, nâng c p ề ử ả ế ể ổ
ở theo m t s nguyên t c chung qui đ nh trong gi y phép ph n m m ngu n m , ộ ố ề ắ ấ ầ ồ ị
ch ng h n General Public Licence - vi t là GPL mà không c n xin phép ai, ạ ẳ t t ế ắ ầ
đi u mà h không đ ọ ề ượ c phép làm đ i v i các ph n m m ngu n đóng (t c là ầ ố ớ ứ ề ồ
ph n m m th ng m i). ề ầ ươ ạ
Nhà cung c p ph n m m ngu n m có quy n yêu c u ng i dùng tr ề ề ấ ầ ầ ồ ở ườ ả
m t s chi phí v các d ch v b o hành, hu n luy n, nâng c p, t v n, vv... ộ ố ụ ả ệ ề ấ ấ ị ư ấ
t c là nh ng d ch v th c s đã th c hi n đ ph c v ng ứ ụ ự ự ự ụ ụ ữ ệ ể ị ườ ư i dùng, nh ng
không đ c bán các s n ph m ngu n m vì nó là tài s n c a trí tu chung, ượ ủ ệ ả ẩ ả ồ ở
không ph i là tài s n riêng c a m t nhà cung c p nào. ủ ả ả ấ ộ
Trên th tr ị ườ ng ph n m m, có nhi u lo i gi y phép. Có th chia các ạ ề ề ể ầ ấ
gi y phép này đ i khái nh sau: ạ ư ấ
Ph n m m th ề ầ ươ ộ ng m i (Commercial Software). Là ph n m m thu c ề ạ ầ
c cung c p d ng mã nh b n quy n c a tác gi ề ủ ả ả ho c nhà s n xu t, ch đ ả ỉ ượ ặ ấ ấ ở ạ ị
phân, ng i dùng ph i mua và không có quy n phân ph i l i. ườ ố ạ ề ả
Ph n m m th nghi m gi ử ệ ề ầ ớ ạ ữ i h n (Limited Trial Software). Là nh ng
phiên b n gi i h n c a các ph n m m th ng m i đ c cung c p mi n phí ả ớ ạ ủ ề ầ ươ ạ ượ ễ ấ
nh m m c đích th nghi m, gi i thi u s n ph m và kích thích ng i dùng ụ ử ệ ằ ớ ệ ả ẩ ườ
quy t đ nh mua. Lo i s n ph m này không ch gi i h n v tính năng mà còn ạ ả ế ị ỉ ớ ạ ề ấ
gi i h n v th i gian dùng th (th ng là 60 ngày). ớ ạ ề ờ ử ườ
Tr
ng ĐH Công nghi p Hà N i
Khoa Công ngh thông tin
ườ
ệ
ộ
ệ
Ph n m m “chia s ” (Shareware). Lo i ph n m m này có đ các tính ủ ề ề ẻ ầ ạ ầ
năng và đ c phân ph i t do, nh ng có m t gi y phép khuy n cáo các cá ượ ố ự ư ế ấ ộ
nhân ho c t ặ ổ ch c mua, tùy tình hình c th . Nhi u ti n ích Internet (nh ụ ể ứ ề ệ ư
“WinZip” dùng các thu n l i c a Shareware nh m t h th ng phân ph i). ậ ợ ủ ư ộ ệ ố ố
Ph n m m s d ng phi th ử ụ ề ầ ươ ầ ng m i (Non-commercial Use). Lo i ph n ạ ạ
m m này đ c s d ng t i b i các t ch c phi l ề ượ ử ụ ự do và có th phân ph i l ể ố ạ ở ổ ứ ợ i
nhu n. Nh ng các t ch c kinh t , thí d các doanh nghi p, ... mu n dùng ư ậ ổ ứ ế ụ ệ ố
ph i mua. Netscape Navigator là m t thí d c a lo i ph n m m này. ộ ụ ủ ề ả ạ ầ
Ph n m m không ph i tr ph n trăm cho nhà s n xu t (Royalties Free ả ả ề ầ ầ ả ấ
Binaries Software). Ph n m m đ c cung c p d ề ầ ượ ấ ướ ạ i d ng nh phân và đ ị ượ c
dùng t do. Ví d : B n nh phân c a các ph n m m Internet Explorer và ự ủ ụ ề ả ầ ị
NetMeeting.
ph n trăm (Royalties Free Th vi n ph n m m không ph i tr ề ư ệ ầ ả ả ầ
ồ Software Libraries). Là nh ng ph n m m mà mã nh phân cũng nh mã ngu n ề ư ữ ầ ị
đ c dùng và phân ph i t i dùng không đ ượ ố ự do, nh ng ng ư ườ ượ ử ổ c phép s a đ i.
Ví d : các th vi n l p h c, các t p “header”. ư ệ ớ ụ ệ ọ
ộ Ph n m m mã ngu n m ki u BSD - (Open Source BSD-style). M t ở ể ề ầ ồ
nhóm nh khép kín (closed team) đã phát tri n các PMNM theo gi y phép phân ể ấ ỏ
ph i Berkely (BSD – Berkely Software Distribution) cho phép s d ng và phân ử ụ ố
ph i l i các ph n m m này d i d ng mã nh phân và mã ngu n. Tuy ng ố ạ ề ầ ướ ạ ồ ị ườ i
dùng có quy n s a đ i mã, nh ng v nguyên t c nhóm phát tri n không cho ề ử ư ề ể ắ ổ
phép ng i dùng t do l y mã ngu n t ườ ự ồ ừ ấ kho mã ra s a (g i là check-out) và ọ ử
i kho mã mà không đ c h ki m tra tr c (g i là các đ a mã đã s a vào l ư ử ạ ượ ọ ể ướ ọ
“check-in”).
Tr
ng ĐH Công nghi p Hà N i
Khoa Công ngh thông tin
ườ
ệ
ộ
ệ
ấ Ph n m m mã m ki u Apache (Open Source Apache-style). Ch p ể ề ầ ở
nh n ngu n m ki u BSD nh ng cho phép nh ng ng i ngoài nhóm phát ở ể ư ữ ậ ồ ườ
tri n xâm nh p vào lõi c a mã n n (core codebase), t c là đ ứ ủ ề ể ậ ượ ự c phép th c
hi n các “check-in”. ệ
Ph n m m mã m ki u CopyLeft hay ki u Linux (Open Source ề ể ể ầ ở
ữ ủ CopyLeft, Linux-style). Ph n m m mã m ki u CopyLeft (trò ch i ch c a ề ể ầ ở ơ
Free Software Foundation – FSF – và GNU – Gnu’s Not Unix, đ đ i ngh ch ể ố ị
hoàn toàn v i CopyRight !) hay còn g i là gi y phép GPL (General Public ấ ớ ọ
Licence) là m t b c ti n quan tr ng theo h ng t do hóa c a các gi y phép ộ ướ ế ọ ướ ự ủ ấ
ph n m m. Gi y phép GPL yêu c u không nh ng mã ngu n g c ph i đ ả ượ c ữ ề ấ ầ ầ ố ồ
ả phân ph i theo các qui đ nh c a GPL mà m i s n ph m d n xu t cũng ph i ọ ả ủ ẩ ẫ ấ ố ị
tuân th GPL. ủ
GPL cho ng i dùng t ườ ố i đa quy n h n và t ề ạ ự ề do đ i v i các ph n m m ố ớ ầ
mã m theo GPL, c th ng ụ ể ở ườ ử i dùng có quy n không nh ng sao chép, s a ữ ề
i CopyLeft mà còn đ c quy n t do đ i, mua bán các ph n m m mã m d ổ ở ướ ề ầ ượ ề ự
i n u ph n m m mã m nh v y đ i v i các ph n m m d n xu t. Tóm l ầ ố ớ ư ậ ề ẫ ấ ạ ế ề ầ ở
g c đã theo CopyLeft thì m i ph n m m mã m d n xu t c a nó cũng đ ố ấ ủ ở ẫ ề ầ ọ ươ ng
nhiên theo CopyLeft.
M t s đi u c n bi ộ ố ề ầ ế ề ầ t v ph n m m ngu n m : ở ề ồ
Tr c đây, khái ni m s d ng mã ngu n m trong môi tr ng doanh ướ ử ụ ệ ồ ở ườ
nghi p là không th hình dung ra đ ệ ể ượ c, cho dù quy mô c a doanh nghi p là ủ ệ
th nào. Tuy nhiên, th i gian đã thay đ i và mã ngu n m đã không còn b ế ờ ổ ồ ở ị
đánh giá th p n a. Th c t , gi đây mã ngu n m th ng đ ự ế ữ ấ ờ ở ườ ồ ượ ế c nh c đ n ắ
đ u tiên m i khi c n m t gi ầ ầ ỗ ộ ả ắ i pháp nào đó. Tuy nhiên, cũng c n ph i nh c ầ ả
i mã ngu n m , b n c n ph i bi t m t s đi u. N u suy nghĩ r ng khi nghĩ t ằ ớ ở ạ ầ ả ồ ế ộ ố ề ế
k h n, có m t s đi u b t ng đang đón ch b n. ấ ỹ ơ ộ ố ề ờ ạ ờ
Tr
ng ĐH Công nghi p Hà N i
Khoa Công ngh thông tin
ườ
ệ
ộ
ệ
V i m c đích giúp ng c t nh táo, chúng tôi cho ụ ớ ườ i dùng mã ngu n m luôn đ ồ ở ượ ỉ
t kê m t s đi u m i ng i nên bi r ng s r t h u ích khi li ằ ẽ ấ ữ ệ ộ ố ề ọ ườ ế ề ồ t v mã ngu n
m tr ở ướ c khí s d ng nó. ử ụ
1: Không ch riêng Linux ỉ
i th i mã Đây chính là n i h u h t m i ng ơ ầ ế ọ ườ ườ ng g p. M i khi nói t ỗ ặ ớ
i th ng nghĩ t ngu n m , m i ng ở ồ ọ ườ ườ ớ ệ i Linux đ u tiên. Đi u này d n đ n vi c ề ế ầ ẫ
ề d lu n kh ng đ nh mã ngu n m ch dành riêng cho Linux. Tuy nhiên, đi u ỉ ư ậ ẳ ồ ở ị
này không h n v y. Có r t nhi u d án mã ngu n m h tr ở ỗ ợ ự ề ấ ẳ ậ ồ ề ả đa n n t ng
ho c ch h tr Windows. Trang này s li ỉ ỗ ợ ẽ ệ ặ ồ t kê r t nhi u ph n m m mã ngu n ầ ề ề ấ
ầ m dành cho Windows. Tuy nhiên, trang này không bao g m m t s ph n ộ ố ở ồ
m m ph bi n, ví nh Apache, MySQL và Drupal. ổ ế ư ề
2: Không ph i lúc nào cũng mi n phí ễ ả
ở ớ Đ là m t ph n m m mã ngu n m , mã ngu n c a nó ph i m v i ồ ủ ể ề ầ ả ộ ồ ở
t t c m i ng i. Tuy nhiên, đi u này không có nghĩa là chính ng d ng này ấ ả ọ ườ ứ ụ ề
ph i mi n phí. Th c ch t, có r t nhi u công ty ki m đ c ti n t d án mã ự ễ ề ế ấ ả ấ ượ ề ừ ự
ngu n m . Trong nhi u tr ng h p, giá đ c tính cho nh ng tính năng h tr ề ồ ở ườ ợ ượ ỗ ợ ữ
ho c tính năng ph nh ng h th ọ ườ ụ ư ặ ng t o m t phiên b n mi n phí dành cho ả ễ ạ ộ
ng là phiên c ng đ ng. Khi m t công ty bán m t phiên b n c ng đ ng, nó th ộ ả ộ ồ ộ ộ ồ ườ
b n b rút g n, phiên b n c b n c a s n ph m th ả ủ ả ơ ả ả ẩ ọ ị ươ ng m i (nh ng v n là ư ạ ẫ
mã ngu n m ). M t ví d tuy t v i chúng ta có th k t ể ể ớ ệ ờ ụ ồ ở ộ ộ i là Zimbra, m t
c cung c p mi n phí, mã ngu n m công c email và c ng tác m nh m đ ộ ẽ ượ ụ ạ ễ ấ ồ ở
cùng v i m t phiên b n khác có m t phí (cùng nhi u tính năng h n). ấ ề ả ớ ộ ơ
3: Nó có th đ c và không đ ể ượ c h tr ượ ỗ ợ
M t s ph n m m mã ngu n m cunug c p l a ch n h tr (đôi khi ấ ự ộ ố ỗ ợ ề ầ ồ ở ọ
ng là v i m t m c giá phù h p) và m t s ph n m m thì không. Đây th ớ ộ ố ứ ề ầ ộ ợ ườ
Tr
ng ĐH Công nghi p Hà N i
Khoa Công ngh thông tin
ườ
ệ
ộ
ệ
ầ ph n ngoài h p đ ng c a các công ty l n. Tuy nhiên, ngay c khi m t s ph n ớ ộ ố ủ ầ ả ợ ồ
m m không có h tr đ ng dây nóng 24/7 đ g i m i khi có vi c c n, nó ỗ ợ ườ ề ể ọ ệ ầ ỗ
không có nghĩa là h không có h tr . Đôi khi, có nh ng di n đàn ho c danh ỗ ợ ữ ễ ặ ọ
sách email đ h tr . Trong m t s tr ng h p, b n còn có th liên l c v i c ể ỗ ợ ộ ố ườ ạ ớ ả ể ạ ợ
ng ườ ắ i đã l p trình (ho c làm vi c v i) ph n m m đó. L a ch n h tr ch c ỗ ợ ự ệ ề ậ ặ ầ ớ ọ
ch n là có – ngay c khi h tr không t ng thích v i t ỗ ợ ả ắ ươ ớ ư duy c a doanh ủ
nghi p.ệ
4: Ng ườ i dùng có đ y đ quy n truy c p vào mã ngu n ồ ầ ủ ề ậ
M c dù đi u này không áp d ng v i ng i dùng thông th ng, ụ ề ặ ớ ườ ườ
chúng tôi v n li i dùng có th hi u h t các ẫ ệ t kê nó nh m đ m b o r ng ng ả ả ằ ằ ườ ể ể ế
kh năng. Th c t ự ế ả ậ , mã ngu n m có nghĩa là b n có đ y đ quy n truy c p ạ ủ ề ầ ồ ở
vào mã ngu n c a m t ph n m m. Đi u này không có nghĩa là b n c n truy ề ồ ủ ề ầ ạ ầ ộ
i đ n đã có t r t lâu r i. Ch là b i mã đó và m c p vào ngu n. Đây là l ồ ậ ờ ồ ừ ấ ồ ở ỉ ở ở
không có nghĩa là nó c n thi t. Th c t , ng ầ ế ự ế ườ ầ i dùng có th s d ng ph n ể ử ụ
m m mã ngu n m c đ i và không c n ph i đ ng ch m gì đ n mã c a nó. ầ ở ả ờ ả ộ ủ ế ề ạ ồ
Tuy nhiên, m i khi b n ho c công ty b n c n th c hi n m t s ch nh s a cho ộ ố ỉ ạ ầ ử ự ệ ạ ặ ỗ
m t ng d ng, mã c a ng d ng này luôn m cho b n. ủ ứ ộ ứ ụ ụ ạ ở
5: Mã ngu n không ch dành cho l p trình viên ỉ ậ ồ
R t nhi u ng ề ấ ườ i cho r ng b i tính ch t c a mã ngu n m , ch các ấ ủ ằ ồ ở ở ỉ
i nó. Li u có ph i do mã ngu n có s n? Li u có l p trình viên m i s d ng t ậ ớ ử ụ ớ ệ ệ ả ẵ ồ
ph i đ m c a mã đ ng nghĩa v i vi c ch nh ng ng i bi ả ộ ở ủ ỉ ữ ệ ồ ớ ườ ế t cách đ c, ch nh ọ ỉ
i mã m i có th và nên s d ng nó? Không ph i. B t kì ai s a và xây d ng l ử ự ạ ử ụ ể ả ấ ớ
cũng có th s d ng ph n m m mã ngu n m v i ho c không c n k năng ể ử ụ ở ớ ề ầ ặ ầ ồ ỹ
ch nh s a và xây d ng l i ph n m m. M t đi u ch c ch n là h u h t ng ử ự ỉ ạ ề ề ế ầ ắ ầ ắ ộ ườ i
dùng mã ngu n m không có k năng ngôn ng l p trình đ n ỹ ữ ậ ồ ở ơ
Tr
ng ĐH Công nghi p Hà N i
Khoa Công ngh thông tin
ườ
ệ
ộ
ệ
6: Không ph m lu t khi s d ng ngu n m ử ụ ạ ậ ồ ở
Nh có SCO, m i ng c đây th ờ ọ i tr ườ ướ ườ ệ ử ụ ng cho r ng vi c s d ng ằ
ngu n m là b t h p pháp. Tuy nhiên, t ấ ợ ồ ở ấ ả ị ạ ỏ t c đã thay đ i khi SCO b lo i b . ổ
Vi c s d ng ph n m m ngu n m không vi ph m b t kì lu t s h u trí tu ệ ử ụ ậ ở ữ ề ầ ạ ấ ở ồ ệ
nào c . V y nên b n có th tho i mái s d ng ngu n m và không b k t t ị ế ộ i ử ụ ể ậ ạ ả ả ồ ở
ph m lu t. ậ ạ
7: Không c n là chuyên gia m i có th s d ng nó ể ử ụ ầ ớ
Đi u này liên quan t i entry tr ề ớ ướ ầ c. Hãy nh m theo tôi: Tôi không c n ẩ
ở ph i là m t chuyên gia máy tính m i có th s d ng ph n m m ngu n m . ể ử ụ ề ả ầ ộ ớ ồ
V n có m t câu h i cũ: “B n có ph i vi ạ ẫ ả ỏ ộ ế t riêng driver đ s d ng nó?”. Câu ể ử ụ
tr l i đã có t lâu, Không. R t nhi u ng i v n nghĩ r ng ph n m m mã ả ờ ừ ề ấ ườ ẫ ề ằ ầ
ngu n m là dành cho các chuyên gia, nh ng ng ữ ồ ở ườ ầ i có th l p trình ph n ể ậ
m m ngay c khi ng . Th c t l ự ế ạ ủ ề ả i không ph i v y. Th c ra, v i h u h t các ự ả ậ ớ ầ ế
d án mã m , gi ự ở ờ đây b n không c n ph i cài đ t t ầ ặ ừ ạ ả ề ngu n. H u h t các n n ế ầ ồ
t ng đ u có cài đ t nh phân v i m c đích giúp vi c thêm ph n m m mã m ả ụ ề ệ ề ặ ầ ớ ị ở
vào máy tính d dàng nh vi c cài đ t ph n m m riêng. Trong m t s tr ặ ộ ố ườ ng ư ệ ễ ề ầ
ề h p, nó th m chí còn d dàng h n. Và vi c s d ng h u h t các ph n m m ợ ệ ử ụ ễ ế ậ ầ ầ ơ
ng t . Mã m đã phát tri n theo h ng ng mã m cũng t ở ươ ự ể ở ướ c l ượ ạ ớ i so v i
ng i dùng máy tính thông th ng. Khi đ “thông minh” c a ng i dùng máy ườ ườ ủ ộ ườ
tính thông th ườ ng gi m thì tính d s d ng c a ph n m m mã ngu n m l ủ ễ ử ụ ở ạ i ề ả ầ ồ
tăng.
ề 8: H u h t các ph n m m mã ngu n m đ u đáng tin c y nh các ph n m m ở ề ư ế ề ầ ầ ậ ầ ồ
khác
Ph n m m mã m t c m i n i. Nó có trên Download.com.vn, t ở ở ấ ả ọ ơ ề ầ
Download.com, trên th tr ng Android Market, ị ườ ở ấ b t kì công c Add/Remove ụ
Tr
ng ĐH Công nghi p Hà N i
Khoa Công ngh thông tin
ườ
ệ
ộ
ệ
Software do Linux phát hành, t các trang trên toàn th gi i,....b t kì n i nào ừ ế ớ ấ ơ
b n có th nghĩ t ạ ể ớ ấ i. N u tìm ki m trên Google, b n có th th y chúng. Có r t ể ấ ế ế ạ
nhi u trang dành riêng cho ph n m m mã m trên m t s n n t ng c th và ộ ố ề ả ụ ể ề ề ầ ở
ngay c Microsoft cũng dành riêng m t trang cho mã ngu n m . Mã ngu n m ộ ả ở ồ ồ ở
đã phát tri n m t ch ng đ ng dài t ể ặ ộ ườ ừ ế ngu n g c ban đ u, khi vi c tìm ki m ệ ầ ố ồ
ộ ố đ i th cho m t ph n m m b n quy n gi ng nh đi tìm kim trong m t đ ng ố ư ủ ề ề ầ ả ộ ố
r m r . Gi ạ ơ ờ ơ ấ đây thì đ ng r m r đã thu nh d n còn cái kim thì đã l n h n r t ỏ ầ ạ ơ ố ớ
nhi u.ề
9: Ph n m m mi n phí và ph n m m chia s không gi ng v i mã m ề ẻ ễ ề ầ ầ ớ ố ở
H u h t ng ế ầ ườ i dùng đ u quen thu c v i ph n m m mi n phí và ớ ễ ề ề ầ ộ
ph n m m chia s . 2 d ng ph n m m này không gi ng v i mã m . N u mã ế ề ề ẻ ạ ầ ầ ở ố ớ
ngu n c a ph n m m không m , ph n m m này không ph i là ph n m m mã ồ ủ ề ề ề ầ ầ ả ầ ở
ngu n m . ở ồ
10: Ch c ch n b n đang s d ng ph n m m mã ngu n m ử ụ ề ắ ạ ắ ầ ồ ở
ử ụ B n đang s d ng trình duy t Firefox? N u có, b n đang s d ng ử ụ ệ ế ạ ạ
ph n m m mã ngu n m . Th c t , có r t nhi u ng ự ế ề ầ ở ồ ề ấ ườ ầ i đang s d ng ph n ử ụ
c đi u này. OpenOffice, Thunderbird, m m mã ngu n m mà không ý th c đ ở ứ ượ ề ồ ề
Pidgin, Drupal, WordPress, GnuCash, Notepad++, và r t nhi u ph n m m khác ề ề ầ ấ
c s d ng r ng rãi. Đó là không k t đ u đ ề ượ ử ụ ể ớ ộ ồ i các ph n nh c a mã ngu n ỏ ủ ầ
m b ng cách nào đó đã tìm đ ng vào các ph n m m đ c quy n. ở ằ c đ ượ ườ ề ề ầ ộ
M t xu h ng đang phát tri n m nh ộ ướ ể ạ
Ph n m m mã ngu n m không còn ti ng x u v n đã g n v i nó t ế ề ầ ấ ắ ố ớ ồ ở ừ
lúc ban đ u xu t hi n. R t nhi u ng d ng mã ngu n m gi đ c đánh giá ề ứ ở ờ ượ ụ ệ ấ ầ ấ ồ
ngang b ng ho c v ằ ặ ượ ộ ọ t tr i so v i đ ng nghi p c a nó. Chúng ta đ u hy v ng ệ ủ ớ ồ ề
xu h ng này ti p t c phát tri n, đ c bi t là ngày càng có nhi u ng i dùng ướ ế ụ ể ặ ệ ề ườ
Tr
ng ĐH Công nghi p Hà N i
Khoa Công ngh thông tin
ườ
ệ
ộ
ệ
chuy n t ể ừ máy tính đ bàn truy n th ng sang các gi ề ể ố ả ặ ả i pháp đám mây ho c o
hóa.
ữ N u đang cân nh c vi c s d ng các ph n m m mã ngu n m , có nh ng ệ ử ụ ề ế ắ ầ ở ồ
t và có r t ít đi u b n c n ph i bi đi u b n nên bi ạ ề ế ề ấ ạ ầ ả ế ả t. Hãy trang b cho b n ị
thân thông tin chu n, vi c b n s d ng ph n m m mã ngu n m s không ạ ử ụ ở ẽ ệ ề ẩ ầ ồ
2. Gi
r c r i và lo l ng n a. ắ ố ữ ắ
i thi u v Google Code ớ ệ ề
Vào ngày 17-3, Google đã tung ra trang web Google Code
(http://code.google.com), trang web này đã đ c thi t k trong vòng 6 tháng. ượ ế ế
Google cũng khiêm t n th a nh n là trang web này v n còn khá “đ n s ” và ơ ơ ừ ẫ ậ ố
hy v ng nó s đ ẽ ượ ọ c phát tri n m nh h n trong th i gian t ơ ể ạ ờ ớ i khi có s tham gia ự
i. c a m i ng ủ ọ ườ
2.1. M c đích c a Google Code ủ
ụ
Chris DiBona, giám đ c ch ng trình mã ngu n m c a Google cho ố ươ ở ủ ồ
bi t: ”Chúng tôi đã nh n đ c m t s l ng l n các ph n m m t ế ậ ượ ộ ố ượ ề ầ ớ ừ ộ ồ c ng đ ng
mã ngu n m , chính vì v y mà chúng tôi có c m giác r ng trang web này s ậ ả ằ ở ồ ẽ
ầ thích h p đ giúp chúng tôi quan h g n gũi h n v i các nhà phát tri n ph n ệ ầ ể ể ợ ơ ớ
m m khác, giúp chúng tôi làm t t h n nh ng gì th c hi n đ c hôm nay”. ề ố ơ ệ ượ ữ ự
Trang web này nh m đ n vi c cung c p cho c ng đ ng mã ngu n m ệ ế ắ ấ ộ ồ ồ ở
các công c ph n m m do chính đ i ngũ Google thi ụ ề ầ ộ ế ế ộ ộ t k và s d ng n i b . ử ụ
DiBona cho bi t r ng các nhà phát tri n ph n m m bên ngoài Google cũng s ế ằ ể ề ầ ẽ
nh n đ trang web này. M t đi m l i khác là các nhà ậ ượ c nhi u đi u h u ích t ề ữ ề ừ ể ộ ợ
c nhi u ph n h i h u ích phát tri n ph n m m c a Google cũng s nh n đ ủ ề ẽ ể ầ ậ ượ ồ ữ ề ả
cho s n ph m c a mình. ẩ ủ ả
Tr
ng ĐH Công nghi p Hà N i
Khoa Công ngh thông tin
ườ
ệ
ộ
ệ
Google Code ch a đ ng nhi u ngu n thông tin k t n i đ n các giao ế ố ế ự ứ ề ồ
di n ch ng trình ng d ng m c a Google nh ng m c đích thi t l p nên ệ ươ ở ủ ư ụ ứ ụ ế ậ
trang web này không ph i là đ các nhà phát tri n ng d ng bên ngoài có th ể ứ ụ ể ả ể
vi t các ng d ng đ gia tăng thêm kh năng c a Google. Có l ế ủ ụ ứ ể ả ẽ ẫ Google v n
“t hào” r ng đ i ngũ l p trình viên c a mình có th “th a s c” làm đ ự ừ ứ ủ ể ằ ậ ộ ượ ấ t c t
t l p m t trang web khác đ dành riêng c nh ng gì h mu n. Google đã thi ả ữ ố ọ ế ậ ể ộ
cho đ i ngũ phát tri n ph n m m mã ngu n m c a mình. ủ ề ể ầ ộ ở ồ
http://www.google.com/apis/.
2.2. T ng quan d ch v đ t ch c a Google Code ụ ặ
ỗ ủ ổ ị
c Google Code cung c p g m: Các d ch v đ ị ụ ượ ấ ồ
Xác th c:ự
google.com có th s d ng tên và B t kỳ ai v i m t tài kho n h p l ộ ợ ệ ấ ả ớ ể ủ ụ
m t kh u thông th ng c a h trên Google đ đăng nh p vào Google Code và ẩ ậ ườ ủ ọ ể ậ
truy c p t i ch c năng đó. Đi u này có nghĩa là n u b n s d ng b t kỳ d ch ậ ớ ạ ử ụ ứ ế ề ấ ị
v web nào c a Google nh GMail ho c Calendar, thì b n đã có r i m t tài ặ ụ ư ủ ạ ộ ồ
i các tài nguyên d kho n c a Google Code. B n có th ki m soát truy c p t ạ ả ủ ể ể ậ ớ ự
ệ án c a b n b ng vi c b sung thêm các thành viên d án c a b n b ng vi c ủ ạ ủ ạ ự ệ ằ ằ ổ
s d ng tài kho n google.com c a h . ủ ọ ử ụ ả
Ki m soát phiên b n: ể ả
Các h th ng ki m soát phiên b n đ c s d ng đ theo dõi các thay ệ ố ể ả ượ ử ụ ể
đ i đ i v i các tài nguyên c a d án nh tài li u và mã ngu n. Subversion ổ ố ớ ủ ư ự ệ ồ
(th ng vi t là SVN), Git và Mercurial là s n sàng đ s d ng trong các ườ t t ế ắ ể ử ụ ẵ
ổ d án. H th ng ki m soát phiên b n là chìa khóa đ qu n lý nh ng thay đ i ự ệ ố ữ ể ể ả ả
trong các ngu n c a d án qua th i gian, theo dõi các đóng góp v i l u ý v ủ ự ớ ư ồ ờ ề
qu n lý quy n s h u trí tu IPR và s c ng tác gi a các l p trình viên. ề ở ữ ự ộ ữ ệ ả ậ
Tr
ng ĐH Công nghi p Hà N i
Khoa Công ngh thông tin
ườ
ệ
ộ
ệ
Truy n thông: ề
c s d ng cho giao ti p c a d Các danh sách th và các di n đàn đ ư ễ ượ ử ụ ế ủ ự
án. Trong khi Google Code không bao g m nh ng th đó, thì chúng có th ữ ứ ồ ể
đ c k t n i t d án. Google Groups, m t thành viên khác c a h ượ i t ố ớ ừ ự ủ ế ộ ọ
ề Google, s d ng h th ng xác th c y h t mà Google Code s d ng. Đi u ệ ố ử ụ ử ụ ự ệ
tuy t v i v Google Groups là nó có th đ ệ ờ ề ể ượ ử ụ c s d ng nh m t danh sách th ư ộ ư
truy n th ng, m t di n đàn tr c tuy n ho c m t RSS feed; s l a ch n là tùy ự ự ự ế ễ ề ặ ộ ố ọ ộ
vào ng i s d ng. Tính m m d o làm t i đa hóa các l a ch n mà b t kỳ ườ ử ụ ề ẻ ố ự ấ ọ
ng i s d ng nào cũng s đăng ký vào danh sách. ườ ử ụ ẽ
wiki:
M t wiki đ c cung c p đ làm tài li u d án đ ộ ượ ự ể ệ ấ ượ c đ n gi n. wiki ả ơ
đ ượ ấ c cung c p là đ y đ ch c năng và m m d o, nh ng không cung c p ư ứ ủ ề ẻ ấ ầ
ch c năng r t ph c t p. Nó không thay th đ c cho m t website đ y đ ứ ạ ế ượ ứ ấ ầ ộ ủ
thông tin và đ t, nh ng nó là tài nguyên tuy t v i cho l p trình ượ c qu n lý t ả ố ệ ờ ư ậ
ế ớ viên ghi chép và là m t website c b n c a d án. M t trong nh ng u th l n ơ ả ủ ự ữ ư ộ ộ
nh t c a wiki c a Google Code đ i v i các gi i pháp đ t ch d án khác là ố ớ ấ ủ ủ ả ỗ ự ặ
b n có th so n s a n i dung thông qua m t trình so n th o wiki ho c thông ạ ể ạ ử ộ ả ặ ạ ộ
qua kho c a d án d a trên web. Đi u này làm cho s truy c p t ủ ự ậ ớ ự ự ề ử ụ i và s d ng
các t p wiki m m d o h n nhi u. ề ệ ẻ ề ơ
Theo dõi các v n đ : ấ ề
M t trình theo dõi các v n đ đ c cung c p cho phép nh ng ng ề ượ ấ ộ ữ ấ ườ i
i, các yêu c u tính s d ng báo cáo 'các v n đ ', b t k chúng là các báo cáo l ử ụ ề ấ ể ấ ổ ầ
năng hay các v n đ cài đ t. ấ ề ặ
Các b n t i v : ả ả ề
Tr
ng ĐH Công nghi p Hà N i
Khoa Công ngh thông tin
ườ
ệ
ộ
ệ
Ph n các b n t các ả ả ề i v là m t khu v c đ n gi n cho vi c l u tr ơ ệ ư ự ầ ả ộ ữ
i v . Chúng th t p đ t ệ ể ả ề ườ ng s là các phát hành ph n m m và các gói tài li u. ầ ẽ ệ ề
Các feed:
RSS và Atom feed toàn di n đ c cung c p đ t o thu n l ệ ượ ể ạ ậ ợ ấ ệ i cho vi c
giám sát các d ch v và các gadgets có th đ c s d ng trong các trang wiki ể ượ ử ụ ụ ị
đ giám sát các feed bên ngoài. ể
Các ch c năng qu n tr nhóm: ứ ả ị
Chúng bao g m s qu n lý các thành viên d án và c u hình c a các ự ủ ự ả ấ ồ
ữ công c có s n. Google cũng cung c p m t s d ch v khác có th là h u ấ ộ ố ị ụ ụ ể ẵ
c đ t ch trên Google Code, ho c th m chí b t kỳ d ng cho các d án đ ụ ự ượ ặ ặ ậ ỗ ở ấ
ế đâu khác. Không có yêu c u ph i s d ng chúng, nh ng nó có ý nghĩa n u ả ử ụ ư ầ
b n c n các tính năng đó, vì các thành viên d án c a b n đ ạ ủ ạ ự ầ ượ c ký r i trong ồ
ng l h th ng đăng nh p duy i t tài kho n Google c a h và vì th s h ủ ế ẽ ưở ả ọ ợ ừ ệ ố ậ
nh t c a Google. ấ ủ
c k t n i t i t Các d ch v h u d ng khác có th đ ụ ụ ữ ể ượ ị ế ố ớ ừ ạ site d án c a b n ủ ự
g m:ồ
L p l ch: ậ ị
ặ H u d ng cho vi c giám sát các phát hành c a d án, các cu c g p ự ủ ữ ụ ệ ộ
g và đi u hành các v n đ nh bi u quy t. ấ ỡ ề ư ể ế ề
Các tài li u và b ng tính: ệ ả
ộ Chia s các tài li u gi a các thành viên d án cho s phát tri n c ng ự ữ ự ể ẻ ệ
tác th c s là d dàng b ng vi c s d ng các ng d ng văn b n và b ng tính. ệ ử ụ ự ự ứ ụ ễ ằ ả ả
Phân tích:
Tr
ng ĐH Công nghi p Hà N i
Khoa Công ngh thông tin
ườ
ệ
ộ
ệ
Google Analytics có th đ c kích ho t cho d ansn đ giám sát giao ể ượ ự ể ạ
thông web.
Tr
ng ĐH Công nghi p Hà N i
Khoa Công ngh thông tin
ườ
ệ
ộ
ệ
CH
NG II: H
NG D N S D NG GOOGLE CODE
ƯƠ
ƯỚ
Ẫ Ử Ụ
1. H ng d n t o d án trên Google Code
ẫ ạ ự ướ
ư ộ
ự ả
ệ ộ ự ệ ươ ệ ữ
ữ ơ ư ử ụ ộ ự ớ ệ ấ ng tác gi a các thành viên trong đ i d án có th r t khó ể ấ ữ c nh ng ể ể ượ ư ớ
Chúng ta s d ng Google Code nh m t Web hosting, là n i l u tr các d án, các tài li u r t hi u qu . Ngoài ra, khi làm vi c nhóm v i m t d án nào đó, vi c t ki m soát. Nh ng v i Google Code chúng ta có th ki m soát đ ể v n đ n y sinh khi làm vi c nhóm. ấ ề ả ệ
Đ có th s d ng đ ể ượ ụ ả ị
ể ử ụ ủ ầ ậ ư ả ộ ị
c d ch v Google Code, chúng ta c n ph i có ỉ m t tài kho n c a Google (nh Gmail, Calendar. . .). Truy c p đ a ch http://code.google.com. Đăng nh p b ng tài kho n Google ả ằ ậ
Tr
ng ĐH Công nghi p Hà N i
Khoa Công ngh thông tin
ườ
ệ
ộ
ệ
Kh i t o Project và ti n hành nh p các thông tin c n thi t cho ở ạ ế ầ ậ ế
Project
Tr
ng ĐH Công nghi p Hà N i
Khoa Công ngh thông tin
ườ
ệ
ộ
ệ
Project Name: Tên d ánự
Project summary: Gi i thi u tóm t t v d án ớ ệ ắ ề ự
Description: Mô t v d án ả ề ự
Version control system: L a ch n phiên b n client qu n lí source ọ ự ả ả
code
Project label(s): T khóa liên quan đ n d án (cái này có th không ế ự ừ ể
c n nh p gì) ậ ầ
c l u tr trên ư ậ
ượ ư ự ộ ự ả ế ệ
Nh v y là chúng ta đã kh i t o xong m t d án đ ữ ở ạ Google Code. Công vi c ti p theo c a chúng ta là qu n lý d án đó trên ủ Google Code.
Tr
ng ĐH Công nghi p Hà N i
Khoa Công ngh thông tin
ườ
ệ
ộ
ệ
2. Thi
t l p các ch c năng c a Project ế ậ ứ ủ
2.1.
Project Home
ể Khi kh i t o thành công d án trên Google Code, chúng ta s chuy n ở ạ ự ẽ
đ n giao di n Project Home c a d án. T i đây chúng ta có cái nhìn t ng quan ế ủ ự ệ ạ ổ
2.2. Thêm và qu n lý thành viên.
v thông tin d án ề ự
ả
T i Project Home chúng ta ch n m c ụ People đ thêm thành viên vào ể ạ ọ
đ i d án, cũng nh hi n th danh sách các thành viên trong đ i d án. ộ ự ư ể ộ ự ị
ủ Thêm m i m t thành viên vào đ i d án b ng cách nh p Email c a ộ ự ậ ằ ộ ớ
t l p lu t cho thành thành viên đó trong khung Add Members. M c ụ Role là thi ế ậ ậ
viên đó, có th qu n tr , thay đ i m i th tr ng d án hay không. ứ ọ ự ể ả ổ ọ ị
Tr
ng ĐH Công nghi p Hà N i
Khoa Công ngh thông tin
ườ
ệ
ộ
ệ
2.3. Tab Issues
Là n i các thành viên trong đ i d án đ a ra các v n đ phát sinh, ự ư ề ấ ơ ộ
các l i trong quá trình làm vi c, và các hình th c, các gi i pháp gi ỗ ứ ệ ả ả ế i quy t
(n u có). ế
2.4. Wiki
Tóm t t v n đ phát sinh, mô t ắ ấ ề ả ấ v n đ . ề
Tr
ng ĐH Công nghi p Hà N i
Khoa Công ngh thông tin
ườ
ệ
ộ
ệ
Là n i đ a ra các đ nh nghĩa, các khái ni m rõ ràng cho d án. Các ơ ư ự ệ ị
thành viên có th d dàng tra kh o và hình dung. Nó gi ng nh m t t ư ộ ừ ể đi n ể ễ ả ố
thu nh cho d án. ự ỏ
Đ t o m t Wiki m i. Ch n ể ạ ọ New Page ộ ớ
Page Name: Tên Wiki
Content: N i dung c a đ nh nghĩa ủ ị ộ
Label(s): T khóa liên quan ừ
i cũng có th bình lu n tr c ti p cho Wiki đó. M i ng ọ ườ ự ế ể ậ
Tr
ng ĐH Công nghi p Hà N i
Khoa Công ngh thông tin
ườ
ệ
ộ
ệ
2.5.
Source
Đây là ph n quan tr ng nh t c a d án, là n i ch a toàn b mã ấ ủ ư ự ầ ộ ơ ọ
ngu n c a d án. ồ ủ ự
Check out:
Tab này cung c p cho các thành viên trong đ i d án username và ộ ự ấ
ổ password đ có th upload source code lên d án. Cũng có th thay đ i ự ể ể ể
ẫ password. V username chính là email c a thành viên đó. Password là ng u ủ ề
ng h p quên password, ta truy c p vào nhiên và không th thay đ i, trong tr ể ổ ườ ậ ợ
tab này và nh n ấ Regenerate
Tr
ng ĐH Công nghi p Hà N i
Khoa Công ngh thông tin
ườ
ệ
ộ
ệ
Browse: Cây th m c l u tr c a d án ư ụ ư ữ ủ ự
Changes:
Li t kê nh ng thay đ i phiên b n cùng comment t ệ ữ ả ổ ươ ờ ng ng, th i ứ
2.6. Administer
gian, ng i comment và phiên b n c a Source. ườ ả ủ
T ng quan v thông tin, ph n quy n, các đ nh nghĩa, các v n đ theo ề ề ề ầ ấ ổ ị
dõi c a d án. ủ ự
Tr
ng ĐH Công nghi p Hà N i
Khoa Công ngh thông tin
ườ
ệ
ộ
ệ
i các thông tin v d án, mô t T i đây b n có th thi ạ ể ạ t l p l ế ậ ạ ề ự ả ấ , gi y
phép. B n cũng có th cài đ t theo dõi, các wiki. . . ể ạ ặ
CH
NG D N S D NG TORTOISESVN
Ẫ Ự Ụ
ƯƠ 1. Gi
NG III: H ƯỚ i thi u v Subversion ệ ề ớ Subversion hay còn g i là SVN là m t h th ng qu n lý ph n tài ầ ả ộ ệ ố ọ ế ợ c p nh t, so sánh và k t h p ậ ự ậ ủ
ộ ự ệ ố ả
nguyên c a m t d án. H th ng có kh năng t tài nguyên m i vào ph n tài nguyên cũ. ầ ớ
ặ ượ ệ ố ả ặ ặ ầ ầ
2. H ng d n s d ng ph n m m TortoiseSVN
Đ cài đ t đ ể TortoiseSVN là client t ề c h th ng SVN ta c n ph i c t đ t thêm ph n m m t nh t c a h th ng SVN. ấ ủ ệ ố ố
ẫ ử ụ ầ
ướ B ướ ề c 1: Download và cài đ t ặ
Truy c p vào đ a ch ỉ http://tortoisesvn.net/downloads.html để ậ ị
download ph n m m TortoiseSVN v . Tùy ch n phiên b n 32-bit hay 64-bit ề ề ầ ả ọ
ng ng v i h đi u hành đang s d ng. t ươ ứ ớ ệ ề ử ụ
Ti n hành cài đ t ph n m m trên máy. ề ế ặ ầ
Tr
ng ĐH Công nghi p Hà N i
Khoa Công ngh thông tin
ườ
ệ
ộ
ệ
Nh n ấ Next đ ti p t c ể ế ụ
Tr
ng ĐH Công nghi p Hà N i
Khoa Công ngh thông tin
ườ
ệ
ộ
ệ
Ch n ọ I accept terms in the License Agreement r i nh n ấ Next ồ
Browse Thay đ i n i cài đ t b ng cách nh n nút ặ ằ ổ ơ ấ
Nh n ấ Next đ ti p t c. ể ế ụ
Tr
ng ĐH Công nghi p Hà N i
Khoa Công ngh thông tin
ườ
ệ
ộ
ệ
Nh n ấ Install đ ti n hành cài đ t TortoiseSVN ể ế ặ
t quá trình cài đ t. Sau đó, nh n ấ Finish đ hoàn t ể ấ ặ
B c 2: T o 1 SVN Checkout ướ ạ
Click chu t ph i vào n i mu n t o ch n SVN check out ố ạ ả ộ ọ ơ
đây mình ch n folder “ L p KTPM1”. Ở ọ ớ
Tr
ng ĐH Công nghi p Hà N i
Khoa Công ngh thông tin
ườ
ệ
ộ
ệ
URL of repository : Mình l y link m c đ nh google cho là: https://au- ặ ị ấ
ktpm1-khoa5.googlecode.com/svn/trunk/ ph n source code. ở ầ
Xong thì nh n OK. Ta s có 1 th m c r ng ư ụ ỗ ẽ ấ
B c 3: Commit Project ướ
Copy 1 project vào folder “L p KTPM1”. ớ
Chu t ph i vào folder “L p KTPM1” . Xu t hi n Commit ệ ả ấ ộ ớ
Tr
ng ĐH Công nghi p Hà N i
Khoa Công ngh thông tin
ườ
ệ
ộ
ệ
Tr
ng ĐH Công nghi p Hà N i
Khoa Công ngh thông tin
ườ
ệ
ộ
ệ
i có ID và Password riêng c a mình và l y trên trang M i ng ỗ ườ ủ ấ
code.google.com “Tab Source”.
Click ch n googlecode.com password. ọ
Sau đó đi n ID và Password ta đ c k t qu nh sau: ề ượ ế ả ư
Tr
ng ĐH Công nghi p Hà N i
Khoa Công ngh thông tin
ườ
ệ
ộ
ệ
Click OK và b n đã thành công . Ki m tra l i b ng cách vào Tab ể ạ ạ ằ
Source/Changes
Nh v y chúng ta đã hoàn thành vi c t o Checkout cũng nh ệ ạ ư ậ ư
ể ự Commit source code lên server. Ngoài vi c Commit file, chúng ta có th th c ệ
hi n nhi u thao tác nh Getlock, Export, Merge. . . T t c đ u đ c thao tác ấ ả ề ượ ư ệ ể
v i TortoiseSVN. ớ
Tr
ng ĐH Công nghi p Hà N i
Khoa Công ngh thông tin
ườ
ệ
ộ
ệ
K T LU N
Ậ
Ế
Trong quá trình h c t p môn h c này, ọ ậ ọ ứ nhóm đã tìm hi u nh ng ki n th c ữ ể ế
c b n v ơ ả ề ph n m m mã ngu n m , cũng nh tìm hi u v Google Code và ư ề ể ề ầ ở ồ
cách t o m i m t d án trên Google Code ộ ự ạ ớ ề . K t h p v i s d ng ph n m m ớ ử ụ ế ợ ầ
TortoiseSVN đ qu n lý source code. T đó ừ ể ả đ a ra đ ư ượ ế ạ c nh ng th m nh ữ
c a ph n m m mã ngu n m , và nh ng ng d ng c a Google Code. ủ ữ ứ ủ ụ ề ầ ồ ở
Google Code là s n ph m c a Google đ a ra nh m gia tăng m i quan h ủ ư ả ẩ ằ ố ệ
gi a các nhà phát tri n ph n m m mã ngu n m , đ ng th i cung c p các ở ồ ữ ề ể ầ ấ ờ ồ
API.
Đ c bi ặ ệ t là cũng c p n i l u tr các d án, cung c p các ch c năng phù ự ơ ư ữ ứ ấ ấ
t trong quá trình làm vi c theo nhóm. h p và c n thi ợ ầ ế ệ
TortoiseSVN là ph n m m qu n lý qu n lý tài nguyên t ề ầ ả ả ố ự t nh t cho d án ấ
Google Code. V i ph n m m này, h th ng có th t ề ệ ố ể ự ậ ế c p nh t, so sánh, k t ầ ậ ớ
h p tài nguyên m i v i các ph n tài nguyên cũ. ợ ớ ớ ầ
ự Tuy nhiên, nhóm cũng v p ph i m t s khó khăn trong quá trình th c ộ ố ả ấ
hi n đ tài nh : ch a th c hi n đ c ch c năng Getlock c a TortoiseSVN, ư ư ự ệ ề ệ ượ ủ ứ
ch a tìm hi u đ ư ể ượ ữ c v v n đ cài đ t Project trên Google Code cho nh ng ề ấ ề ặ
d án Private. ự
c nh ng sai sót. Kính Do th i gian còn có h n, nên không th tránh đ ạ ể ờ ượ ữ
mong nh n đ c s đóng góp chân thành t ậ ượ ự ừ ầ th y và các b n đ nhóm có c ạ ể ơ
h i hoàn thành bài t p l n này. ộ ậ ớ
Chúng em xin chân thành c m n! ả ơ
Tr
ng ĐH Công nghi p Hà N i
Khoa Công ngh thông tin
ườ
ệ
ộ
ệ
TÀI LI U THAM KH O
Ả
Ệ
- Silde bài gi ng môn Công c và môi tr
ụ ườ ủ ng phát tri n ph n m m c a ể ề ầ
-
http://vietbao.vn/Vi-tinh-Vien-thong/Google-Code-huong-ve-cong-dong-ma-nguon- mo/40070937/217/
-
http://thuctapcungdoanhnghiep.com/hoc-lap-trinh-website/huong-dan-su-dung-google- code/
http://oss-watch.ac.uk/resources/googlecode
-
http://vi.wikipedia.org/wiki/Google_Code
-
ả th y Nguy n Trung Phú ễ ầ