47
TÌM HIỂU GOOGLE CODE VÀ TORTOISESSVN LỚP : CĐTH10B Nhóm : THUẬN ĐỂ Thành Viên : Hoàng Đức Ngọc Lê Mạnh Tiến Trần Ngọc Hải Triều Huỳnh Trọng Ân Lương Văn Trung Nguyễn Quang Đạt -2012-

Tim hieugooglecode tortoisesvn

Embed Size (px)

Citation preview

Page 1: Tim hieugooglecode tortoisesvn

TÌM HIỂU GOOGLE CODE VÀ TORTOISESSVN

LỚP : CĐTH10B

Nhóm : THUẬN ĐỂ

Thành Viên : Hoàng Đức Ngọc

Lê Mạnh Tiến

Trần Ngọc Hải Triều

Huỳnh Trọng Ân

Lương Văn Trung

Nguyễn Quang Đạt

-2012-

Page 2: Tim hieugooglecode tortoisesvn

Mục lục

Chương 1: Tổng quan .......................................................................................... 1

1.1. VCS ............................................................................................................ 1

1.2. SVN ............................................................................................................ 2

1.2.1 SVN là gì ................................................................................................... 2

1.2.2.Các lệnh cơ bản trong SVN ......................................................................... 2

Chương 2: Google Code ....................................................................................... 4

2.1. Tìm hiểu Google Code .................................................................................. 4

a.Google Code? .................................................................................................. 4

b.Các tính năng của Google Code ........................................................................ 4

2.2. Tạo project trên google code. ...................................................................... 7

2.3. Sử dụng Project Hosting trên Google Code .................................................. 11

Chương 3: TortoiseSVN ...................................................................................... 15

3.1. Giới thiệu, download và cài đặt TortoiseSVN. ............................................... 15

3.2. Các tính năng chung .................................................................................. 17

Trình đơn ngữ cảnh ............................................................................................ 19

Các Thiết Lập Tổng Quát ..................................................................................... 19

Ngôn ngữ ........................................................................................................ 20

Các Thiết Lập Trình đơn Ngữ Cảnh .................................................................... 21

Các Thiết Lập Hộp Thoại TortoiseSVN 1 ............................................................. 22

Thiết Lập Màu TortoiseSVN ............................................................................... 24

Các Màu Sắc Của đồ Thị Sửa đổi ....................................................................... 25

Các Thiết Lập Cho Lớp Phủ Biểu Tượng ................................................................ 26

Lựa Chọn Tập Hợp Biểu Tượng ......................................................................... 27

Các Thiết Lập Mạng .......................................................................................... 28

Các Thiết Lập Cho Chương Trình Bên Ngoài .......................................................... 29

Thiết Lập Cho Dữ Liệu đã Lưu ............................................................................. 30

Page 3: Tim hieugooglecode tortoisesvn

Lưu đệm Tường Trình ......................................................................................... 31

Hộp Thoại Thiết Lập, Trang Tích Hợp Bộ Theo Dõi Vấn đề .................................. 33

Hộp Thoại Thiết Lập, Trang TortoiseBlame ........................................................ 33

Thiết Lập Nâng Cao ............................................................................................ 34

3.3. Google Code và tortoiseSVN ....................................................................... 34

Sử dụng phần mềm TortoiseSVN ......................................................................... 36

Import (Upload) file dự án lên Repository của Google Code ................................ 36

Checkout (Download) dự án ............................................................................. 39

Commit (Cập nhật thay đổi lên Server) .............................................................. 41

update (cập nhật thay đổi từ trên server) ........................................................... 43

Page 4: Tim hieugooglecode tortoisesvn

1

Chương 1: Tổng quan Đối với những phần mềm đơn giản, không yêu cầu cao về độ phức tạp chỉ cần một

đến hai người để hoàn thành và chỉ cần làm trên một máy duy nhất. Tuy nhiên việc

phát triển những phần mềm mang tính chất công nghiệp, độ phức tạp cao số lượng

người tham gia vào phát triển lớn, đòi hỏi phải thực hiện trên nhiều máy tính khác

nhau, nhưng nhiều người sẽ phải thao tác, làm việc trên một file duy nhất không những

thế còn phải quản lý được các thay đổi của mã nguồn, file tài liệu… vì vậy đòi hỏi cần

phải có một công cụ quản lý. Vì vậy mà khái niệm VCS, SVN ra đời.

1.1. VCS version control systems(VCS) law một hệ thống lưu giữ can phone bản của mã

nguồn của sản phẩm phần mềm, giúp các lập trình viên có thể dễ dàng lấy lại phiên

bản mong muốn. Hệ thống này có thể được sử dụng bởi một nhóm các lập trình viên,

mỗi thành viên trong nhóm thường không được phép thay đổi mã nguồn của các thành

viên khác, mà chỉ có thể xem. VCS cho phép người quản trị phân chia các tập tin cho

từng thành viên tương ứng. Nó cũng cho phép các thành viên chia sẻ một số tập tin

cho nhau trong khi phát triển. Các thành viên có thể phát hiện lỗi và sửa lỗi thuận tiện

trong VCS. Trưởng nhóm phải có nhiệm vụ cập nhật lại nội dung của các tập tin đó.

VCS giúp cho công việc này được thực hiện một cách tự động.

Khi các thành viên hiệu chỉnh mã của cùng một tập tin tại cùng một thời điểm, để

tránh sửa đổi mâu thuẫn, họ sẽ phải so sánh xem có gì khác biệt giữa các sửa đổi của

các thành viên hay không. VCS giúp cho việc này được thực hiện tự động.

Một VCS thường có :

Backup and Restore

Synchronization: cho phép chia sẻ và cập nhật phiên bản mới nhất

Short-term undo: quay lại phiên bản trước đó

Long-term undo: quay trở lại và kiểm tra lại các phiên bản cách đó rất lâu.

Track changes and Track Ownership: lưu trữ và theo dõi sự thay đổi

Branching and mergin: phân nhánh phục vụ các much đích khác nhau sau đó

trộn lại với nhau

CVS sử dụng kiến truc client server , trong đó phía server lưu trữ các phiên bản hiện

tại của dự án và lịch sử của nó. Trong khi đó, phía client (tạm hiểu là các nhà phát

triển) kết nối tới server để lấy về một phiên bản copy đầy đủ dự án, làm việc trên

phiên bản đó và sau đó lưu lại nhưng thay đổi của họ. Thông thường, client và server

kết nối thông qua mạng Lan hoặc Internet Client và server có thể cùng chạy trên một

máy nếu CVS 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

Page 5: Tim hieugooglecode tortoisesvn

2

phát triển trong nội bộ. Phần mềm server thường chạy trên Unix, trong khi CVS client có

thể chạy trên nhiều hệ điều hành khác nhau.

Nhiều nhà phát triển phần mềm có thể làm việc đồng thời trên cùng một dự án. Trong

đó, mỗi nhà phát triển thay đổi nội dung các tập tin bên trong phiên bản copy của dự án

của chính họ và sau đó gởi những thay đổi của họ về máy server. Để tránh việc người này

ghi đè lên những thay đổi của người khác, server chỉ chấp nhận những thay đổi đối với

phiên bản gần đây nhất của một file. Điều này cũng giúp cho các nhà phát triển dự án

luôn làm việc trên các bản copy mới nhất bằng cách kết hợp với những thay đổi của

người khác dựa trên những nguyên tắc cơ bản. Điều này được thực hiện một cách tự động

bởi CVS client.

1.2. SVN

1.2.1. SVN là gì

Subversion (viết tắc là SVN) là một hệ thống quản lí các version (version control

system (VCS)) được giới thiệu vào năm 2000 bởi công ty CollabNet. Đây là hệ thống hỗ

trợ làm việc theo nhóm rất hiệu quả. Khi một nhóm làm việc cùng trên 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 trách khỏi.

SVN dùng để quản lý và kiểm tra các phiên bản mã nguồn khác nhau trong quá trình

phát triển phần mềm. SVN là lệnh dùng để thực hiện các chức năng Subversion trong môi

trường thi hành lệnh trên các máy vi tính. Về mặt khái quát, SVN giống như một hệ

thống file server mà các client có thể download và upload file một cách bình thường.

Điểm đặc biệt của SVN là nó lưu lại tất cả những 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. Các chức năng này giúp cho việc làm

việc nhóm trở nên trơn tru và an toàn hơn rất nhiều.

SVN rất phổ biến trong giới mã nguồn mỡ và được dùng để quản lý mã nguồn cho

nhiều ứng dụng tự do như: Apache Software Foundation, KDE, GNOME, Free Pascal…

SourceForge.net và Tigris.org là nơi chứa miễn phí chuyên nghiệp dành cho các ứng

dụng tự do, đều hỗ trợ Subversion cho các ứng dụng được lưu trữ trong máy chủ. Ngoài

ra Google Code và BountySource chỉ sử dụng Subversion để quản lý các phiên bản mã

nguồn.

1.2.2. Các lệnh cơ bản trong SVN

a. Lệnh tạo thư mục mkdir

- Ý nghĩa: Lệnh này sử dụng để tạo thư mục trong repository. (giống lệnh MD trong

Doc command)

- Cấu trúc lệnh:

svn mkdir <đường dẫn thư mục mới tạo> –m <Mô tả về dự án> ––username

<username> ––password <password>

Page 6: Tim hieugooglecode tortoisesvn

3

Trong trường hợp ko gõ tham số –m, chương trình sẽ hiển thị màn hình để các bạn

nhập comment vào

- Ví dụ:

Tạo dự án mới:

svn mkdir svn://localhost/dm –m “Demo SVN” ––username admin ––password

nimda

+ Tạo thư mục con của dự án mới tạo:

Tạo thư mục chứa Source của dự án

svn mkdir svn://localhost/dm/Src –m “Source code store here” ––username admin –

–password nimda

Tạo thư mục chứa tài liệu

svn mkdir svn://localhost/dm/Docs –m “Documents of project store here” ––

username admin ––password nimda

Tạo các thư mục con của thư mục chứa tài liệu

svn mkdir svn://localhost/dm/Docs/TechDocs –m “Documents for Technical” ––

username admin ––password nimda

svn mkdir svn://localhost/dm/Docs/UserDocs –m “Documents for End-User” ––

username admin ––password nimda

b. Xóa thư mục delete (del, remove, rm)

- Ý nghĩa: Xóa thư mục (giống RD trong dos command)

- Cấu trúc lệnh:

svn delete <đường dẫn tới thư mục cần xóa> ––username <username> ––password

<password>

Có thể thay thế lệnh delete bằng del hoặc remove hoặc rm

- Ví dụ:

Xóa thư mục Docs

svn delete svn://localhost/dm/docs ––username admin ––password nimda

3. Lệnh List (ls)

- Ý nghĩa: Dùng để liệt kê danh sách các thư mục và file bên trong thư mục đang

được list (giống DIR trong Dos command)

- Cấu trúc lệnh:

svn list <đường dẫn đến thư mục cần xem danh sách thư mục và file> ––username

<username> ––password <password>

- Ví dụ:

Show tất cả các dự án đc lưu trữ trong ARDRespository

svn ls svn://localhost

4. Lệnh checkout (co)

Page 7: Tim hieugooglecode tortoisesvn

4

- Ý nghĩa: Lệnh này sử dụng để lấy phiên bản mã nguồn mới nhất từ thư mục dự án

trên repository về thư mục trên máy trạm.

- Cấu trúc lệnh:

svn checkout <đường dẫn thư mục trên máy chủ> <đường dẫn thư mục trên máy

trạm> ––username <username> ––password <password>

Có thể thay thế lệnh checkout ở trên bằng lệnh co.

- Ví dụ:

Trong ví dụ này, chúng ta sẽ lấy mã nguồn mới nhất từ thư mục Src của dự án DM đã

tạo ở trên về thư mục D:/dev/dm/src/ trên máy trạm.

svn checkout svn://localhost/dm/src d:/dev/dm/src ––username admin ––password

nimda

Nếu thành công, chương trình sẽ có thông báo:

Checked out revision n. //(n là số phiên bản hiện tại mới nhất)

Trong trường hợp thư mục d:/dev/as/src chưa có, SVN sẽ tự tạo.

Chương 2: Google Code

2.1. Tìm hiểu Google Code a. Google Code?

Google Code là một trang web của Google trong đó tập trung các nhà phát triển các

dự án phần mềm mã nguồn mở được hỗ trợ bởi Google. Trang có rất nhiều mã nguồn

phần mềm và danh sách các dịch vụ có hỗ trợ các API công cộng để phục vụ cho việc

phát triển các phần mềm hỗ trợ khác.

Chúng ta sử dụng Google Code như 1 free web host để lưu giữ thông tin,source code

cũng như những thư mục khác phục vụ cho project của nhóm.

Trang chủ Google Code tại VN : http://code.google.com/intl/vi-VN/

b. Các tính năng của Google Code

Tab Project Home

Page 8: Tim hieugooglecode tortoisesvn

5

Project Name: Tên của Dự Án

Project Summary: Tóm tắt Dự Án

Project Description: Các miêu tả của Dự Án

Tab people: Thông tin tài khoản của các thành viên

Thông tin phân quyền của từng thành viên

Tab Dowloads

Đây là nơi phục vụ cho việc release sản phẩm cuối cùng nhằm mục đích cho người

khác download về dùng. Nó cũng là nơi mà bạn có thể public source code,

documents,… tất cả những gì thuộc về project mà bạn muốn phát hành

Cách tính năng trong Tab Download.

Hình:

Project Name

Page 9: Tim hieugooglecode tortoisesvn

6

Cách tính năng trong Tab Download:

All downloads:Toàn bộ file trong tab Downloads

Featured downloads :Toàn bộ những file có gán label là Featured.

Current downloads : Những file download gần đây.

Deprecated downloads: Những file được gán label là Deprecated

Tab Wiki

Tab này cho phép tạo và quản lý các mẫu cấu hình

Tab issues

Trong thuật ngữ tin học thì issue được dùng để chỉ khái quát của những mẫu bug. Nó

có thể là bug, một đặc trưng được yêu cầu, sự thất lạc tài liệu,… Tab này của google

project hosting giúp đưa ra và quản lý các issue trong quá trình xây dựng và sử dụng

phần mềm.

Page 10: Tim hieugooglecode tortoisesvn

7

Tab Source

Tab này giúp chúng ta quản lý source code một cách dễ dàng

2.2. Tạo project trên google code. Bước 1: truy cập vào trang chủ google code :http://code.google.com.Đăng nhập

vào google code bằng tài khoản Gmail.

Page 11: Tim hieugooglecode tortoisesvn

8

Bước 2 : Chọn mục tạo Project hosting trên Google Code :

Bước 3 : Tạo mới 1 project :

Click để tạo Google

Code Project

Click vào mục

Project hosting

Page 12: Tim hieugooglecode tortoisesvn

9

Bước 4 : điền thông tin project :

Tạo 1 project

Page 13: Tim hieugooglecode tortoisesvn

10

Project được tạo ra

GPL (General Public

License) dùng theo cơ

chế open source của

google code,cho phép

người khác có thể view

source của project.

Chọn phần mềm để thao tác

với project là Subversion

Click chọn tạo 1 project

mới

Page 14: Tim hieugooglecode tortoisesvn

11

2.3. Sử dụng Project Hosting trên Google Code Hiện nay Google cung cấp cho ta dịch vụ khá hay có tên gọi là project hosting giúp

người dùng có thể chia sẽ các tài liệu của dự án một cách nhanh chóng và tiện lợi nhất.

Dịch vụ này có một số ưu điểm sau:

Việc khởi tạo không có gì khó khăn.

Hosting ở hai dạng Subversion hoặc Mercurial với dung lượng tối đa lên đến

2GB.

Tích hợp công cụ source code browsing và code review giúp cho chúng ta có

thể quản lý 1 cách trực quan và hiệu quả hơn.

Hỗ trợ issue tracker và project wiki.

Việc cập nhật các tài liệu của project nhanh chóng.

a. Thực hiện

Để tạo project hosting, trước tiên chúng ta phải có gmail account (hoàn toàn miễn phí). Đầu tiên ta vào trang http://code.google.com/hosting/, sau đó click vào đường link “Create a new

project”. Sau đó chúng ta chỉ việc điền vào một số thông tin ví dụ như:

Project name.

Project summary.

Project description.

Ở mục Version control system chọn “Subversion”, tùy chọn cho mục Source code lisence, điền thêm 1 số thông tin và các mục của Project labels… Cuối cùng ta ấn nút “Create project” bên dưới để hoàn tất việc tạo mới project hosting.

b. Quản lý Project Hosting

Sau khi tạo mới, chúng ta sẽ có được trang quản lý bao gồm các mục: Project

Home, Downloads, Wiki, Issue, Source, Administer… Đầu tiên ta vào Administer điều

chỉnh một số tham số theo ý muốn ví dụ như Links, Blogs, Custom project logo… Sau

đó ấn nút “Save changes” để cập nhật thông tin.

c. Cập nhật tài liệu trên Project Hosting

Việc cập nhật tài liệu lên project hosting được thực hiện thông qua SVN. Đối với

các máy Linux người ta thường sử dụng dưới dạng commad line, tuy nhiên ở Windows

cũng có hỗ trợ một số tool SNV Client với giao diện GUI trực quan giúp người sử

dụng thao tác dễ dàng hơn tool này sẽ được giới thiệu ở phần sau, tuy nhiên trong phần

này nhóm vẫn sẽ trình bày qua để có sự so sánh giữa hai cách dùng dòng lệnh và tool.

Page 15: Tim hieugooglecode tortoisesvn

12

Đối với dòng lệnh:

Khi vào tab “Source” ta sẽ bắt gặp câu thông báo sau:

Command-line access

If you plan to make changes, use this command to check out the code as yourself using HTTPS:

# Project members authenticate over HTTPS to allow committing

changes.

svn checkout https://p_name.googlecode.com/svn/trunk/ p_name --

username nguyenvana

When prompted, enter your generated googlecode.com password.

Use this command to anonymously check out the latest project source code: # Non-members may check out a read-only working copy anonymously

over HTTP.

svn checkout http://p_name.googlecode.com/svn/trunk/ p_name-read-

only

Trong đó “p_name” là tên project, “nguyenvana” là account mà ta đã tạo ở các bước

trên. Mục googlecode.com password được sử dụng khi ta muốn commit các tập tin sau

khi đã cập nhật lên project hosting. Đối với người không có đặt quyền, họ có thể xem các

tập tin thông qua browser tool, IDM hoặc có thể download toàn bộ project về máy tính cá

nhân thông qua SVN client.

Sử dụng SVN tool

Phần này hướng dẫn cách sử dụng SVN client trên Windows cho việc cập nhật (hoặc

tải về) đối với tập tin của một project. Có nhiều tool SVN client chạy trên Windows.

Chúng ta thử làm quen với tool TortoiseSVN. Trước tiên, download và cài đặt tool này

thông qua link sau:

http://tortoisesvn.net/downloads

Ví dụ sau minh họa cách cập nhật tập tin có tên Readme.txt lên project hosting. Trước

tiên ta checkout project (hiện tại đang rỗng) thông qua các bước sau:

- Tạo thư mục có tên km233 (ví dụ).

- Click chuột phải lên thư mục km233 và chọn SVN checkout (xem hình)

Page 16: Tim hieugooglecode tortoisesvn

13

- Đánh vào URL of reposity (lấy từ mục Source ở phần trên), kế đến là đường

dẫn thư mục km233 (xem hình).

- Sau khi nhấn nút OK, chương trình sẽ tự động cập nhật thông tin từ project

hosting về thư mục km233 (hiện tại là rỗng). Ta tiến hành them vào tập tin Readme.txt

và thực hiện update lên project hosting như sau:

Page 17: Tim hieugooglecode tortoisesvn

14

- Vào thư mục km233 tạo mới file Readme.txt với nội dung: “This is an project

hosting from googlecode.com”. Sauk hi hoàn tất, click chuột phải lênh tên file và chọn

mục add:

- Sau đó ta có thể cập nhật thông tin mới lênh project hosting bằng cách click chuột

phải vào thư mục km233 và chọn mục SVN commit:

- Trong quá trình commit, SVN yêu cầu đăng nhập với user name là địa chỉ gmail và

passworld được lấy từ mục generared googlecode.com passworld ở phần mục Source ở

trên.

Page 18: Tim hieugooglecode tortoisesvn

15

Sau khi hoàn tất, có thể kiểm tra kết quả thông qua browser tool của project hosting:

Chương 3: TortoiseSVN

3.1. Giới thiệu, download và cài đặt TortoiseSVN. TortoiseSVN là một phần mềm kiểm soát mã nguồn cho Microsoft Windows(SCM

– Source Control software for Microsoft Windows) dễ sử dụng. Vì TortoiseSVN và có

thể tốt nhất cho Apache Subversion. Nó được tích hợp vào Windows Explorer như một

phần mở rộng cho menu chuột phải. TortoiseSVN không tích hợp cho một IDE cụ thể

mà có thể sử dụng với bất kỳ công cụ phát triển nào bạn thích.

TortoiseSVN được cung cấp miễn phí tại trang http://tortoisesvn.net. Có thể

download tại: http://tortoisesvn.net/downloads.html

Page 19: Tim hieugooglecode tortoisesvn

16

- Sau khi download TortoiseSVN xong, tiến hành cài đặt bình thường như các phần

mềm khác.

Page 20: Tim hieugooglecode tortoisesvn

17

Khi cài đặt hoàn tất sẽ có một thông báo yêu cầu khởi động lại máy. Chọn yes để

khởi động lại máy.

3.2. Các tính năng chung

Một trong các tính năng dễ thấy nhất của TortoiseSVN là các lớp phủ biểu tượng xuất

hiện trên các tập tin trong bản sao làm việc của bạn. Tùy thuộc vào tình trạng

Subversion của tập tin mà biểu tượng lớp phủ sẽ là khác nhau.

Một bản sao làm việc mới kiểm xuất có một dấu kiểm màu xanh lá làm lớp phủ.

Điều này có nghĩa là tình trạng Subversion là bình thường .

Ngay sau khi bạn bắt đầu chỉnh sửa một tập tin, trạng thái đổi sang sửa đổi và lớp

phủ biểu tượng sau này thay đổi thành một dấu chấm than màu đỏ. Bằng cách này bạn

có thể dễ dàng nhìn thấy các tập tin đã được thay đổi kể từ lần cuối bạn cập nhật bản

sao làm việc của bạn và cần phải được cam kết.

Nếu trong quá trình cập nhật một xung đột xảy ra thì biểu tượng thay đổi thành một

dấu chấm than màu vàng.

Page 21: Tim hieugooglecode tortoisesvn

18

Nếu bạn đã thiết lập thuộc tính svn:needs-lock vào một tập tin, Subversion làm cho tập tin

này chỉ đọc cho đến khi bạn nhận được một khóa trên tập tin này. Các tập tin như vậy có

lớp phủ để cho biết rằng bạn phải cóđược khóa trước khi bạn có thể chỉnh sửa tập tin này.

Nếu bạn giữ một khóa trên một tập tin, và tình trạng Subversion là bình thường , lớp

phủ biểu tượng này nhắc nhở bạn rằng bạn nên phát hành các khóa nếu bạn không sử

dụng nóđể cho phép người khác thực hiện các thay đổi của họ lên tập tin.

Biểu tượng này cho thấy rằng một số tập tin hoặc thư mục bên trong thư mục hiện

hành đã được dự kiến sẽ được xóa từ kiểm soát phiên bản hoặc một tập tin dưới sự kiểm

soát phiên bản đã mất trong một thư mục.

Dấu cộng cho bạn biết rằng một tập tin hoặc thư mục đã được dự kiến sẽ được thêm

vào kiểm soát phiên bản.

Dấu hiệu này nói với bạn rằng một tập tin hoặc thư mục bị bỏ qua cho mục kiểm soát

phiên bản. Lớp phủ này là tùy chọn.

Biểu tượng này cho thấy các tập tin và thư mục không phải nằm dưới sự kiểm soát

phiên bản, nhưng đã không được bỏ qua. Lớp phủ này là tùy chọn.

Trong thực tế, bạn có thể thấy rằng không phải tất cả các biểu tượng này được sử dụng

trên hệ thống của bạn. Điều này là bởi vì số lượng của lớp phủ cho phép Windows là rất

hạn chế và nếu bạn cũng sử dụng một phiên bản cũ của TortoiseCVS

Page 22: Tim hieugooglecode tortoisesvn

19

Trình đơn ngữ cảnh

Tất cả các lệnh TortoiseSVN được gọi từ trình đơn ngữ cảnh của cửa sổ thám

hiểm. Phần lớn trực tiếp nhìn thấy được, khi bạn bấm chuột phải vào một tập tin hoặc

thư mục. Các lệnh mà có sẵn phụ thuộc vào việc các tập tin hoặc thư mục hoặc thư

mục cha của nó là dưới sự kiểm soát phiên bản hoặc không. Bạn cũng có thể thấy trình

đơn TortoiseSVN như là một phần của trình đơn khám phá tập tin.

Các Thiết Lập Tổng Quát

Page 23: Tim hieugooglecode tortoisesvn

20

Hộp thoại này cho phép bạn chỉ định ngôn ngữ ưa thích của bạn, và các thiết lập cụ thể

cho Subversion.

Ngôn ngữ

Chọn ngôn ngữ giao diện người dùng của bạn.

Kiểm tra bản cập nhật

TortoiseSVN sẽ liên lạc với trang web tải về của nó theo định kỳ để xem nếu có một

phiên bản mới hơn của chương trình. Nếu có, nó sẽ hiển thị một liên kết thông báo trong

hộp thoại cam kết. Sử dụng Kiểm tra ngay nếu bạn muốn một câu trả lời ngay lập tức.

Phiên bản mới sẽ không được tải về; bạn chỉ đơn giản nhận được một hộp thoại thông tin

cho biết rằng phiên bản mới có sẵn.

Âm thanh hệ thống

TortoiseSVN có ba tùy chỉnh âm thanh đã được cài đặt theo mặc định.

Lỗi

Lưu

Cảnh báo

Sử dụng Hộp thoại Aero

Trên Windows Vista và các hệ thống mới hơn việc này điều khiển liệu các hộp thoại

có sử dụng phong cách Aero.

Tạo Thư Viện

Trên Windows 7, bạn có thể tạo ra một thư viện, trong đó nhóm các bản sao làm việc

nằm rải rác ở những nơi khác nhau trên hệ thống của bạn.

Page 24: Tim hieugooglecode tortoisesvn

21

Các Thiết Lập Trình đơn Ngữ Cảnh

Trang này cho phép bạn xác định các mục menu trong trình đơn ngữ cảnh của

TortoiseSVN sẽ hiển thị trong trình đơn ngữ cảnh chính, và sẽ xuất hiện trong trình

đơn phụ TortoiseSVN. Theo mặc định, hầu hết các mục không được kiểm soát và xuất

hiện trong trình đơn con.

Page 25: Tim hieugooglecode tortoisesvn

22

.Các Thiết Lập Hộp Thoại TortoiseSVN 1

Hộp thoại này cho phép bạn cấu hình một số hộp thoại TortoiseSVN theo cách bạn thích.

Số mặc định của các thông điệp tường trình

Giới hạn số thông điệp tường trình TortoiseSVN nạp khi bạn lần đầu tiên chọn

TortoiseSVN

Phông chữ cho thông điệp tường trình

Lựa chọn các mặt chữ và kích thước được sử dụng để hiển thị các thông điệp tường

trình trong phần bảng giữa của hộp thoại Tường Trình Sửa đổi, và khi soạn thông điệp

tường trình vào hộp thoại Cam Kết.

Định dạng ngày / thời gian ngắn trong các thông điệp tường trình

Nếu các thông điệp dài tiêu chuẩn sử dụng quá nhiều không gian trên màn hình của

bạn hãy sử dụng định dạng ngắn.

Có thể nhấn kếp chuột trong danh sách tường trình để so sánh với bản sửa đổi trước

Page 26: Tim hieugooglecode tortoisesvn

23

Nếu bạn thường xuyên thấy mình so sánh các bản sửa đổi trong cửa sổ trên cùng của hộp

thoại tường trình, bạn có thể sử dụng tùy chọn này để cho phép hành động để khi nhấp

đúp chuột.

Tự động-đóng

TortoiseSVN có thể tự động đóng tất cả các hộp thoại tiến độ khi hành động được hoàn

thành mà không có lỗi.

Luôn đóng hộp thoại cho các tác vụ cục bộ

Các tác vụ cục bộ như thêm các tập tin hoặc hoàn nguyên lại thay đổi không cần liên hệ

với các kho lưu trữ và hoàn thành một cách nhanh chóng. Chọn tùy chọn này nếu bạn

muốn hộp thoại tiến triển tự động đóng lại sau các hoạt động này, trừ khi có lỗi.

Sử dụng thùng rác khi quay hoàn nguyên

Khi bạn hoàn nguyên các thay đổi cục bộ, những thay đổi của bạn sẽ bị loại bỏ.

TortoiseSVN cung cấp cho bạn một mạng lưới an toàn hơn bằng cách gửi các tập tin

được sửa lổi vào thùng rác trước khi đưa trở lại bản sao nguyên sơ. Nếu bạn muốn bỏ qua

thùng rác, bỏ chọn tùy chọn này.

Sử dụng URL của WC như mặc định URL

Trong hộp thoại hợp nhất, hành vi mặc định là cho URL Từ: được ghi nhớ giữa các sáp

nhập. Tuy nhiên, một số người muốn thực hiện kết hợp từ nhiều điểm khác nhau trong hệ

thống phân cấp của chúng, và thấy dễ dàng hơn để bắt đầu với URL của bản sao làm việc

hiện tại.

Đường dẫn kiểm xuất mặc định

Bạn có thể chỉ định đường dẫn mặc định cho các kiểm xuất. Nếu bạn giữ tất cả các kiểm

xuất của bạn ở một nơi, nó rất hữu ích để có ổ đĩa và thư mục được điền sẵn, do đó bạn

chỉ cần thêm tên thư mục mới vào phần cuối.

Page 27: Tim hieugooglecode tortoisesvn

24

Thiết Lập Màu TortoiseSVN

Hộp thoại này cho phép bạn cấu hình các màu sắc văn bản được sử dụng trong hộp thoại

TortoiseSVN theo cách của bạn.

Sự xung đột có thể có hoặc có thực / tắc nghẽn

Các tập tin được thêm

Thiếu / bị xóa / bị thay thế

Được hợp nhất

Được sửa đổi / sao chép

Nút đã bị xóa

Nút được thêm vào

Nút được đổi tên

Nút được thay thế

Bộ lọc phù hợp

Page 28: Tim hieugooglecode tortoisesvn

25

Các Màu Sắc Của đồ Thị Sửa đổi

Trang này cho phép bạn cấu hình các màu sắc được sử dụng. Lưu ý rằng các màu

sắc quy định ở đây là màu trơn. Hầu hết các nút được tô màu bằng cách sử dụng một

sự pha trộn của màu sắc kiểu nút, màu nền và tùy chọn màu sắc phân loại.

Nút đã Bị Xóa

Nút được Thêm Vào

Nút được đổi Tên

Nút được Sửa đổi

Nút Không Thay đổi

Nút CHỉNH

Nút WC

Đường Biên Nút WC

Page 29: Tim hieugooglecode tortoisesvn

26

Các Thiết Lập Cho Lớp Phủ Biểu Tượng

Trang này cho phép bạn chọn các mục mà TortoiseSVN sẽ hiển thị các lớp phủ biểu

tượng.

Bởi vì phải mất nhiều thời gian để lấy trạng thái của một bản sao làm việc,

TortoiseSVN sử dụng một bộ nhớ cache để lưu trữ các trạng thôi để explorer không bị

ngốn qua nhiều khi hiển thị các lớp phủ. Bạn có thể chọn loại bộ nhớ cache mà

TortoiseSVN nên sử dụng tùy theo hệ thống của bạn và kích thước bản sao làm việc ở

đây:

Mặc định: Lưu trữ tất cả các thông tin trạng thái trong một tiến trình riêng biệt ( TSVNCache.exe

). Quá trình này theo dõi tất cả các ổ đĩa cho thay đổi và lấy trạng thái một lần nữa nếu các tập

tin bên trong một bản sao làm việc được sửa đổi

Page 30: Tim hieugooglecode tortoisesvn

27

Shell: Bộ nhớ đệm được thực hiện trực tiếp bên trong các dll mở rộng của shell, nhưng chỉ dành

cho các thư mục sang nhìn thấy.

None: Với thiết lập này, các TortoiseSVN không lấy trạng thái chút nào trong Explorer

Lựa Chọn Tập Hợp Biểu Tượng

Bạn có thể thay đổi tập hợp biểu tượng lớp phủ cho cái bạn thích nhất. Lưu ý rằng nếu

bạn thay đổi tập hợp lớp phủ, bạn có thể phải khởi động lại máy tính của bạn để

những thay đổi có hiệu lực.

Page 31: Tim hieugooglecode tortoisesvn

28

Các Thiết Lập Mạng

Ở đây bạn có thể cấu hình máy chủ proxy của bạn, nếu bạn cần cài một ứng dụng để đi

thông qua tường lửa của công ty bạn.

Nếu bạn cần phải thiết lập các thiết lập proxy cho mỗi-kho lưu trữ, bạn sẽ cần phải sử

dụng tập tin các máy chủ Subversion để cấu hình. Sử dụng Biên Tập để đến nó trực tiếp.

Page 32: Tim hieugooglecode tortoisesvn

29

Các Thiết Lập Cho Chương Trình Bên Ngoài

Ở đây bạn có thể định nghĩa chương trình khác Thiết lập mặc định là sử dụng

TortoiseMerge được cài đặt cùng với TortoiseSVN.

Page 33: Tim hieugooglecode tortoisesvn

30

Thiết Lập Cho Dữ Liệu đã Lưu

Để tiện cho bạn, TortoiseSVN lưu rất nhiều các thiết lập mà bạn sử dụng, và nhớ nơi

bạn đã tới trong thời gian gần đây. Nếu bạn muốn dọn dẹp bộ nhớ cache dữ liệu, bạn có

thể làm nó ở đây.

Lịch sử của URL

Thông điệp tường trình (Hộp thoại nhập liệu)

Các thông điệp tường trình (Hiển thị hộp thoại tường trình)

Kích thước và vị trí hộp thoại

Dữ liệu xác thực

Tường trình hành động

Page 34: Tim hieugooglecode tortoisesvn

31

Lưu đệm Tường Trình

Hộp thoại này cho phép bạn cấu hình các tính năng bộ nhớ đệm tường trình của

TortoiseSVN, giữ lại một bản sao địa phương của các thông điệp tường trình và thay

đổi đường dẫn để tránh tốn thời gian tải từ máy chủ.

Kích hoạt tính năng bộ nhớ đệm tường trình

Cho phép các URL không rõ ràng

Cho phép các UUID mơ hồ

Nếu các kho lưu trữ không thể liên lạc được

Hết thời gian chờ trước khi cập nhật bản sửa đổi CHíNH

Số ngày không hoạt động cho đến khi các bộ đệm nhỏ có được loại bỏ

Kích thước tối đa của các bộ lưu trữ đệm không hoạt động bị loại bỏ

Số lượng tối đa cac thất bại của công cụ trước khi loại bỏ bộ nhớ đệm

Page 35: Tim hieugooglecode tortoisesvn

32

Kịch Bản Hook Scripts Máy Khách

Hộp thoại này cho phép bạn thiết lập các kịch bản mà sẽ được thực hiện tự động khi một

số hành động Subversion nhất định được thực

Page 36: Tim hieugooglecode tortoisesvn

33

Hộp Thoại Thiết Lập, Trang Tích Hợp Bộ Theo Dõi Vấn đề

Hộp Thoại Thiết Lập, Trang TortoiseBlame

Page 37: Tim hieugooglecode tortoisesvn

34

Các thiết lập được sử dụng bởi TortoiseBlame được điều khiển từ trình đơn ngữ cảnh chính,

chứ không phải trực tiếp với bản thân TortoiseBlame.

Màu sắc

Phông Chữ

Các tab

Thiết Lập Nâng Cao

Một vài thiết lập không thường xuyên được sử dụng chỉ có sẵn trong trang nâng cao

của hộp thoại thiết lập. Các thiết lập này thay đổi registry trực tiếp và bạn cần phải biết

những gì các thiết lập này được sử dụng cho và những gì nó làm. Không sửa đổi các

thiết lập này, trừ khi bạn chắc chắn bạn cần phải thay đổi chúng.

3.3. Google Code và tortoiseSVN Để phát huy tác dùng thì mộ project của bạn cần phải cho phép nhiều người tham gia

phát triển , trong phần này mặc định là chúng ta đã có một project bây giờ công việc của

chúng ta là cần tạo tài khoản cho các thành viên đội dự án

Chú ý: Chỉ người có quyền sở hữu (owner) dự án mới có thể tạo các t ài khoản cho

thành viên trong đội dự án.

Trong cửa sổ dự án, chọn tab Administer ->Project Members. Ở đây có 3

nhóm người dùng, chúng ta tạm thời chỉ cần quan tâm tới 2 nhóm người dùng

Project owners: người sở hữu dự án (mặc định là người tạo ra dự án)

Project Commiters: thành viên của dự án (có quyền check out

(download dự án), commit (cập nhật thay đổi lên dự án), update (cập

nhật các thay đổi do các thành viên khác của dự án đã commit) và một

số quyền khác.

Page 38: Tim hieugooglecode tortoisesvn

35

Để thêm một người dùng mới, chỉ cần thêm địa chỉ email (gmail) của người dùng

đó vào trong

nhóm người dùng tương ứng. Ví dụ như, chúng ta thêm người dùng có

địa chỉ [email protected] vào nhóm Project Commiters. Nhấn nút Save

changes để lưu thay đổi.

Chú ý:

Mỗi thành viên (kể cả người tạo dự án) đều có một mật khẩu để có thể l àm việc với

dự án. Mật khẩu này không trùng với mật khẩu mà các thành viên sử dụng để đăng

nhập các dịch vụ của Google như gmail hay Google code. Đ ể xem mật khẩu này, bạn

cần chọn vào mục Profile, sau đó vào phần Settings

Chọn Settings, bạn có thể nhìn thấy mât khẩu của mình. Bạn cũng có thể nhấn vào

nút Regenerate để hệ thống sinh ra một mật khẩu mới.

Page 39: Tim hieugooglecode tortoisesvn

36

Thiết lập cho phép google code tự động gửi các thông tin cập nhật về

email của các thành viên trong dự án

Gửi các thông tin về các lỗi phát sinh trong quá tr ình phát triển dự án

1) Chọn tab Administer -> Issue Tracking

2) Tìm đến mục thiết lập địa chỉ email để gửi thông báo, tốt nhất n ên tạo

ra một mail group cho tất cả các thành viên trong nhóm

Gửi các thông tin về các thay đổi trong dự án (th êm, bớt, sửa, xóa các file trong dự án)

1) Chọn tab Administer -> Source

2) Tìm đến mục thiết lập địa chỉ email để gửi thông báo, tốt nhất

nên tạo ra một mail group cho tất cả các thành viên trong nhóm

Sử dụng phần mềm TortoiseSVN

Import (Upload) file dự án lên Repository của Google Code

Kịch bản sử dụng: Khi mới khởi tạo dự án và nhóm dự án có một số tài nguyên ban

đầu muốn đưa lên lưu trữ và chia sẻ trong toàn nhóm.

Click chuột phải vào thư mục chứa mã nguồn ban đầu của dự án và chọn TortoiseSVN

-> Import.

Page 40: Tim hieugooglecode tortoisesvn

37

Cửa sổ thao tác sẽ hiện ra, bạn cần điền thông tin

- URL of repository: đường dẫn tới Repository của dự án, có câu trúc như sau

https://Tên_Dự_Án.googlecode.com/svn/trunk/

- Import message: thông tin ghi chú lý do thực hiện thao tác import, rất cần

thiết để các thành viên trong dự án có thể dò vết thay đổi của dự án.

Page 41: Tim hieugooglecode tortoisesvn

38

Sau khi bạn bấm nút OK, một giao diện sẽ hiện ra y êu cầu bạn nhập thông tin tài

khoản. Bạn nhập tên truy cập và mật khẩu (Chú ý: sử dụng mật khẩu của Google Code)

- Các file của dự án sẽ được upload lên Repository của dự án

- Bạn có thể kiểm tra các file mã nguồn của dự án trên Repository của Google

code bằng cách chọn tab Source -> Browse - > trunk

Page 42: Tim hieugooglecode tortoisesvn

39

Checkout (Download) dự án

Kịch bản sử dụng: khi thành viên dự án hoặc người dùng lần đầu tiên muốn lấy

các tài nguyên dự án đưa về máy cá nhân để sử dụng, phát triển.

Bước 1: Tạo một thư mục định chứa dự án

Bước 2: Click chuột phải vào thư mục vừa tạo (chú ý thư mục nên rỗng), chọn chức

năng SVN Checkout.

Page 43: Tim hieugooglecode tortoisesvn

40

Một cửa sổ sẽ hiện ra yêu cầu người dùng nhập các thông tin cần thiết như đường dẫn

tới Repository, thư mục đích chứa file sẽ download về. Cần chú ý mục Revision, mục

này cho phép người dùng chọn phiên bản cần lấy về (Vì một dự án qua quá trình phát

triển của nó bao gồm nhiều phiên bản, người dùng cần lựa chọn phiên bản phù hợp với

yêu cầu của mình).

Thông thường, tùy chọn mặc định cho mục này là HEAD tức là lấy về phiên bản mới

nhất (Hình 8). Sau đó, cửa sổ xác thực hiện ra yêu cầu bạn nhập thông tin tài khoản. Khi

quá trình check out thành công, các file được download về thư mục chỉ định

Kết Quả:

Page 44: Tim hieugooglecode tortoisesvn

41

Để chọn các phiên bản khác (không phải phiên bản mới nhất), trong cửa sổ

checkout bạn nhấn vào nút Revision rồi chọn Show Log để nhìn danh sách tất cả các

phiên bản, từ đó chọn số phiên bản cho phù hợp.

Sau khi Checkout (hoặc update), mã nguồn sẽ ở dạng chưa chỉnh sửa và được ký

hiệu như dưới đây

Nếu có bất cứ sự thay đổi nào trong mã nguồn, nó sẽ được ký hiệu

Commit (Cập nhật thay đổi lên Server)

Kịch bản sử dụng: sau khi bạn chỉnh sửa một số đoạn mã trong dự án và bạn đã

kiểm thử các đoạn mã đó cho kết quả tốt, bạn muốn cập nhật lên Server để các thành

viên trong dự án có thể cùng sử dụng.

Chú ý: bạn có thể commit cả thư mục dự án hay commit từng file riêng lẻ

Bước 1: Click phải chuột vào file hay thư mục muốn commit, ở đây tôi chọn th ư

mục làm ví dụ

Page 45: Tim hieugooglecode tortoisesvn

42

Bước 2: Cửa sổ Commit sẽ hiện ra

Trong cửa sổ này, bạn cần quan tâm tới những thông tin

Page 46: Tim hieugooglecode tortoisesvn

43

Message: chú thích sự thay đổi. Thông tin này rất quan trọng cho quá trình dò vết,

kiểm tra sự thay đổi của dự án cũng như cho các thao tác Checkout, Update nên b ạn

cần mô tả thật ngắn gọn nhưng xúc tích lý do commit mã nguồn lên Server.

Changes made: liệt kê tất cả các file có sự thay đổi so với lần Update hay Checkout

gần nhất, bạn tích vào những file có sự thay đổi mà bạn muốn cập nhật lên server.

Tiếp đến, nhấn nút OK để commit lên server. Cửa sổ xác thực hiện ra, bạn tiến h

ành nhập thông tin tài khoản của mình. Sau quá trình commit thành công, một cửa sổ

sẽ hiện ra cho biết thông tin quá trình commit. Bạn đặc biệt chú ý tớ thông tin “At

revision: 3”. Sau mỗi lần thành viên của dự án commit những thay đổi, số phi ên bản

(revision) này sẽ tự động tăng thêm 1.

update (cập nhật thay đổi từ trên server)

Kịch bản: khi thành viên của dự án biết rằng đã có những thay đổi trên server và

anh ta muốn cập nhật, lấy về những thay đổi mới nhất này.

Bước 1: Chọn thư mục chứa dự án trên máy cục bộ và nhấn chuột phải, chọn SVN

update

Page 47: Tim hieugooglecode tortoisesvn

44

Cửa sổ xác thực sẽ hiện ra, bạn tiến h ành nhập thông tin tài khoản. Sau khi quá trình

update hoàn thành, một cửa sổ thông báo sẽ hiện ra