Showing posts with label Team Foundation Server. Show all posts

[TFS]Xóa project, work Item

thuvienwinform - Thực sự thì theo phương pháp WeareHouse thì không xóa được project và Work Item trong Tfs nhưng thực tế thì ta có thể thực hiện công việc này như sau:

1. Xóa project
- Có thể Admin sẽ xóa các User khỏi project đó đi -> trên máy người khác sẽ không thấy nữa (thực tế là nó bị ẩn). Nên dùng cách này vì còn có thể khôi phục được
- Hoặc xóa trong Tfs Admin Console (không khôi phục được)

- Hoặc dùng comand sau (phải cài Visual Studio) (phải gõ vào notepad xong copy, paste vào cmd):

cd C:\Program Files (x86)\Microsoft Visual Studio 11.0\Common7\IDE
TfsDeleteProject /force /collection:http://Ohia-PC:8080/tfs/DefaultCollection/ "Xóa anh đi 2"

- Với
+ C:\Program Files (x86)\Microsoft Visual Studio 11.0\Common7\IDE:  là được dẫn đến thư mục IDE của Visual Studio
http://Ohia-PC:8080/tfs/DefaultCollection/: là đường dẫn đến Collection
+ Xóa anh đi 2 là tên project cần xóa.

2. Xóa WorkItem:
- Command:
witadmin destroywi /collection:http://Ohia-PC:8080/tfs/DefaultCollection/ /id:id1, id2, id3


- Trong đó:
http://Ohia-PC:8080/tfs/DefaultCollection/: là đường dẫn đến collection
+ id1, id2, id3: là id các workitem cần xóa

- Hoặc có thể dùng ứng dụng của TEK xóa trực tiếp ngay trong Visual Studio. Bạn nào cần liên hệ mình gửi cho :)

[TFS] Quy định về quản lí code

thuvienwinform - Có thể sau một thời gian sử dụng chúng ta sẽ gặp những lỗi gây ức chế từ việc quản lí code của TFS@! Cụ thể là hiện tượng conflict, mất file, ...Để hạn chế tình trạng này mình đề nghị như sau:

- Về lỗi thiếu file. Ta sẽ thử cho một bạn up from lên rồi một bạn get về xem có thực sự là trên server có mà lại không get được không? Nếu thực sự như vậy thì TFS quá tệ@!

- Với form của mình không được phép conflict (kể cả check-in và get last version) vì chỉ mình mình sửa form đó thôi

- Để hạn chế conflict:
+ Chỉ check-in form của mình.
+ Khi conflict ở form không phải của mình thì cứ take server version thôi.
+ Khi conflict ở form của mình thì phải xem lại ai đã check-in form đó lên vào thực hiện ghép code lại cẩn thận (Merge) rồi hẵng check-in
+ Với các file dùng chung (DB, .sln, .csproj,...) thì dành cho bạn nào làm frmMain, sau khi chỉnh lại cho các form gắn kết đc với nhau thì sẽ check-in các file này (check-in cả project - không check-in solution)  (lúc này thường là lỗi DB và thiếu Reference, còn lỗi trong form thì phải đề nghị sửa lại). Và đó sẽ là bản final cho lần sửa đó.

- Với một số form dùng chung nhau, ví dụ như dùng form hiển thị file word thì thường gặp lỗi về DB và đầu vào cho form. Để hạn chế thì phải thống nhất code đầu vào và DB trên 2 máy mới thực hiện được.

- Conflict là gì?
Conflict xẩy ra khi 2 hay nhiều người cùng sửa 1 file. Ví dụ thế này:
Người 1: lấy phiên bản 1 về -> sửa -> tải lên (Check-in) -> thành bản 2
Người 2: lấy phiên bản 1 về -> sửa -> tải lên (Check-in) -> conflict.

Khi xẩy ra conflict có 3 lựa chọn sau:
+ Merge: ghép code file của người 2 (file local) với file trên server (phiên bản 2 của người 1 up lên). Khi ghép thì ta sẽ chọn những phần nào khác nhau để lấy về. Chọn những phần khác nhau giữa 2 phiên bản sẽ có phiên bản đầy đủ của file này. Sau khi ghép xong thì có thể check-in bình thường.
+ Take Server Version: tức là sẽ lấy phiên bản trên server (phiên bản 2) về -> mất hết những gì đã sửa
+ Keep Local Version: tức là sẽ giữ nguyên bản trên máy. Không lấy bản 2 kia về. Khi này trên server là phiên bản 2. Trên máy có thể là phiên bản 3 (nhưng chưa check-in) -> rất kho cho sau này.
Phương pháp lựa chọn tối ưu vẫn là ghép code. Để hạn chế xẩy ra conflict khi check-in thì không để nhiều người cùng sửa 1 file.

Chúc chúng ta có những dự án thật thành công :)

[TFS] Chuyển Team Foundation Server giữa các server, các máy (video + ảnh)


thuvienwinform - Rất nhiều trường hợp, có thể là SQL Server gặp lỗi và phải cài lại, hay chỉ vì muốn đổi lại tên Server mà có thể xẩy ra những lỗi đối với Team Foundaiton Server (cụ thể là lỗi TF246017). Khi đó TFS sẽ mất kết nối với CSDL (cụ thể là database Tfs_Configuration). Cách khắc phục rất đơn giản. Chỉ cần vài dòng lệnh là xong!

- Chuẩn bị:
+ File TfsRestore.bat: https://www.dropbox.com/s/gclsrza6kjshtqz/TfsRestore.bat (2KB)
+ Máy có cái  Team Foundation Server, SQL Server

- Giải thich một số lệnh trong file .bat:
+ TfsConfig TfsServiceControl quiesce: dừng Team Foundation lại
+ TfsConfig TfsServiceControl unquiesce: khởi động lại Team Foundation
+ TfsConfig Accounts /ResetOwner: thiết lập tài khoản Owner cho file Database (cần thiết khi chuyển từ máy này sang máy khác)
+ TfsConfig Accounts /add /AccountType:ApplicationTier: thêm tài khoản ApplicationTier
+ TfsConfig RegisterDB: Thiết lập database cho Tfs. Đối với việc chuyển từ server này sang server khác cùng máy chỉ cẩn chuyển database và chạy lệnh này là OK

- Tình huống:
+ Thêm mới 1 server và muốn chuyển TFS sang đó
+ Hoặc chuyển TFS từ máy này sang máy khác
+ Cài lại SQL Server, cài lại win

- Cách làm này có thể khắc phục được lỗi TF246017
+ TF246017:

+ TF246017: Team Foundation Server could not connect to the database. Verify that the server that is hosting the database is operational, and that network problems are not blocking communication with the server

- Một số chú ý khi thực hiện:
+ File TfsRestore.bat phải được chạy bằng quyền Admin
+ Khi chuyển database phải stop (dừng) server đó lại. Nếu không sẽ không cho copy

- Thực hiện


Gồm có 2 bước cơ bản là:
B1: Chuyển Database
- Đầu tiên stop server đang được dùng để cài Tfs lại

- Copy các file database của Tfs (.mdf, .log) ra
+ Tìm đường dẫn
+ Thực hiện copy và paste ra đâu đó như bình thường

- Atach database sang server mới

- Tạo tài khoản mới cho database của Tfs trên server mới này
+ Chú ý với winserver thì phải yêu cầu mật khẩu bảo mật cao (hoặc bỏ tích Enfoce Password Policy)


B2: Thiết lập lại Team Foundation
Chạy file TfsRestore.bat và làm theo hướng dẫn

+ Thu Muc Tfs = Thư mục cài Team Foundation Server. Mặc định là: C:\Program Files\Microsoft Team Foundation Server 11.0\Tools
+ Server name = Tên Server mới muốn chuyển Tfs đến
+ Database name = tên database gắn kết với Tfs (mặc định là Tfs_Configuration)
+ Tai Khoan = tài khoản tạo đề quản lí Tfs_Confition ở B1

Done


Có gì vướng mắc khi chuyển Tfs các bạn có thể comment hoặc liên hệ với mình. Chúc thành công! ^^

[TFS] Khi đã vào guồng


thuvienwinform - 1 tuần là không đủ giới thiệu được hết các chức năng của TFS cũng như nổi trội của nó! Đó mới chỉ là những bước đầu tiên trong việc sử dụng TFS đề phát triển phần mềm. Nhưng mình nghĩ rằng nó đã đủ cho một nhóm mới làm quen với TFS. Giải quyết những câu hỏi ban đầu khi mới tiếp xúc với TFS cũng như scrum. Và đó cũng chỉ là những hiểu biết của mình về nó (2 tuần sử dụng), có thể mình chưa hiểu hết về nó, vì vậy rất mong các bạn đóng ghóp, chia sẻ kinh nghiệm trong sử dụng, quản lí TFS để các nhóm phát triển chúng ta làm việc hiệu quả hơn, có những sản phẩm tốt, nhanh hơn! Đó là mong muốn lớn nhất của mình. Vì hiện nay các nhóm thường không public các công nghệ cũng như quy trình làm việc của mình! Nhưng mình nghĩ là cái đó nên chia sẻ để các nhóm cùng học hỏi lẫn nhau, cùng nhau phát triển.

Lúc đầu mình không hề biết đến TFS là cái gì? Rất ít bài viết tiếng việt nói về nó (có thể là có quá dễ hoặc là các nhóm không muốn chia sẻ). Và mọi công việc trong nhóm đều thực hiện trên doc, excel, mail. Vì vậy, dù mới chỉ dùng được 2 tuần nhưng mình rất nóng lòng muốn chia sẻ nó đến các nhóm phát triển phần mềm để chúng ta cùng sử dụng những công nghệ phát triển nhất, với mục đích cuối cùng là hiệu suất công việc!

Những bài viết mình ít tham khảo (Vì toàn là nguồn tiếng anh) nên có nhiều sai sót mong các bạn đọc đóng ghóp cho nó hoàn thiện hơn nữa. Những phần như giao công việc, tạo các product log, back log...mình sẽ không hướng dẫn vì khi đã thao tác với TFS thì nó sẽ tự đến với bạn một cách tự nhiên, không nên áp đặt theo cách của mình!

Mình rất mong là có một cộng đồng TFS việt để cùng nhau chia sẻ cách làm việc của nó cũng như là nguồn tài liệu cho những người mới, là nơi giao lưu cũng như chia sẻ kinh nghiệm về TFS.

[TFS] Phân quyền. Nhiệm vụ quan trọng

thuvienwinform - Có thành viên chỉ được xem mục work Item, có thành viên được xem hết các mục. Hoặc có thành viên được phép tạo build, project,...Đó là công việc phân quyền

- Việc phân quyền trong TFS rất tỉ mỉ, có thể chỉnh cho cả nhóm, hoặc từng cá nhân!
- Phân quyền là do Admin (master hoặc product owner) thực hiện
Phân quyền chung:



Phân quyên từng project


v..v phần này rất nhiều nhưng rất dễ hiểu, các bạn có thể tự vọc nha :)

[TFS] Backup, công việc không thể thiếu

thuvienwinform - Những sự cố là không thế tránh khỏi như virus, hỏng mạng, cài lại hệ điều hành, đổi máy server khác,...đều làm chúng ta mất dữ liệu. Để khắc phục vấn để này ta phải backup TFS thường xuyên. Thật may là nó đã có sẵn, chúng ta chỉ việc cài và quyên nó đi :D

Mở TFS Administration Console lên


Chú ý: Network Backup path phải là folder share (Full quyền cho EveryOne)


Sau đó chỉ việc next và configure là xong

[TFS] Thiết lập email thông báo (Alert) cho TFS bằng Gmail hoặc Live mail. Giúp cập nhật công việc kịp thời

Email được gửi đến khi có check-in

thuvienwinform - Chẳng nhẽ bật máy lên là phải vào visual luôn thì mới thấy công việc được giao? Không cần, chỉ cẩn vào mail là có thể biết được những lần check-in, sửa code,...Trong bài này mình xin được hướng dẫn tạo email cảnh báo đến các tài khoản khi ai đó check-in, tạo build,...

Chú ý:
- Với nhóm nhỏ khoảng 5, 6 thành viên thì có thể dùng Gmail
- Với nhóm nhiều thành viên thì Gmail sẽ chặn thư (lí do là spam). Còn đối với live mail thì mình thấy vẫn ổn
- Việc gửi thông báo này sử dụng smtp server vì vậy những máy cài winserver có thể tự tạo cho mình 1 smtp server riêng được (nếu có máy server riêng mình sẽ hướng dẫn chi tiết phần này :) )

Để gửi được thư, trước hết phải thiết lập thông báo (Alert) trên máy cài TFS sau đó thiết lập trên từng tài khoản (do từng cá nhân thực hiện)

A. Cài đặt trong máy cài TFS
I. Sử dụng Gmail: https://mail.google.com/
1. Tạo tài khoản Gmail (có rùi thì đổi lại mật khẩu cho mạnh)
Yêu cầu: mật khẩu phải đủ mạnh (chữ hoa, thường, số, kí tự đặc biệt) thì mới được chấp nhận

2. Bật POP (POP là gì thì có thể Google nha)
- Vào hòm thư -> cài đặt

- Chọn tab "chuyển tiếp và POP/MAP


3. Cài đặt trong Team Foundation Adminstration Console




II. Sử dụng live mail
1. Tạo tài khoản: https://mail.live.com/ (có rồi thì đổi lại mật khẩu cho mạnh)
Yêu cầu: Yêu cầu: mật khẩu phải đủ mạnh (chữ hoa, thường, số, kí tự đặc biệt) thì mới được chấp nhận

2. Cài đặt trong Team Foundation Adminstration Console


B. Cài đặt hòm thư của từng tài khoản

- Chọn project -> ấn vào tên của mình -> My Alerts:

- Thêm email và khi nào gửi email

- Ngoài ra có thể chọn Advance Alets Managerment Page để chỉnh nội dung mail (phần này tự vọc nhé)

Ok vậy là đã hoàn thành Alert cho TFS!


[TFS] Source Control Explorer và việc quản lí code

thuvienwinform - Source Control Explorer trong VS chính là công cụ để quản lí code khi đã được up lên TFS. Thông qua nó ta có thể thực hiên việc check-in sau khi chỉnh sửa, check-out  lấy code về, xem các version, thành viên nào up lên, so sánh các file, nội dung được chỉnh sửa bởi ai....

A. Source Control Explorer



B. Đưa code lên server
Sau khi tạo project xong ta có thể upcode lên như sau

b1: map
map là để đưa code trên server về một thư mục tên máy của mình




b2: Nếu đã code code rùi thì chỉ việc Get Last Version về là được. Còn chưa có thì sẽ đưa code lên
- Get Last version


- Up code lên.
Để thực hiện việc này ta có nhiều cách.
Cách 1: kéo thả folder chứa code vào Source Explorer

Cách 2: chuột phải vào solution đang mở -> Add solution to...



Sau đó check-in
hoặc


Các version


[TFS] Kết nối TFS với Visual Studio và tạo project mới

thuvienwinform - Hôm nay mình xin hướng dẫn cách kết nối Visual Studio (VS) vào một Team Foundation Server đã được tạo ra

Địa chỉ server: Ohia-Pc:8080/tfs

A. Kết nối đến TFS

OK, bật VS lên

Chọn Team -> Connect to a... -> connect

Ấn nút server -> Add -> điền địa chỉ server vào -> OK




Ấn Close



Chọn server -> ấn connect



B. Tạo project

Sau khi đang connet thành công ta có tạo 1 project trong tfs như sau:

Team -> Connect a team... -> new team project...



và thực hiện theo các bước



Hiển thị project trên web:




[TFS] Team Explorer và trang Web TFS

thuvienwinform - Team Explorer là nơi quản lí các kết nối, công việc được giao...Để hiển thị nó ta làm như sau:


Trong này có sẵn nhiều video hướng dẫn các bạn có thể xem trước, nó rất bổ ích đấy

Còn về phần web, nó quản lí tất cả của TFS trên này: các project, các work item, code, test,...
Để có cái nhìn trực quan các bạn truy cập vào địa chỉ TFS để xem


[TFS] Thêm tài khoản làm quản trị (Admin)

thuvienwinform - Để phân biệt một tài khoản có quyền quản trị (Admin) hay không thì bạn ấn vào nút cài đặt ở góc trên phải (nếu tài khoản nào là limited thì sẽ không nhìn thấy). Trong cài đặt này mà thấy xuất hiện tab Acess Level 
Tài khoản Admin
Để thêm một tài khoản làm admin, ta mở TFS Administration Console lên, tại Application Tiers chọn group  Membership




Chọn Team Foundation Administrators -> properties...

Tích vào windows user or group -> add

Điền tài khoản cần thêm vào
 Sau đó ok và ok
Xong rùi đấy, thử đăng nhập xem đã có Acess Level chưa



[TFS] Thêm thành viên, tài khoản vào nhóm


thuvienwinform - Để thêm tài khoản vào nhóm ta có 2 cách. Cách 1 là tạo tài khoản trên máy cài TFS. Cách 2 là thêm các máy vào cùng work group hoặc domain rồi thêm vào TFS.

Trong bài này mình sẽ hướng dẫn cách 1. Còn cách 2 nếu bạn nào có nhu cầu mình sẽ hướng dẫn sau (p/s: mình cũng chưa thử :3)!

Cách 1 gồm 2 bước là tạo tài khoản sau đó thêm tài khoản vào TFS!

Bước 1: Tạo tài khoản trên máy cài TFS

Trong bước này này có 2 phương án để thêm tài khoản, 2 phương án này là tương tự nhau
Phương án 1: Thêm bằng lệnh net user trong cmd (nhanh hơn)
- Mở cmd với quyền admin
- Gõ vào net user TàiKhoản MậtKhẩu /add
- Chú ý là mật khẩu phải đủ mạnh thì mới được chấp nhận
+ Ví dụ: net user TaiKhoan1 TaiKhoanSo1 /add
+ Ảnh minh họa:



Phương án 2: Thêm bằng Computer Management (compmgmt.msc)
- Mở Computer Management (có thể mở nhanh bằng lệnh compmgmt.msc)
- Chuyển vào Users trong Local User and Group
- Sau đó chuột phải vào chọn New User (chú ý là tích vào Password nerver experes)




Khi khởi động những tài khoản này sẽ hiện thị lên rất nhiều, để ẩn đi làm như sau: click kép vào user trong ComputerManagerment -> chuyển qua tab Member of -> remove



Bước 2: Thêm những tài khoản này vào TFS
- Khi chưa được thêm thì sẽ không đăng nhập được
- Đăng nhập TFS trên web bằng tài khoản Admin -> ấn vào nút cài đặt ở góc trên phải

Nhập tài khoàn vào và ấn check name



cuối cùng ấn save change để lưu

Ok thử đăng nhập coi nào 



Nhận ngay 100$ cho VPS

Mua hàng ủng hộ page

Ủng hộ page

Nhãn

Code (45) Team Foundation Server (17) Database (14) News (14) product (13) toolbox (10) Linq (9) SoftDesign (8) XNA (6) API (5) Project (5) item (4)

- Bản quyền thuộc về Thư Viện WinForm - Giao diện: Metrominimalist - Thiết kế: Johanes Djogan -