2008-09-23 26 views
9

Tôi sử dụng phiên bản FogBugz theo yêu cầu (được lưu trữ). Tôi muốn bắt đầu sử dụng Mercurial để kiểm soát nguồn. Tôi muốn tích hợp FogBugz và một kho lưu trữ BitBucket. Tôi đã thử một chút nhưng mọi thứ không diễn ra tốt đẹp.Làm cách nào để tích hợp kho lưu trữ bitbucket với phiên bản FogBugz được lưu trữ theo yêu cầu?

FogBugz yêu cầu bạn treo máy khách Mercurial lên tập lệnh python fogbugz.py. TortoiseHg dường như không có thư mục hgext mà chúng tham chiếu đến trong hướng dẫn.

Vì vậy, có ai đã làm điều gì đó thành công tương tự không?

+0

Rất tiếc, tôi không thể cung cấp bất kỳ trợ giúp nào, nhưng tôi khuyên bạn nên lặp lại câu hỏi của mình. Bạn đang thực sự hỏi một câu hỏi có/không khi bạn muốn biết * làm thế nào * ai đó quản lý để làm điều đó. Tôi đề nghị: "Làm thế nào để bạn tích hợp một kho lưu trữ bitbucket với lưu trữ FogBugz theo yêu cầu?" – phloopy

+0

Tất cả những câu hỏi về fogbug đó là gì trên stackoverflow? Tại sao bạn không thể gửi email hỗ trợ và hỏi. Bạn đang trả tiền cho họ để lưu trữ phần mềm (ít nhất tôi đang giả định điều này), do đó, nhận được một số trợ giúp. – Till

+0

@phloopy tôi sẽ tính đến điều đó. cảm ơn. – carrier

Trả lời

6

Từ âm thanh của nó, bạn muốn chạy móc trên máy cục bộ của mình. Móc và chỉ đường được thiết kế để sử dụng trên máy chủ trung tâm.

Nếu bạn là người duy nhất làm việc trong kho lưu trữ hoặc không quan tâm đến việc không hiển thị trong FB cho đến khi bạn thực hiện thao tác kéo, bạn có thể thêm móc vào cục bản sao chính của mình. sao chép thì bạn cần phải làm điều gì đó hơi khác với những gì họ nói ở đây: http://bugs.movabletype.org/help/topics/sourcecontrol/setup/Mercurial.html

bạn có thể đặt fogbugz.py bạn bất cứ nơi nào bạn muốn, chỉ cần thêm một dòng đường dẫn đến [fogbugz] của bạn phần đó kho lưu trữ tập tin HGRC:

[fogbugz] 
path=C:\Program Files\TortoiseHg\scripts\fogbugz.py 

Chỉ cần đảm bảo bạn đã cài đặt python. bạn cũng có thể muốn thêm một móc cam kết để các cam kết cục bộ vào kho lưu trữ cũng nhận được vào FB.

[hooks] 
commit=python:hgext.fogbugz.hook 
incoming=python:hgext.fogbugz.hook 

Trên Fogbugz cài đặt, bạn sẽ muốn thay đổi đặt sau đây trong của bạn cho các bản ghi url của bạn:

^REPO/log/^R2/^FILE 

và sau đây cho url diff của bạn:

^REPO/diff/^R2/^FILE 

Khi móc script chạy nó kết nối với cài đặt FB của bạn và gửi nó một vài tham số. Các tham số này được lưu trữ trong DB và được sử dụng để tạo ra các url cho diffs và log informon. Kịch bản sẽ gửi url của repo, đây là trong thiết lập cơ sở của bạn trong phần [web]. Bạn muốn url này là url đến kho lưu trữ bitbucket của bạn. Điều này sẽ được sử dụng để thay thế ^REPO từ các mẫu url ở trên. Kịch bản móc cũng chuyển id sửa đổi và tên tệp cho FB. Chúng sẽ thay thế^R2 và^FILE. Vì vậy, trong bản tóm tắt này là những thứ bạn muốn thêm vào tập tin trong thư mục HGRC .hg của bạn:

[extensions] 
hgext.fogbugz= 

[fogbugz] 
path=C:\Program Files\TortoiseHg\scripts\fogbugz.py 
host=https://<YOURACCOUNT>.fogbugz.com/ 
script=cvsSubmit.asp 

[hooks] 
commit=python:hgext.fogbugz.hook 
incoming=python:hgext.fogbugz.hook 

[web] 
baseurl=http://www.bitbucket.org/<YOURBITBUCKETACCOUNT>/<YOURPROJECT>/ 

Một điều cần ghi nhớ là FB có thể nhận được thông báo của một checkin trước khi bạn thực sự đẩy những thay đổi đó để BitBucket. Nếu đây là nguyên nhân làm một sự thúc đẩy và mọi thứ sẽ hoạt động.

CHỈNH SỬA: phần được thêm về máy chủ FB và bản tóm tắt.

+0

Cảm ơn bạn đã trả lời ... bạn có thể cho tôi biết bất kỳ điều gì về thông số tập lệnh được cho là đi trong phần [fogbugz] ... vì tôi không lưu trữ fogbugz, cách thức hoạt động? – carrier

15

Post-mortem:

Bitbucket hiện có hỗ trợ fogbugz gốc, cũng như các dịch vụ sau lưng khác.

http://www.bitbucket.org/help/service-integration/

+0

mát mẻ, cảm ơn thông tin ... bây giờ tôi chỉ cần tìm ra cách để có được điều đó để làm việc – carrier

+0

điều này có nghĩa là chúng tôi vẫn làm theo các bước trong http://fogbugz.stackexchange.com/questions/4433/mercurial-integration? – Seth

1

Chỉ cần một heads-up: Fog Creek đã phát hành Kiln cung cấp Mercurial lưu trữ đó là tích hợp chặt chẽ với FogBugz và không cần bất kỳ cấu hình.

Tôi thường sẽ không "quảng cáo" trên Stack Overflow (tuyên bố từ chối trách nhiệm: Tôi là một trong những nhà phát triển Kiln), nhưng tôi cảm thấy rằng điều này trực tiếp trả lời câu hỏi gốc.

1

Có thể tích hợp kho lưu trữ GIT BitBucket của bạn với trình theo dõi vấn đề FogBugz, nhưng tiếc là nó không được ghi lại đúng cách.

Bạn cần phải làm theo các bước được mô tả tại https://confluence.atlassian.com/display/BITBUCKET/FogBugz+Service+Management, nhưng hãy cẩn thận rằng

  1. Trong URL CVSSubmit bạn cần phải đặt url KHÔNG "? IxBug = bugID & sFile = nộp & sPrev = x & sNew = y & ixRepository = "tham số.

    Nó chỉ cần được "https://your_repo.fogbugz.com/cvsSubmit.asp"

  2. Bạn sẽ cần phải đề cập đến trường hợp FogBugz ID của bạn trong git commit nhắn bằng cách đặt "BugzID: ID" chuỗi trong nó (điều này là không ghi nhận bất cứ nơi nào :-() tương tự như sau:

    git commit -m "Đây là một tuyệt vời cam kết mà giải quyết trường hợp BugzID: 42"

Tất nhiên, cam kết thông tin sẽ được gửi đến FogBug z sau khi bạn đẩy cam kết của mình vào máy chủ BitBucket, không phải sau khi bạn thực hiện cam kết cục bộ.

Các vấn đề liên quan