2014-05-01 16 views
38

Tôi tự hỏi làm thế nào để chọn chi nhánh để xây dựng dựa trên Team City 8.1.Chọn chi nhánh Git cho TeamCity Build

gốc VCS của tôi (Git) được thiết lập để mặc định: "bậc thầy" và thông số kỹ thuật chi nhánh là

+:refs/heads/develop 
+:refs/heads/feature/* 
+:refs/heads/hotfix/* 
+:refs/heads/master 
+:refs/heads/release/* 

Tôi có một CI build thiết lập tự động xây dựng bất cứ điều gì đó được kiểm tra trong, mà là làm việc một cách chính xác như thế nào Tôi muốn.

Điều tôi muốn làm là tạo bản dựng/triển khai QA được lập lịch đối với nhánh "đang phát triển". Tôi thấy rằng nếu tôi nhấp vào dấu ba chấm bên cạnh nút chạy, tôi có thể chọn chi nhánh trên tab "Thay đổi", nhưng tôi không thể xác định cách thực hiện "thanh" này. Điều này có thể xảy ra không, hay tôi đang nói về điều này sai?

Cảm ơn,

Joe

Trả lời

80

Dựa trên phản hồi của @ biswajit-86 và một số thông tin khác mà tôi đã tìm thấy trong khi googling điều này, tôi đã có thể làm việc này. Đây là những gì tôi đã làm (hình ảnh nặng, xin lỗi). Nó dựa trên Team City 8.2 mà dường như được thiết lập một chút khác với những ví dụ mà tôi đã gặp.

1) Thiết lập gốc VCS. Khóa ở đây là thông số %BranchName%.

enter image description here

2) Tạo một mẫu xây dựng và sử dụng rễ VCS mà vừa được tạo. Tôi cũng đã thêm một bước MSBuild vì tất cả các bản dựng của tôi cần phải chạy nó.

enter image description here

3) Tạo bản dựng mới dựa trên mẫu. Như bạn có thể thấy ở đây, tham số %BrachName% đã được tạo ở bước 1 khả dụng.

enter image description here

4) Nếu bạn cần phải thay đổi điều này sau, nó có sẵn ở đây

enter image description here

Và đó là khá nhiều đó. Đối với việc xây dựng CI của tôi, tôi để trống tên chi nhánh để bất kỳ nhánh nào được kiểm tra sẽ kích hoạt bước MSBuild. Đối với xây dựng QA của tôi, tôi vượt qua trong "phát triển" như được hiển thị ở đây và tôi đã thiết lập này trên một lịch trình hàng ngày. Tôi cũng có một "phát hành" xây dựng thiết lập, nhưng dựa trên quy ước đặt tên của chúng tôi có vẻ như tôi cần phải cập nhật các xây dựng để trỏ đến các chi nhánh cụ thể cho mỗi bản phát hành.

+6

Cảm ơn bạn đã chia sẻ! – BrokenGlass

+2

Teamcity nên có loại tính năng ... Nó là một pitty của nó không có ... Đối với subversion chúng tôi có thể kiểm soát này thông qua quy tắc kiểm tra ... nhưng không phải ở đây ... –

+3

Thông tin này vẫn còn áp dụng cho 9.x – silencedmessage

4

Bạn có thể parameterize "tên Ref" của việc thiết lập git VCS. Điều này có nghĩa là bạn khai báo một biến của biểu mẫu %variable.name% trong bản dựng của bạn, tạo thông số xây dựng trong danh mục "thông số cấu hình:".

Đối với mỗi mục tiêu xây dựng, hãy đặt giá trị này và bạn sẽ có thể chọn nhánh cụ thể mà bạn muốn chạy đích.