Pages

Thứ Bảy, 28 tháng 11, 2015

HƯỚNG DẪN SỬ DỤNG TFS VỚI VISUAL STUDIO 2013

Chào mọi người.
Hôm nay là bài đầu tiên mình xin giới thiệu về TFS(Team Foundation Server) với Visual Studio 2013 sử dụng Codeplex để tạo host code.
TFS Là một công cụ Quản lý vòng đời ứng dụng (Application Life-Circle Management – ALM) do Microsoft phát triển giúp ta kiểm soát nhóm, check in, check out file, quản lý các version, quản lý hoạt động nhóm, nhận biết các thay đổi trong source code.
Mục đích:
  • Quản lý kho ứng dụng, xây dựng quy trình, cơ sở hạ tầng thử nghiệm cũng như triển khai các quy trình phát triển một cách có hiệu quả nhằm làm tăng giá trị sản phẩm phần mềm.
  • Hỗ trợ nhóm phát triển có thể kết nối, hợp tác làm việc hiệu quả và tận dụng hợp lý nguồn tài nguyên hạn hẹp.

CodePlex là gì?

CodePlex là một website của Microsoft dành cho việc host các project nguồn mở. Tại đây bạn có thể tạo project của mình và chia sẻ nó với mọi người. Đồng thời bạn có thể sử dụng các project nguồn mở do người khác chia sẻ, có thể tham gia vào hợp tác trong project của người khác hoặc phản hồi ý kiến về project của họ.
Tất cả mã nguồn của các project trên CodePlex đều public, đây là cộng đồng nguồn mở rất quan trọng trên nền tảng công nghệ Microsoft. Vào trang web này rồi sẽ hiểu rõ hơn Open Source chính xác là gì, nó ko phải là gắn với 1 số công nghệ nào, mà nó đơn giản là cách mà người ta “đối xử” với code.
Để tìm kiếm các công cụ cần thiết để xây dựng project trên nền tảng Microsoft của mình thì đây là một nguồn tìm kiếm rất hiệu quả cho bạn. Kể cả một số project của Microsoft cũng được host ở đây, như các bộ WPF Toolkit, Silverlight Toolkit,…

Bắt đầu với Team Foundation Server (TFS) trên CodePlex

Bên cạnh sử dụng TFS, CodePlex còn hỗ trợ ta sử dụng Subversion, Mercurial. Thuận tiện nhất ta bắt đầu với Visual Studio và TFS.
Các phần đăng kí tài khoản và đăng nhập ( Có thể sử dụng tài khoản Codeplex hoặc là Microsoft account) được thực hiện đơn giản, mình sẽ ko trình bày để khỏi bị lê thê.

Tạo Project mới

Sau khi đăng nhập, tại màn hình chính có các chức năng cơ bản, trong đó cũng có danh sách những project mà bạn sở hữu và tham gia.
Chọn Create Project:

Điền các thông tin về project. Để làm theo hướng dẫn này cần chọn Team Explorer ở mục Source Control. Team Explorer là phần được tích hợp vào Visual Studio để kết nối tới máy chủ TFS.
URL là đường dẫn ngắn để người khác dễ dàng truy cập tới trang thông tin project của mình.
Summary cần được điền đầy đủ để tiện cho người khác search ra sản phẩm của bạn. Thông tin cần tóm lược sản phẩm của mình dùng để làm gì, hỗ trợ trong hệ thống như thế nào. Public project thì có người xem cũng là một niềm vui nhỏ nhỏ, ko có người xem thì thật vô nghĩa.
Chọn Create sau khi đã điền đủ thông tin.
Khi project được tạo, ở trang chính bạn được cảnh báo về thời hạn để publish project. Thời gian CodePlex dành cho ta là 30 ngày để xây dựng trước khi publish nếu không Project sẽ bị Remove, tất nhiên sau khi publish project ta vẫn có thể tiếp tục phát triển.
3
Như vậy ta đã hoàn thành tạo project, tiếp theo là việc sử dụng project để code theo nhóm.

Bắt đầu việc code cộng tác

Vì bạn là người tạo nên là người sở hữu project, bạn cần phải thêm các thành viên khác trong nhóm vào cùng tham gia project này.
Vào trang web của Codeplex http://codeplex.com/ truy cập vào project hay là truy cập vào URL của project mà bước trước bạn điền vào lúc tạo project để đi đến mục quản lý project
2
Từ giờ các thành viên trong nhóm sẽ sử dụng TFS để code cộng tác, và cần các thông tin để kết nối với server tới project này. Các thông tin đó có thể tìm thấy bằng cách truy cập vào ở phầnSource Code.
4

Kết nối với server lần đầu

Để thực hiện kết nối trong Visual Studio 2013 nhấn vào biểu tượng Connect to Team Project trong tab Team Explorer hoặc có thể chọn Team –> Connect to Team Foundation Server… (để hiện tab Team Explorer vào menu View –> Team Explorer)
5
Sau khi nhấn OK, Team Explorer thực hiện kết nối và hiện danh sách các project của bạn. Chọn project đã tạo với thông tin từ phần Source Code tại http://codeplex.com/ mà bạn đã lấy được ở phần Connect bên trên và nhấn Connect để kết thục việc kết nối.
7

Tạo mới một project trong Visual Studio và kết nối tới project đã tạo trên Codeplex.

Sử dụng Visual Studio 2013 tạo mới một project. Sau khi tạo xong nhấp phải chuột vào Solutioncủa project chọn Add Solution to Source Control…
8
Để kết thúc việc đưa dữ liệu lên Codeplex và các thành viên khác cũng cập nhật được dữ liệu lần đầu ta cần Check In… : Nhấp phải chuột vào Solution của project chọn Check In…
9
Chú ý: Với mỗi một Check In… bạn nên để lại Comment để cho thành viên khác biết sự thay đổi đó mô tả điều gì
Như vậy ta đã kết thúc việc tạo mới một project và đưa dữ liệu của project lên Codeplex.
10

TFS với các thành viên trong nhóm

Ở trên là phần hướng dẫn sử dụng TFS cho người chủ của dự án. Bây giờ mình xin hướng dẫn việc thực hiện của các thành viên khác trong nhóm khi sử dụng TFS
Việc đầu tiên bạn cũng thực hiện kết nối sử dụng Visual Studio như ở trên. Thông tin về Project lúc này sẽ được người chủ dự án gửi cho bạn hoặc bạn có thể lên http://codeplex.com/ vào project mà người chủ dự án thêm bạn vào và xem thông tin project.
Sau khi hoàn thành việc kết nối sẽ hiển thị thông tin hình bên dưới chọn Not mapped để lưu project cho lần đầu những lần sau ta chỉ cần Get Latest Version để lấy toàn bộ dữ liệu được sửa đổi cuối cùng.
16
Như vậy ta đã hoàn thành xong việc kết nối và lưa dữ liệu của một thành viên trong nhóm.

Nguyên tắc thực hiện code cộng tác

Sau đây mình xin hướng dẫn các bạn việc xin thay đổi (Check Out) và lưu thay đổi (Check In) lên Codeplex cho việc thay đổi chung của project.
Để thực hiện thay đổi với file nào trong project, ta cần phải Check Out để xác định ta chuẩn bị thay đổi nó và thông báo với Server.
13
Sau khi đã thay đổi xong, ta Check In để cập nhật thay đổi lên server.
15
Chú ý: Check Out có 2 sự lựa chọn:
1. Unchanged – Keep any existing lock: Cho chép mọi người trong nhóm đều có thể Check Outmột công việc và khi một thành viên kết thúc trước họ có thể Check In để lưu dữ liệu lên hệ thống. Nếu có xung đột xảy ra khi một thành viên khác Check In công việc sau thì Visual Studio sẽ thông báo và cho phép thành viên Check In sau xử lý lỗi đó (phần này mình sẽ nói ở phía dưới về xử lý xung đột).
2. Check In – Allow other users…: Cho chép mọi người trong nhóm đều có thể Check Out một công việc nhưng chỉ có thành viên thực hiện việc lựa chọn Check In này mới được phép Check Inđể lưu dữ liệu lên hệ thống trước, các thành viên khác phải chờ thành viên này kết thúc việcCheck In mới có thể Check In.

Xử lý xung đột khi một hoặc nhiều người cùng Check In

Việc cùng xin sửa đổi một file và thay đổi file đó sẽ gây xung đột về thay đổi khi 2 người thực hiện sự thay đổi file khác nhau.
VD: Cùng một file ban đầu một thanh viên thêm vào một Button một thành viên khác đang ở đâu đó và sửa đổi file thêm vào một TextBlock. Thành viên thêm vào một Button Check In trước thành viên thêm vào một TextBlock Check In sau. Visual Studio sẽ tự động thông báo cho người Check In sau xung đột và đưa ra thông tin xung đột để giải quyết.
18
Để giải quyết lỗi nhấp chọn Resolve Conficts
17
Để xem các xung đột nhấp chọn Merge Changes In Merge Tool Visual Studio sẽ mở một Tool giúp xử lý các xung đột khi Check In.
19
Chỉnh sửa xung đột bằng cách Check vào các ô thể hiện các dòng dữ liệu khác nhau.
20
Kết thúc việc xử lý xung đột chọn Accept Merge và Check In lại để hoàn thành công việc.

Kết Luận

Bài viết chỉ mang tích chất tham khảo với các yếu tố cơ bản nhất khi sử dụng TFS với Visual Studio 2013.
Nếu có vấn đề gì các bạn có thể để lại Comment. Xin cám ơn.