Tôi đã tìm kiếm một câu trả lời cho điều này một thời gian trước đây và từ đó đã tìm ra một hệ thống rất gọn gàng và đơn giản, đáp ứng những mục tiêu chính này cho tôi:
Các mục tiêu theo thứ tự quan trọng:
- Làm cho nó có thể nhập một nhiệm vụ / lỗi mới một cách dễ dàng nhất có thể, để tôi có thể ghi lại nó ngay khi tôi phát hiện ra nó hoặc mơ thấy nó, và quay lại mã hóa trước khi tôi mất vị trí của mình.
- Giúp bạn dễ dàng xem và quản lý các vấn đề mà không cần tìm kiếm, nhấp chuột, truy sâu.
- Giúp dễ dàng liên kết với kiểm soát phiên bản để sau này tôi có thể tìm hiểu những thay đổi đã được thực hiện để giải quyết vấn đề hoặc tác vụ hoặc lỗi nào đã dẫn đến một thay đổi cụ thể trong mã.
- Làm cho nó tương đối dễ dàng để thiết lập: cài đặt và cấu hình tối thiểu và giá tối thiểu.
(3 và 4 ít quan trọng hơn và tôi sẽ ổn với một hệ thống không cung cấp cho họ, nhưng hệ thống này thì không).
Bước 1: Nhận một dự án trong Bitbucket
Tôi sử dụng bitbucket để theo dõi vấn đề và kiểm soát phiên bản git (ví dụ: đối với một dự án iOS trong XCode). Tôi đã xem FogBUGz (mà tôi đã đọc trong nhiều năm trên JoelOnSoftware) và GitHub và những người khác, nhưng bitbucket dường như có các tính năng miễn phí tốt nhất được đặt cho các nhóm nhỏ.
Bước 2: Sử dụng theo dõi vấn đề Bitbucket trong dự án
Tiếp theo tôi thiết lập theo dõi vấn đề trong cùng một dự án bitbucket. Vì vậy, dự án của tôi bây giờ có một kho git và theo dõi vấn đề.
Bước 3: Thực hiện theo dõi vấn đề dễ dàng!
Đối với điều này, tôi đang sử dụng Thẻ Bitbucket , một giao diện đẹp, đơn giản giống như kanban cho các vấn đề về Bitbucket. Bạn chỉ cần đăng nhập vào tài khoản Bitbucket của mình và thiết lập các cột bạn muốn. Tôi có bốn cột: Backlog, Next, Bugs và Resolve. (Tôi đang nghĩ đến việc hợp nhất Bugs với Backlog, nhưng đừng bận tâm đến điều đó bây giờ)
(Hình ảnh này là từ blog Thẻ Bitbucket, không phải từ dự án của tôi, do đó các cột khác với các cột tôi sử dụng)
Thẻ Bitbucket cho phép bạn thiết lập một bộ lọc rất đơn giản cho mỗi danh sách nơi bạn chọn trạng thái và loại (các) vấn đề xảy ra trong một cột thẻ. Vì vậy, open
các vấn đề về tình trạng của loại bug
đi trong cột Bug .
(Cái này là từ dự án của tôi: đó là cách tôi chọn những gì diễn ra trong cột Bug)
Điều thực sự thú vị là khi bạn kéo và thả thẻ từ cột này sang cột khác, nó sẽ tự động thay đổi trạng thái của sự cố mà thẻ thể hiện để khớp với định nghĩa của cột đích.
Một điều thú vị khác về Thẻ Bitbucket là nó không hết thời gian một cách dễ dàng. Điều này rất quan trọng vì mục đích của toàn bộ thiết lập này là để làm cho nó dễ dàng - vì vậy hệ thống này hoạt động với tôi thay vì tôi làm việc cho nó. Tôi mở một trang đánh dấu trang thẻ của tôi và nó vẫn mở trên tab Chrome cả ngày.
Điều này quan tâm đến mục tiêu thứ 2 của tôi.
Bước 4: Buộc nó với kiểm soát phiên bản.
Các vấn đề của Bitbucket liên kết chặt chẽ với kiểm soát phiên bản (như hầu hết các đối thủ cạnh tranh) vì vậy khi tôi hoàn thành một vấn đề, tôi cam kết git với một thông báo như "Đã thêm điều này vào whatsit. Fixes # 245". Nếu tôi cam kết điều này, sau đó đẩy nó, sau đó tải lại trang Thẻ Bitbucket của tôi, tôi sẽ thấy rằng vấn đề đã được chuyển sang cột Đã giải quyết. Mát mẻ.
Có mục tiêu thứ 3 của tôi đã hoàn thành.
Bước 5: Giúp dễ dàng TẠO các vấn đề.
Bạn có thể nghĩ rằng toàn bộ thiết lập này đã rất phức tạp để thiết lập và tại sao tôi muốn thêm một ứng dụng web khác vào quy trình. Chà, hãy nhớ mục tiêu chính của tôi ở trên: Tôi muốn làm cho nó dễ dàng hơn để thêm một nhiệm vụ mà tôi không mất đi sự suy nghĩ trước khi tôi đến khu vực văn bản để nhập nó, tôi cũng không muốn mất vị trí của mình mã theo thời gian tôi hoàn thành
Bây giờ, Thẻ Bitbucket cho phép tôi tạo các nhiệm vụ khá dễ dàng, nhưng chỉ cần một chút nhấp chuột / kiểm soát để hoàn thành mục tiêu số 1. Bạn phải bấm vào Tạo một vấn đề; sau đó một trình soạn thảo phương thức bật lên; sau khi nhập tiêu đề vấn đề của bạn, bạn phải cuộn xuống để chỉ định loại (lỗi / nhiệm vụ) và mức độ ưu tiên; sau đó bấm tạo.
Thay vào đó tôi chọn sử dụng ứng dụng Bitbucket thứ hai có tên taskrd .
Bạn có thể thiết lập taskrd, bằng cách cho nó đăng nhập Bitbucket của bạn và đặt nó trên một dấu trang và tab, và giữ cho nó mở cả ngày, giống như thẻ Bitbucket. Taskrd có một quy trình công việc đơn giản hơn nhiều để thêm một tác vụ mới, chỉ cần nhập nó vào, tùy ý đặt loại và mức độ ưu tiên, và nhấn nút Thêm.
(hình ảnh này là từ blog của Nhiệm vụ)
Bây giờ người ta cho rằng không đáng để nỗ lực thiết lập Nhiệm vụ bằng cách sử dụng Thẻ Bitbucket hoặc thậm chí hệ thống nhập vấn đề của Bitbuckets. Rốt cuộc, với Taskrd tôi phải nhấp vào một tab trên trình duyệt của mình và nhấp vào Tải lại trên trang của mình bằng Thẻ Bitbucket để làm mới và nhận được vấn đề mới mà tôi đã thêm trong ứng dụng Nhiệm vụ. Nhưng trên thực tế, tôi thấy rằng tôi thường ở chế độ này hoặc chế độ khác: Hoặc tôi đang sử dụng Thẻ Bitbucket để sắp xếp những gì tôi đang làm tiếp theo hoặc để xem qua danh sách lỗi hoặc tôi đang bận mã hóa và nhập các tác vụ / lỗi khi chúng xảy ra với tôi - tất cả đều ở chế độ bắn nhanh. Đối với chế độ làm việc thứ 2 này, Nhiệm vụ rất tuyệt vời: Tôi chỉ cần mở nó trên một màn hình riêng biệt và nhanh chóng nhập các vấn đề khi tôi làm việc.
Vì vậy, nó bao gồm mục tiêu số 1.
Mục tiêu cuối cùng của tôi là dễ dàng / giá rẻ thiết lập. Nó cũng rẻ: tất cả điều này là miễn phí. Bitbucket có kho lưu trữ riêng miễn phí cho tối đa năm người dùng và các ứng dụng khác đều miễn phí. Thiết lập có vẻ không tầm thường dựa trên những điều trên, nhưng thực sự phần phức tạp nhất là thiết lập git để đẩy đến kho lưu trữ bitbucket sẽ giống nhau ở bất cứ đâu. Tôi không phải cài đặt bất cứ thứ gì và việc kết nối cả hai ứng dụng với kho lưu trữ bitbucket của tôi khá dễ dàng. Thiết lập các cột thẻ theo cách tôi thích chúng có một chút chơi xung quanh nhưng thực sự không khó.
Đọc lại điều này, tôi có thể cảm thấy hơi thất vọng với Bitbucket - nhưng tôi thực sự không có ý đó. Chỉ là tôi đã sử dụng quy trình này trong nhiều tuần - sau nhiều năm thử các cấu hình khác nhau để theo dõi những gì tôi đang làm - và tôi thực sự đang đào nó, vì vậy tôi nghĩ rằng tôi đã dành thời gian để trình bày cho người khác.