Showing posts with label Công nghệ. Show all posts
Showing posts with label Công nghệ. Show all posts

Wednesday, March 19, 2008

Cài đặt subversion trên nền window

- Ta có thể tải bản subversion mới nhất ở http://subversion.tigris.org/
- Chọn gói subversion for Windows NT, 2000, XP and 2003
- Tiến hành cài đặt, giả sử ta cài đặt vào thư mục %Program Files/Subversion












- Sau khi cài đặt, ta thiết lập các biến môi trường cho subversion







- Sau đó ta tiếp tục tải gói TortoiseSVN ở http://tortoisesvn.tigris.org/, đây là Subvertion client được xây dựng như là một shell của window, ta sẽ sử dụng TortoiseSVN thay cho các câu lệnh commandline của svn








- Tiếp theo, ta sẽ tạo một thư mục làm Repository cho các project, ví dụ E:\Subversion Repository với TortoiseSVN thay cho lệnh commandline svn mkdir
o Tạo thư mục E:\Subversion Repository
o Vào thư mục này, click phải chuột chọn TortoiseSVN để tạo Repository





o Chọn Database, có 2 loại Database, sự khác nhau giữa 2 DB này ta sẽ bàn tới ở bài viết khác, ở đây ta chọn FSFS





o Sau khi tạo thành công, trong thư mục Subvertion Repository sẽ có các file và thư mục như hình





- Xong bước tạo Repository, ta tiếp tục cấu hình cho Repository này
o Mở file E:\Subversion Repository\conf\ svnserve.conf, ta bỏ đi các comment bên trong

[general]
anon-access = none
auth-access = write

password-db = passwd

authz-db = authz

realm = My First Repository

- anon-access = none/read/write : cho phép user chưa thẩm định quyền truy cập có các chức năng không/đọc/ghi
- auth-access=none/read/write : cho phép user đã thẩm định quyền có các chức năng không/đọc/ghi
- password-db=passwd : chỉ ra file chứa thông tin mật khẩu là file passwd – ngang hàng với file cấu hình này
- authz-db = authz : chỉ ra file chứa thông tin phân quyền là file authz – ngang hàng với file cấu hình này
o Sau khi cấu hình file svnserve.conf, ta tiếp tục cấu hình thông tin cho 2 file passwd và authz ở trên

File paswd

[users]
phuongnhn = phuong
nguyend = nguyen
thaint = thai
tuanvd = tuan


File authz

[groups]
admin = phuongnhn,nguyend
java = phuongnhn,nguyend, tuanvd
csharp= phuongnhn,nguyend, thaint
php = phuongnhn,nguyend

[/]
@admin = rw

[/javaproject]
@java = rw
csharp = r

[/csharpproject]
@csharp = rw
Phuongnhn = r


[/]: thư mục gốc
Chỉ có nhóm admin có quyền đọc và ghi

[/javaproject]: thư mục dự án javaproject
Nhóm java có thể đọc và ghi
Nhóm csharp được phép đọc

[/csharpproject]: thư mục dự án csharpproject
Nhóm csharp được phép đọc và ghi
User phuongnhn được phép đọc

- Tới bước này ta đã cấu hình thông tin xong cho Repository, tiếp theo ta sẽ khởi động svnserver, sử dụng command-line để run server svn với câu lệnh như sau

svnserve --daemon --listen 3000 --root "E:\Subversion Repository"

trong đó,
[--daemon] hoặc [-d]: thiết lập chế độ daemon cho svn server
[--listen-port] 3000: thiết lập cổng cho svn server
Ngoài ra ta có thể dùng tham số --listen-host để xác định hostname hoặc IP
--root "E:\Subversion Repository": thư mục gốc của server
Ngoài ra có thể tải SVNService.msi để run server như một serivce (cái này chưa thử :ko: ), tải tại mucdong.tk

Sau khi server đã run OK ta có thể làm việc với subversion sử dụng TortoiseSVN :ko:

Tạo một project mới trong Repository theo các bước sau













==> Tương tự cho việc tạo thêm các thư mục khác, hay xóa các thư muc ...





Trên máy client, ta sẽ checkout thông tin từ Repository
- Tạo một thư mục để chứa thông tin dự án
- Check out các thông tin từ Repository theo các bước sau













==> Một số thao tác cơ bản khác
- Tạo mới file/thư mục












Trước mỗi bước commit những thông tin mới lên server ta nên tiến hành update lại những thay đổi mới từ server để svn merge lại các thông tin mới này tránh conflict





Sau khi update ta có thể commit lại server những thay đổi ở client











- Các chức năng như Xóa file/thư mục, So sánh các phần khác nhau giữa các version của một file chúng ta có thể tham khảo trong Help của TortoiseSVN



Tuesday, September 18, 2007

Kiến trúc MVC

Kiến trúc Model-View-Controller(MVC) là gì?

Kiến trúc MVC là việc chia tất cả mục của một ứng dụng ra làm ba thành phần (component) khác nhau Model, View và Controller. Các thành phần của kiến trúc MVC một trách nhiệm duy nhất và không phụ thuộc vào các thành phần khác. Những sự thay đổi trong một thành phần sẽ không có hoặc là có rất ít ảnh hưởng đến các thành phần khác. Các trách nhiệm của mỗi thành phần là

- Model: Model được giao nhiệm vụ cung cấp dữ liệu cho cơ sở dữ liệu và lưu dữ liệu vào các kho chứa dữ liệu. Tất cả các nghiệp vụ logic được thực thi ở Model. Dữ liệu vào từ người dùng sẽ thông qua View được kiểm tra ở Model trước khi lưu vào cơ sở dữ liệu. Việc truy xuất, xác nhận, và lưu dữ liệu là một phần của Model
- View: View hiển thị các thông tin cho người dùng của ứng dụng và được giao nhiệm vụ cho việc nhận các dữ liệu vào từ người dùng, gửi đi các yêu cầu đến bộ điều khiển, sau đó là nhận lại các phản hồi từ bộ điều khiển và hiển kết quả cho người dùng. Các trang HTML, JSP, các thư viện thể và các file nguồn là một phần của thành phần View
- Controller: Controller là tầng trung gian giữa Model và View. Controller được giao nhiệm vụ nhận các yêu cầu từ phía máy khách. Một yêu cầu được nhận từ máy khách được thực hiện bởi một chức năng logic thích hợp từ thành phần Model và sau đó sinh ra các kết quả cho người dùng và được thành phần View hiển thị. ActionServlet, Action, ActionForm và struts-cònig.xml là các phần của Controller.





Với cơ sở là kiến trúc MVC, ta có thể xây dựng các ứng dụng của mình, tránh được rất nhiều những vất vả khi bảo trì, thay đổi. Những thay đổi ở mỗi thành phần thường rất ít khi ảnh hưởng đến các thành phần khác