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ú ễ ầ