Chính vì vậy, có thể kể đến một vài lợi ích cơ bản của điện toán đám mây như sau : Sử dụng cáctài nguyên tính toán động Dynamic computing resources : Các tài nguyên được cấp phát cho do
Trang 1TRƯỜNG ĐẠI HỌC VÕ TRƯỜNG TOẢN KHOA CƠNG NGHỆ THƠNG TIN
BÁO CÁO GIỮA KÌ MƠN
PHÁT TRIỂN PHẦN MỀM MÃ NGUỒN MỞ
Đề tài:
QUẢN LÍ SOURCE CODE – HỆ THỐNG QUẢN LÍ
WWW.COLLAB.NET Giáo viên hướng dẫn:
TỐNG BẢO LỘC
Nhĩm thực hiện:
DANH CỌP MSSV: 100t060118
LÊ THANH DIỆP MSSV: 100t060107 NGUYỄN HÀ LỈNH MSSV: 100t060075 PHẠM MINH NHỰT MSSV: 111c670011
Hậu Giang – Năm 2013
Trang 2LỜI CAM ĐOAN
………
………
………
………
………
………
………
………
Hậu Giang, ngày 26 tháng 10 Năm 2013 Sinh viên thực hiện (Ký và ghi rõ họ tên) DANH CỌP LÊ THANH DIỆP PHẠM MINH NHỰT
NGUYỄN HÀ LỈNH
Trang 3NHẬN XÉT CỦA GIÁO VIÊN HƯỚNG DẪN
_
Hậu Giang, ngày … tháng … Năm 2012
Giáo viên hướng dẫn
(Ký và ghi rõ họ tên)
TỐNG BẢO LỘC
Trang 4Câu 1: Giới thiệu về collab, mục đích sử dụng.
+ Collabnet được thành lập vào 7/1999 bởi Tim O’reilly và Brian Behlendorf bill protelli tham gia collabnet như giám đốc điều hành vào 8/1999 và vẫn giử vị trí đó
+ Một trong những dự án đầu tiên của nó là soureXchange
+ CollabNet nghỉ hưu sourceXchange sau 18 tháng và tăng tập chung vào sourcecast, một nền tảng ban đầu nó phát hành trong tháng 12/1999
Để gúp các nhóm phân phối xây dựng các ứng dụng phần miềm
+ sau khi trải qua một vài bản phát hành chính, sourcecast đã được tái đưa ra như là collabnet enterprise edition trong năm 2002
+ năm 2000 collabnet thành lập dứ án nguồn mở subversion
+ 2/ 2010 collabnet mua Danube
+ 10/2010 collabnet muacodesion, 30/7/2012 collabnet mở rộng khả năng của codesion và phát hành nó theo các tên cloudForge
Sản phẩm của collabnet:
Collabnet subversion phát triển edge,một subversion phần miềm cho windows, red hat enterprise linux và solaris và Collabnet teamForge, quản lý vòng đời ứng dụng các sản phẩm khác bao gồm quản lý phòng thí nghiệm để quản lý tỳ chọn cấu hình, scrumworks cho nhanh phát triển
và cloudForge cho việc triển khai phần mềm và mở rộng quy mô Collabnet cũng sản xuất các mã nguồn mở Collabnet dektop, phát hành dước giấy phép công Eclipse, cho phép các nhà phát triển để kết nối không lật đổ cũng như các máy chủ đang chạy Collabnet TeamForge, và collabnet quản lý phòng thí nghiệm
Mục đích sử dụng
trước đây để có thể triển khai một ứng dụng (ví dụ một trang Web), bạn phải đi mua/thuê một hay nhiều máy chủ (server), sau đó đặt máy chủ tại các trung tâm dữ liệu (data center) thì nay điện toán đám mây cho phép bạn giản lược quá trình mua/thuê đi Bạn chỉ cần nêu ra yêu cầu của mình, hệ thống sẽ tự động gom nhặt các tài nguyên rỗi (free) để đáp ứng yêu cầu của bạn Chính vì vậy, có thể kể đến một vài lợi ích cơ bản của điện toán đám mây như sau :
Sử dụng cáctài nguyên tính toán động (Dynamic computing resources) : Các tài nguyên được cấp phát cho doanh nghiệp đúng như những gì doanh nghiệp muốn một cách tức thời Thay vì việc doanh nghiệp phải tính toán xem có nên mở rộng hay không, phải đầu tư bao nhiêu máy chủ thì nay doanh nghiệp chỉ cần yêu cầu “Hey, đám mây, chúng tôi cần thêm tài nguyên tương đương với 1 CPU 3.0 GHz, 128GB RAM…” và đám mây sẽ tự tìm kiếm tài nguyên rỗi để cung cấp cho bạn Giảm chi phí: Doanh nghiệp sẽ có khả năng cắt giảm chi phí để mua bán, cài đặt và bảo trì tài nguyên Rõ ràng thay vì việc phải cử một chuyên gia đi mua máy chủ, cài đặt máy chủ, bảo trì máy chủ thì nay bạn
Trang 5chẳng cần phải làm gì ngoài việc xác định chính xác tài nguyên mình cần
và yêu cầu Quá tiện!
Giảm độ phức tạp trong cơ cấu của doanh nghiệp:Doanh nghiệpsản xuất hàng hóa mà lại phải có cả một chuyên gia IT để vận hành, bảo trì máy chủ thì quá tốn kém Nếukhoán ngoài được quá trình này thì doanh nghiệpsẽ chỉ tập trung vào việc sản xuất hàng hóa chuyên môn của mình
và giảm bớt được độ phức tạp trong cơ cấu
Tăng khả năng sử dụng tài nguyên tính toán: Một trong những câu hỏi đau đầu của việc đầu tư tài nguyên (ví dụ máy chủ) là bao lâu thì nó sẽ hết khấu hao, tôi đầu tư như thế có lãi hay không, có bị outdate về công nghệhay không Khi sử dụng tài nguyên trên đám mây thì bạn không còn phải quan tâm tới điều này nữa
Câu 2: Tìm hiểu về hệ thống SVN (sub version)
Trả lời:
+ Subversion (viết tắt là SVN) là một hệ thống quản lý version (version control system (VCS)) được giới thiệu vào năm 2000 bởi công ty collabnet
+ 8/2001 subversion chính thức được công bố dước bản quyền của collabnet: mã nguồn mở, tự do tải về, sữa đổi, phân tán lại, không cần xin phép
Hệ thống SVN là một hệ thống quản lý tài nguyên của dự án Hệ thống có khả năng tự cập nhập, so sánh kết hợp tài nguyên mới vào tài nguyên cũ
Hỗ trợ nhóm làm việc trên cùng một project, việc nhiều người cùng chỉnh sữa nội dung của một file là điều không thể tránh khỏi, SVN cung chức năng có thể thực hiện việc này một cách đơn giản và an toàn
Trang 6subversion là hệ thống quản lý source code tập trung (centralized).
subversion quản lý tập tin và thư mục theo thời gian
việc ghi log cụ thể chi tiết giúp ta quản lý quá trình phát triển dự án tốt hơn
điểm đặt biệt của SVN là nó lưu lại tất cả những gì thay đổi trên hệ thống file: file nào đã bị thay đổi lúc nào, thay đổi như thế nào, và ai đã thay dổi nó
SVN cũng cho phép recover lại những version cũ một cách chính xác subversion hỗ trợ khá nhiều giao thức để kết nối giữa client và server + mô hình tập trung
- CVS, subversion, perforce
+ mô hình phân tán
- git, mercurial,darcs
Các thành phần của subversion
+ svn: command-line client
+ svnversion: chương trình báo tình trạng của một phiên bản làm việc (working copy)
+ svnlook: tiên ít để kiểm tra trực tiếp một kho dử liệu subversion (subversion repository)
+ svnadmin: tiện ít tạo, thay đổi, sửa chửa một kho dử liệu subversion + mod_dav_svn: module để truy cập vào kho dử liệu svn qua web/apache web server
+ svnserve: một svn standalone server
Câu 3: Cách cài đặt chi tiết collab
Nhấn next
Trang 7Nhấn next.
Nhấn next
Nhấn next
Trang 8Nhấn next.
Nhấn next
Chương trình đang chạy
Trang 9Nhấn Finish để hoàn tất.
Khi cài đặc xong ta vào trình duyệt gõ http://localhost:3343/csvn
Câu 4: cài đặt phần mềm client TortoiseSVN, sub Eclipse trên Eclipse IDE dể làm việc với collab.
Cài đặt chương trình tortoise SVN
Trang 10Chọn run.
Chọn next để tiếp tục
Trang 11Chọn I accept the terms in the license agreement rồi nhấn next.
Chọn next để tiếp tục
Trang 12Chọn next để tiếp tục.
Nhấn install để bắt đầu cài đặt chương trình
Câu 5: Cách quản lý dự án subversion.
Hỗ trợ nhóm làm việc trên cùng một project, việc nhiều người cùng chỉnh sửa nội dung của một file là điều không thể tránh khỏi SVN cung
Trang 13cấp các chức năng để có thể thực hiện việc này một cách đơn giản và an toàn
+ Subversion là hệ thống quản lý source code tập trung (Centralized) + Subversion quản lý tập tin và thư mục theo thời gian
+ Việc ghi log cụ thể chi tiết giúp ta quản lý quá trình phát triển dự
án tốt hơn
+ Điểm đặt biệt của SVN là nó lưu lại tất cả những gì thay đổi trên
hệ thống file: file nào đã bị thay đổi lúc nào, thay đổi như thế nào, và ai
đã thay đổi nó
+ SVN cũng cho phép recover lại những version cũ một cách chính xác
+ Subversion hỗ trợ khá nhiều giao thức để kết nối giữa client và server
Giới thiệu tất cả chức năng trên collab
- Activity
Quản lý các hoạt động diễn ra của project
- Forum
Cho phép tạo forum, thread, gởi mail thông báo khi có người gởi lên forum Cho phép chọn chức năng để highlight những bài mới trong forum
Tracker
Định nghĩa việc theo dõi
Câu 6: demo làm việc giữa TortoiseSVN, plugin sub Eclipse trên Eclipse IDE với collab.
Tạo dự án mới
Trang 14Trang chủ dự án.
Câu 7: so sánh với các hệ thống subversion khác.
so sánh giữa SVN và visual source safe
visual source safe:
Được tích hợp sẵn vào visual studio nên dùng rất thuận tiện
Sử dụng hai cơ chế là check in một người và nhiều người (nếu một người check in thì người khác không thể check in, do sẽ không bị vấn đề conflic
SVN:
Trang 15Tích hợp vào windows Explorer, mỗi khi cập nhập phải vào đúng thư mục rồi cập nhập, rất bất tiện
So sánh phiên bản làm việc với một revision của repository
+ $ svn diff –r 3 rules.txt
+ index: rules.txt
=============================================
+ -rules.txt (revision 3)
+ +++ rules.txt (working copy)
+ @@ -1,4+1,5 @@
+ be kind to others
+ freedom = responsibility
+ everything in moderation
+ -chew with your mouth open
+ +chew with your mouth closed
+ +listen when others are speaking
So sánh 2 revision trên repository
+ $ svn diff –r2:3 rules.txt
+ index: rules.txt
=============================================
+ -rules.txt (revision 2)
+ +++ rules.txt (revision 3)
+ @@ -1,4+1,4 @@
+ be kind to others
+ -freedom = chocolate lce cream
+ +freedom = responsibility
+ everything in moderation
+ +chew with your mouth open
+ +listen when others are speaking