Tracks
Bạn vừa hoàn thành một đoạn mã xuất sắc hoặc một script chuyển đổi dữ liệu. Bạn đã sẵn sàng triển khai, nhưng rồi hỗn loạn ập đến—kiểm thử thủ công, lỗi triển khai, và các thành viên trong nhóm làm việc trên những phiên bản mã đã lỗi thời. Nghe quen chứ? Đây chính là lúc Azure DevOps phát huy tác dụng.
Mọi thứ bạn cần để phát triển sản phẩm phần mềm từ đầu đến cuối đều có trong Azure DevOps.
Hướng dẫn này dạy bạn cách thiết lập môi trường Azure DevOps, dùng Azure Repos để quản lý phiên bản, tạo và quản lý pipeline CI/CD, theo dõi và quản lý hạng mục công việc với Azure Boards, tích hợp Azure DevOps với các công cụ khác, giám sát và lập báo cáo trong Azure DevOps, cùng các thực tiễn tốt nhất cho Azure DevOps.
Azure DevOps là gì?
Azure DevOps là bộ công cụ phát triển dựa trên đám mây do Microsoft cung cấp, giúp tinh gọn quy trình phát triển phần mềm, cộng tác và triển khai. Nó cung cấp quản lý phiên bản, tích hợp/triển khai liên tục (CI/CD), theo dõi công việc và nhiều hơn nữa.
Azure DevOps có khả năng mở rộng, tích hợp liền mạch với Azure và các nền tảng đám mây khác, đồng thời thúc đẩy sự cộng tác trong nhóm. Dù bạn làm việc trên một dự án nhỏ hay một ứng dụng doanh nghiệp lớn, Azure DevOps đều đáp ứng được.

Giao diện Azure DevOps: Bảng điều khiển chính cung cấp tổng quan về dự án.
Azure DevOps bao gồm một bộ dịch vụ được thiết kế để giúp các nhóm lập kế hoạch, phát triển, kiểm thử và bàn giao phần mềm hiệu quả. Nó không chỉ dành cho nhà phát triển—các chuyên gia dữ liệu cũng có thể dùng để quản lý mã, tự động hóa quy trình và cộng tác hiệu quả. Azure DevOps cho phép bạn kết nối và cộng tác xuyên suốt các dịch vụ cốt lõi của nó.
Các dịch vụ cốt lõi của Azure DevOps gồm:
|
Dịch vụ |
Mục đích |
|
Azure Boards |
Azure Boards hỗ trợ quản lý dự án agile, bao gồm sprint và theo dõi backlog, đồng thời hỗ trợ các phương pháp agile bằng cách cung cấp nền tảng có thể cấu hình để quản lý work item và theo dõi tác vụ, vấn đề và user story. |
|
Azure Repos |
Azure Repos cung cấp công cụ quản lý phiên bản (Git/TFVC) để quản lý mã, theo dõi thay đổi và chụp snapshot cho mọi quy mô dự án, mang lại quản lý phiên bản hiệu quả. |
|
Azure Pipelines |
Azure Pipelines tự động hóa build, kiểm thử và triển khai với CI/CD, hỗ trợ mọi ngôn ngữ chính và loại dự án cho tích hợp, kiểm thử và bàn giao liên tục. |
|
Azure Test Plans |
Azure Test Plans cung cấp công cụ mạnh mẽ cho kiểm thử thủ công có kế hoạch, kiểm thử chấp nhận người dùng, kiểm thử khám phá và phản hồi từ các bên liên quan, hỗ trợ quản lý và thực thi test case. |
|
Azure Artifacts |
Azure Artifacts cung cấp cách đơn giản hơn để quản lý phụ thuộc từ một nguồn cấp duy nhất. Chúng hoạt động như kho lưu trữ để lưu, quản lý và chia sẻ gói trong nội bộ nhóm hoặc công khai. |
Hãy xem khóa học tương tác Understanding Microsoft Azure nếu bạn vừa bắt đầu hành trình với Azure. Bạn cũng nên xem lộ trình Microsoft Azure Fundamentals, lộ trình này sẽ giúp bạn chuẩn bị để được chứng nhận Azure.
Tính năng của Azure DevOps
Giờ bạn đã biết đôi chút về Azure DevOps, hãy cùng điểm lại các tính năng chính. Tại sao bạn nên dùng Azure DevOps? Dưới đây là một số điểm nổi bật:
- Cộng tác: Azure DevOps gắn kết nhóm của bạn với các kho dùng chung, bảng công việc và pipeline, giúp mọi người phối hợp trơn tru trên nhiều dự án.
- Quản lý phiên bản: Azure DevOps hỗ trợ Git, vì vậy bạn và nhóm có thể theo dõi mọi thay đổi. Nhờ đó, nhóm có thể quản lý pull/merge request, theo dõi thay đổi và nhiều hơn nữa.
- Quy trình tự động: Dùng Azure DevOps để tự động hóa build, test và triển khai nhằm đảm bảo triển khai nhanh hơn, đáng tin cậy hơn, tiết kiệm thời gian và giảm thiểu lỗi.
- Khả năng mở rộng: Azure DevOps có khả năng mở rộng để đáp ứng nhu cầu và quy mô của nhóm bạn. Nó linh hoạt thích ứng khi số người dùng và dự án tăng lên, dù nhóm lớn hay nhỏ.
- Tích hợp: Azure DevOps tích hợp liền mạch với Azure, GitHub và các nền tảng/công cụ đám mây khác để đảm bảo quy trình mượt mà, đồng thời duy trì kho an toàn và kiểm soát truy cập theo vai trò.
Theo kinh nghiệm của tôi, Azure DevOps là giải pháp hàng đầu cho doanh nghiệp và cá nhân muốn áp dụng các thực tiễn DevOps tốt nhất. Vì sao? Nó xây dựng văn hóa cải tiến liên tục và cộng tác, đồng thời cung cấp bộ công cụ cần thiết.
Bạn mới bắt đầu với DevOps? Khám phá các khái niệm chủ chốt thúc đẩy phát triển và triển khai hiện đại trong khóa học DevOps Concepts.
Thiết Lập Môi Trường Azure DevOps
Để truy cập môi trường Azure DevOps, trước hết bạn cần thiết lập mọi thứ để thúc đẩy cộng tác trong nhóm và quy trình phát triển đầu-cuối.
Tạo tài khoản Azure DevOps
Bạn cần tạo tài khoản trước khi dùng Azure DevOps. Đây là cách bắt đầu:
- Truy cập Trang web Azure DevOps: Đi đến Azure DevOps để bắt đầu quá trình đăng ký. Nhấp Get Started with Azure.

- Đăng nhập bằng tài khoản Microsoft: Nếu bạn đã có tài khoản Microsoft (ví dụ: Outlook, Xbox, Office 365), bạn có thể dùng để đăng nhập. Nếu chưa, bạn sẽ cần tạo tài khoản Microsoft miễn phí.
- Nhấp Sign in hoặc Create one! (Sign up).
- Dùng thông tin xác thực Microsoft của bạn hoặc các tùy chọn đăng nhập khác để đăng nhập.
- Nhấp Next.

- Bắt đầu quá trình thiết lập: Nhấp vào Checkbox và Continue. Sau khi đăng nhập, bạn sẽ được yêu cầu tạo một tổ chức mới. Đây sẽ là nơi chứa các nhóm và dự án Azure DevOps của bạn.

Tạo tổ chức trong Azure DevOps
Tổ chức trong Azure DevOps là nơi chứa tất cả dự án và kho mã của bạn. Đây cũng là nơi bạn quản lý nhóm, quyền hạn và thanh toán.
- Đặt tên cho tổ chức: Chọn một tên duy nhất cho tổ chức của bạn. Điều này quan trọng vì nó sẽ xuất hiện như một phần của URL Azure DevOps (ví dụ,
https://dev.azure.com/yourorganization). - Chọn khu vực: Azure DevOps yêu cầu chọn khu vực lưu trữ dữ liệu của bạn. Khu vực mặc định phù hợp với hầu hết trường hợp, nhưng nếu bạn có yêu cầu cụ thể, như tuân thủ, bạn có thể chọn khu vực khác gần người dùng của bạn hơn (ví dụ, Hoa Kỳ).
- Xác nhận và tiếp tục: Sau khi điền các thông tin này, nhấp Continue. Tổ chức của bạn đã sẵn sàng và bạn sẽ được chuyển đến cổng Azure DevOps chính!

Khám phá giao diện Azure DevOps
Sau khi tạo tổ chức, bạn sẽ được đưa tới cổng Azure DevOps. Các phần chính của dịch vụ gồm Overview, Boards, Repos, Pipelines, Test Plans và Artifacts.

Giao diện này có thể gây choáng ngợp ban đầu, nhưng các chức năng cốt lõi của Azure DevOps có thể tóm gọn thành quản lý phiên bản, CI/CD và quản lý dự án.
Tạo dự án mới
Giờ tài khoản và tổ chức đã sẵn sàng, hãy tạo dự án đầu tiên của bạn trên Azure DevOps.
Thiết lập dự án mới
- Nhấp vào "New Project": Trong cổng Azure DevOps, nhấn nút New Project. Thao tác này cho phép bạn thiết lập dự án đầu tiên.
- Điền thông tin dự án:
- Tên dự án: Chọn tên cho dự án của bạn (ví dụ, “yourproject”).
- Mô tả (Tùy chọn): Mô tả ngắn gọn về dự án này.
- Chế độ hiển thị: Chọn dự án công khai hay riêng tư. Dự án công khai cho phép mọi người xem, phù hợp cho dự án mã nguồn mở. Dự án riêng tư được bảo mật và chỉ những người bạn mời mới có thể truy cập.
- Tạo dự án: Sau khi nhập chi tiết dự án và chọn hệ thống quản lý phiên bản, nhấp Create project. Dự án của bạn đã được thiết lập và sẵn sàng!

- Hệ thống quản lý phiên bản: Azure DevOps cung cấp hai loại hệ thống quản lý phiên bản: Git và Team Foundation Version Control (TFVC).
- Git là hệ thống quản lý phiên bản phân tán hiện đại và được cộng đồng lập trình ưa chuộng. Đây là lựa chọn tốt nhất cho hầu hết dự án.
- TFVC là hệ thống quản lý phiên bản tập trung, ít phổ biến hơn và thường dùng cho dự án legacy.

Theo kinh nghiệm của tôi, nếu bạn mới bắt đầu hoặc không có lý do cụ thể để chọn TFVC, hãy chọn Git.
Sẵn sàng kiểm soát mã nguồn của bạn? Học Git và bắt đầu quản lý dự án như một chuyên gia.
Sử Dụng Azure Repos cho Quản Lý Phiên Bản
Giờ dự án đã sẵn sàng, hãy đi sâu khám phá một số tính năng chính của nó.
Thiết lập kho Git
- Đi tới Repos: Từ menu bên trái, chọn tab Repos. Đây là nơi bạn quản lý mã.

- Clone kho: Bạn có thể clone kho về máy cục bộ bằng URL trong phần Repos. Ví dụ:
# This command clones the specified Git repository from Azure DevOps to your local machine.
git clone https://yourorganization@dev.azure.com/yourorganization/yourproject/_git/yourrepo
Hãy tách lệnh trên thành từng phần:
- Thay
yourorganizationbằng tên tổ chức của bạn. - Thay
yourprojectbằng tên dự án của bạn. - Thay
yourrepobằng tên kho của bạn.
Dưới đây là URL trong phần Repos của tôi:

- Push mã của bạn: Khi kho đã được clone về máy, bạn có thể thêm mã và push trở lại Azure DevOps.
git add .
git commit -m "my first commit"
git push origin main
Chúc mừng! Bạn vừa tạo commit đầu tiên trong Azure Repos.
Branching và merging
Trong phát triển phần mềm, branching cho phép bạn làm việc trên tính năng hoặc bản vá tách biệt khỏi dự án chính. Merging là quá trình đưa thay đổi từ một nhánh vào nhánh khác.
- Tạo nhánh cục bộ: Để bắt đầu làm một tính năng, hãy tạo nhánh mới:
git checkout -b feature-branch
- Push nhánh lên Azure DevOps: Sau khi thay đổi trên nhánh mới, push nó lên Azure DevOps:
git push origin feature-branch
Chuyển giữa các nhánh
Để chuyển giữa các nhánh, dùng lệnh sau:
git checkout main
Hoặc chuyển sang nhánh khác:
git checkout feature-branch
Xóa nhánh
Khi tính năng đã được merge, bạn có thể xóa nhánh cả cục bộ và từ xa:
- Xóa nhánh cục bộ:
git branch -d feature-branch
- Xóa nhánh từ xa:
git push origin --delete feature-branch
Merge nhánh qua pull request
- Tạo pull request: Khi nhánh tính năng đã sẵn sàng để merge vào nhánh chính, đi tới mục Pull Requests trong Azure DevOps và nhấp New Pull Request.

- Xem xét và merge: Rà soát thay đổi và nhấp Complete để hợp nhất thay đổi vào nhánh chính.
- Giải quyết xung đột: Nếu có xung đột merge (tức thay đổi trong cùng một phần mã), bạn cần giải quyết thủ công. Azure DevOps sẽ hướng dẫn bằng cách tô đậm vùng xung đột.
Quản lý pull request
Pull request rất quan trọng cho việc review mã và cộng tác. Chúng cho phép thành viên nhóm xem xét mã trước khi merge vào nhánh chính.
Tạo pull request
- Tạo pull request: Sau khi push nhánh tính năng, điều hướng tới Pull Requests và nhấp New Pull Request. Chọn nhánh nguồn (ví dụ,
feature-branch) và nhánh đích (ví dụ,main). - Mô tả pull request: Cung cấp mô tả rõ ràng về các thay đổi trong pull request. Điều này giúp người review biết cần xem gì.
Rà soát và phê duyệt pull request
- Yêu cầu review: Thêm người review từ nhóm của bạn để kiểm tra thay đổi mã.
- Phê duyệt và merge: Khi pull request được phê duyệt, nhấp Complete để merge vào nhánh chính.

Tạo và Quản Lý Pipeline CI/CD
Azure DevOps cũng bao gồm Pipelines để tự động hóa quy trình build, test và triển khai.
Pipeline trong Azure DevOps là gì?
Pipeline trong Azure DevOps là tập hợp các quy trình tự động giúp bạn:
- Build mã (build pipeline)
- Kiểm thử
- Triển khai tới các môi trường khác nhau (release pipeline)
Các pipeline này đảm bảo mã của bạn luôn sẵn sàng triển khai và có thể được kiểm thử tự động.
Tạo build pipeline
- Đi tới Pipelines: Trong dự án Azure DevOps của bạn, nhấp New Pipeline trong phần Pipelines.


- Chọn nguồn: Chọn Azure Repos Git làm nguồn và chọn kho của bạn.

- Cấu hình pipeline: Bạn có thể cấu hình pipeline bằng YAML editor hoặc Classic editor. Hãy dùng YAML, cách định nghĩa pipeline dựa trên mã.
Hãy lấy ví dụ ứng dụng Node.js cơ bản. Tệp azure-pipelines.yml dưới đây chứa YAML do Azure DevOps tự động tạo.
# Node.js
# Build a general Node.js project with npm.
# Add steps that analyze code, save build artifacts, deploy, and more:
# https://docs.microsoft.com/azure/devops/pipelines/languages/javascript
trigger:
- main
pool:
vmImage: ubuntu-latest
steps:
- task: NodeTool@0
inputs:
versionSpec: '20.x'
displayName: 'Install Node.js'
- script: |
npm install
npm run build
displayName: 'npm install and build'
- Lưu và chạy: Lưu pipeline và chạy để kiểm tra mọi thứ hoạt động đúng.
Chạy build pipeline
Khi build pipeline đã thiết lập, bạn có thể chạy thủ công bằng cách nhấp Run Pipeline. Pipeline sẽ đi qua các giai đoạn khác nhau như “installing dependencies”, “running tests” và “building”.
Bạn có thể xem log cho từng bước để khắc phục sự cố nếu build thất bại. Azure DevOps cung cấp log chi tiết giúp bạn xác định vấn đề.
Thiết lập triển khai liên tục (CD)
- Đi tới Releases: Trong phần Pipelines, nhấp Releases rồi New Pipeline.


- Thêm Artifact: Liên kết artifact từ build pipeline làm nguồn cho release pipeline.

- Triển khai tới các môi trường: Thiết lập các môi trường như Staging và Production nơi bạn muốn triển khai ứng dụng.

Tự động hóa triển khai
Azure DevOps có thể tự động triển khai ứng dụng bất cứ khi nào có build mới. Bạn có thể thiết lập bằng cách thêm trigger và định nghĩa task để triển khai lên các nền tảng như Azure, AWS, v.v.
Quản Lý Hạng Mục Công Việc với Azure Boards
Azure Boards là trung tâm quản lý dự án trong Azure DevOps. Nó giúp nhóm lập kế hoạch, theo dõi và thảo luận công việc xuyên suốt vòng đời phát triển phần mềm thông qua các tính năng như Task, Bug, User Story và Epic.
Dù theo Scrum hay Kanban, Azure Boards giúp bạn trực quan hóa, ưu tiên và quản lý công việc hiệu quả.
Hãy đi từng bước.
Tạo và quản lý work item
Azure Boards cho phép bạn quản lý tác vụ, lỗi và tính năng bằng work item.
- Tạo work item: Vào Boards, chọn Work items, và nhấp New Work Item.

Bạn có thể tạo:
- Epic: Hạng mục lớn hoặc phần việc bao trùm nhiều phần nhỏ.
- Issue: Vấn đề hoặc lỗi cụ thể cần khắc phục.
- Task: Một hạng mục công việc đơn lẻ, có thể thực hiện.

- Hãy chọn Epic.
- Nhập Title, Description, Priority, Start Date và Target Date. Nhấp Save.

- Giao việc
- Mở work item bạn vừa tạo.
- Trong trường Assign people, chọn một thành viên.
- Chọn Add tag để phân loại tốt hơn. Nhấp Save.

- Theo dõi tiến độ
- Dùng trường State để cập nhật trạng thái (ví dụ: New, Active, Resolved, Closed).
- Thêm bình luận hoặc tệp đính kèm để cập nhật hoặc cung cấp ngữ cảnh.
Theo kinh nghiệm của tôi, nhóm sẽ giữ được trách nhiệm và tập trung hơn khi có người chịu trách nhiệm rõ ràng và thời hạn hợp lý.
Thiết lập sprint và backlog
Sprint agile và backlog rất quan trọng cho phát triển lặp. Cách thiết lập:
- Tạo Sprint: Sprint là các vòng lặp công việc có giới hạn thời gian. Bạn có thể thiết lập sprint bằng cách vào Boards > Sprints và thêm sprint mới (ví dụ, “Sprint 1”).


- Nhấp Configure Team Settings và xác định thời lượng sprint (ví dụ, 2 tuần).


- Thêm ngày bắt đầu và kết thúc cho sprint.

- Quản lý product backlog: Trong chế độ xem Backlog, bạn có thể tổ chức work item theo mức độ ưu tiên. Điều hướng tới Boards > Backlogs.

- Kéo thả work item vào backlog để đặt mức ưu tiên.

- Trực quan hóa tiến độ: Azure DevOps giúp bạn trực quan hóa work item và di chuyển chúng qua các giai đoạn (ví dụ, To Do, Doing, Done). Dùng chế độ xem Board để xem work item theo cột.

- Tùy chỉnh cột cho phù hợp quy trình làm việc của nhóm.


Theo kinh nghiệm của tôi, làm như vậy sẽ giúp nhóm giảm thời gian chết và sự nhầm lẫn nếu backlog được tổ chức tốt và rõ ràng về những việc cần làm tiếp theo.
Liên kết work item với commit
Liên kết work item với commit giúp theo dõi thay đổi mã tương ứng với từng tác vụ hoặc lỗi. Cách thực hiện:
- Liên kết với commit: Có hai cách: qua bảng điều khiển Azure DevOps hoặc môi trường phát triển cục bộ.
- Bảng điều khiển Azure DevOps: Trong thông điệp commit Git, thêm
#WorkItemID(ví dụ,#1). Nhấp Commit. Azure DevOps sẽ tự động liên kết commit với work item.

- Môi trường phát triển cục bộ:
- Trong môi trường phát triển cục bộ, mở terminal hoặc command prompt. Thực hiện thay đổi mã và chuẩn bị commit.
- Trong thông điệp commit, thêm ID work item với dấu thăng (ví dụ,
Fixed bug in login analytics #1). - Hoàn tất commit bằng cách chạy lệnh thích hợp:
git commit -m "Fixed bug in login analytics #1"
- Push commit lên kho từ xa (Azure Repo):
git push origin feature-branch
- Liên kết với pull request:
- Khi tạo pull request, đề cập ID work item trong phần Description.
- Nhấp Create. Azure DevOps sẽ tự động liên kết pull request với work item.

Theo kinh nghiệm của tôi, liên kết này cung cấp khả năng truy vết đầy đủ, giúp dễ dàng thấy thay đổi mã nào giải quyết tác vụ hay lỗi cụ thể. Bạn có thể xem các commit và PR liên kết trong phần Development của work item.
Tích Hợp với Các Công Cụ Khác
Azure DevOps tỏa sáng khi được tích hợp với các công cụ khác như GitHub và các nền tảng đám mây. Hãy cùng tìm hiểu cách thiết lập.
Tích hợp Azure DevOps với GitHub
Kết nối Azure DevOps với GitHub giúp tinh gọn cộng tác và tự động hóa CI/CD. Cách thực hiện:
- Kết nối GitHub với Azure Pipelines:
- Đi tới Pipelines > Create Pipeline.


- Chọn GitHub làm nguồn.

- Ủy quyền cho Azure DevOps truy cập các kho GitHub của bạn.
Mới dùng GitHub? Khám phá cách cộng tác, theo dõi thay đổi và đóng góp cho dự án mã nguồn mở với khóa học GitHub concepts.
- Thiết lập pipeline
- Chọn một kho và cấu hình tệp YAML pipeline của bạn.


- Định nghĩa các bước build và triển khai. Ví dụ YAML:
# Set up the trigger for the pipeline
trigger:
# Specify the branches to include
branches:
include:
# Include the main branch
- main
# Define the jobs for the pipeline
jobs:
# Create a job named 'Build'
- job: Build
# List the steps for the 'Build' job
steps:
# Add a script step to print a message
- script: echo "Building the project..."
Theo kinh nghiệm của tôi, tích hợp này tự động đảm bảo cập nhật mã và triển khai liền mạch, giảm công việc thủ công.
Kết nối Azure DevOps với Azure và các nền tảng đám mây khác
Azure DevOps tích hợp gốc với các dịch vụ Azure như Azure Web Apps, Azure Kubernetes Services (AKS) và nhiều dịch vụ khác. Hãy học cách kết nối Azure DevOps với Azure Web Apps.
- Liên kết với Dịch vụ Azure:
- Ở góc dưới bên trái dự án của bạn, đi đến Project Settings và nhấp Service Connections trong phần Pipelines.


-
- Nhấp New Service Connection và chọn Azure Resource Manager.


-
- Xác thực bằng tài khoản Azure của bạn.
- Triển khai lên Azure
- Quay lại Pipelines và cấu hình pipeline của bạn.
- Trong pipeline, thêm một task để triển khai lên Azure.
- Chỉ định nhóm tài nguyên và chi tiết dịch vụ. Ví dụ Task YAML:
# Define the task for deploying to an Azure Web App
- task: AzureWebApp@1
inputs:
# Specify your Azure subscription service connection
azureSubscription: 'Your-Service-Connection'
# Specify the name of your web app
appName: 'Your-Web-App'
Hãy tách phần trên thành từng phần:
- Thay
Your-Service-Connectionbằng tên kết nối dịch vụ có quyền truy cập thuê bao Azure của bạn. - Thay
Your-Web-Appbằng tên thực tế của web app trong Azure.
Theo kinh nghiệm của tôi, kết nối này giúp triển khai trở nên đơn giản, cho phép bạn tập trung chủ yếu vào việc xây dựng phần mềm xuất sắc.
Giám Sát và Báo Cáo trong Azure DevOps
Giám sát và báo cáo là các quy trình then chốt để duy trì sức khỏe dự án trong Azure DevOps. Hãy tìm hiểu cách thực hiện hiệu quả.
Xem chỉ số pipeline
Các chỉ số pipeline cho biết hiệu suất build và triển khai. Cách truy cập như sau.
- Theo dõi sức khỏe pipeline
- Đi tới Pipelines > Analytics.
- Xem các chỉ số như tỷ lệ pass pipeline, tỷ lệ pass kiểm thử và thời lượng pipeline.

- Xác định nút nghẽn
- Để tìm giai đoạn lỗi và build chậm, dùng báo cáo Pipeline Runs report.

-
- Đi tới Organization Settings > Pipelines > Parallel jobs trong Azure DevOps để dùng các job song song nhằm cải thiện hiệu suất và tối ưu tác vụ.

Theo kinh nghiệm của tôi, cache phụ thuộc, tách nhỏ job và tối ưu cấu trúc pipeline có thể giảm đáng kể thời gian build và tỷ lệ lỗi.
Sử dụng báo cáo Azure DevOps
Azure DevOps cung cấp công cụ báo cáo mạnh mẽ để theo dõi năng suất nhóm và tiến độ dự án.
- Truy cập báo cáo
- Đi tới Analytics > Reports.
- Chọn từ các báo cáo dựng sẵn như Cumulative Flow Diagram, Velocity hoặc Burndown.

- Tùy chỉnh báo cáo
- Dùng Power BI để tạo dashboard tùy chỉnh. Để làm điều này, dùng Power BI Data Connector, đi tới Power BI Online và đăng nhập vào tài khoản của bạn.
- Nhấp biểu tượng Home ở góc trên trái, rồi chọn Get Data trên ribbon.
- Bạn sẽ thấy danh sách nguồn dữ liệu trong cửa sổ Get Data. Chọn Online Services > Azure DevOps (Boards only) làm bộ kết nối dữ liệu.

- Nhập chi tiết tài khoản của bạn, như tên Organization và Team project names, để đồng bộ dữ liệu.

- Xuất dữ liệu để phân tích thêm.
Theo kinh nghiệm của tôi, bạn có thể đưa ra quyết định dựa trên dữ liệu với các báo cáo phân tích này, chúng mang lại insight thực tiễn.
Các Thực Tiễn Tốt Nhất cho Azure DevOps
Giờ chúng ta đã tìm hiểu về các dịch vụ cốt lõi của Azure DevOps và nhiều nội dung khác, hãy xem cách khai thác tối đa Azure DevOps bằng cách tuân theo các thực tiễn tốt nhất này.
Thực tiễn tốt nhất cho quản lý phiên bản
- Dùng chiến lược nhánh
- Áp dụng Git Flow hoặc GitHub Flow cho branching.
- Luôn giữ nhánh
mainổn định và dùng nhánh tính năng cho phát triển. - Viết thông điệp commit rõ ràng
- Dùng định dạng:
type(scope): description(ví dụ,feat(login): add user authentication). - Rà soát pull request
- Yêu cầu ít nhất một người review trước khi merge pull request.
- Dùng bình luận để đề xuất cải tiến.
Thực hành quản lý phiên bản tốt giúp mã nguồn sạch và tái sử dụng được.
Tối ưu hóa pipeline
- Dùng Cache Dependencies: Tải lại lặp đi lặp lại các phụ thuộc có thể lãng phí thời gian đáng kể khi làm việc với trình quản lý gói. Azure DevOps hỗ trợ cơ chế cache, như Cache task, cho phép bạn cache các phụ thuộc giữa các lần chạy pipeline.
Ví dụ YAML cho cache task:
# Define the cache task
- task: Cache@2
inputs:
# Set the cache key using npm, the OS, and package-lock.json
key: 'npm | "$(Agent.OS)" | package-lock.json'
# Specify the path to the node_modules directory
path: 'node_modules'
- Tách job: Chia nhỏ các job lớn thành tác vụ nhỏ hơn, chạy song song. Với khối lượng công việc lớn, tách thành các tác vụ riêng sẽ cho phép thực thi đồng thời, tăng tốc toàn bộ quy trình.
Ví dụ YAML cho jobs:
jobs:
# Define the first build job
- job: BuildJob1
displayName: 'Build Job 1'
pool:
vmImage: 'ubuntu-latest'
steps:
# Add a script step to print a message for Building Project A
- script: echo "Building Project A"
displayName: 'Build Project A'
# Define the second build job
- job: BuildJob2
displayName: 'Build Job 2'
pool:
vmImage: 'ubuntu-latest'
steps:
# Add a script step to print a message for Building Project B
- script: echo "Building Project B"
displayName: 'Build Project B'
# Define the test job
- job: TestJob
displayName: 'Run Tests'
# Specify that this job depends on the completion of BuildJob1 and BuildJob2
dependsOn:
- BuildJob1
- BuildJob2
pool:
vmImage: 'ubuntu-latest'
steps:
# Add a script step to print a message for Running Tests
- script: echo "Running Tests"
displayName: 'Run Tests'
- Dùng template: Tạo template pipeline có thể tái sử dụng cho các tác vụ thường gặp. Làm vậy, bạn không phải viết lại cùng một đoạn mã nhiều lần. Hãy tạo một template đơn giản cho tác vụ build:
Ví dụ YAML cho template:
# Define parameters for the pipeline
parameters:
# Specify a parameter for the build configuration
- name: buildConfiguration
type: string
default: 'Release'
# List the steps for the pipeline
steps:
# Add a task to run the .NET Core CLI
- task: DotNetCoreCLI@2
inputs:
# Set the command to 'build'
command: 'build'
# Pass the build configuration as an argument
arguments: '--configuration $(buildConfiguration)'
Tôi nhận thấy tối ưu pipeline luôn mang lại lợi ích về thời gian và tài nguyên.
Quản lý bí mật và bảo mật
- Dùng Azure Key Vault: Lưu trữ thông tin nhạy cảm như API key trong Azure Key Vault. Để làm việc này, vào Azure Portal, tạo Key Vault mới và thêm bí mật của bạn (ví dụ, API key).


- Go back to Azure DevOps and create a service connection to your Azure subscription so your pipeline can access the Key Vault.

- Go to Pipelines > Library in Azure DevOps and create a new variable group.

- Link the variable group to your Key Vault to automatically fetch the secrets.
- Reference secrets in your pipelines using variable groups. Example YAML:
# azure-pipelines.yml
trigger:
- main
variables:
- group: my-variable-group # Reference the variable group that links to the Key Vault
jobs:
- job: BuildJob
pool:
vmImage: 'ubuntu-latest'
steps:
- script: echo "Using secret from Key Vault."
env:
MY_API_KEY: $(my-secret) # Reference the secret from the variable group
displayName: 'Print Secret'
From the example above: The my-variable-group variable group is referenced, which contains secrets from the Key Vault. The script step echoes a message, using the variable group's secret $(my-secret) as an environment variable.
- Restrict Permissions
- Always remember to limit access to pipelines and repositories based on roles.
One essential practice in modern software development is Security. Security is non-negotiable and can’t be compromised because of the consequences at stake.
Conclusion
This tutorial taught us how to set up an Azure DevOps environment, use Azure Repos for version control, create and manage CI/CD pipelines, track and manage work items with Azure Boards, integrate Azure DevOps with other tools, best practices for Azure DevOps, and more.
Consistency is the secret to success. Review your processes frequently, get feedback, and make adjustments. Mastering these can unlock your full potential as a data professional in software development. Explore Azure DevOps, try out these tools, and see how much more productive your team is.
To dive deeper into Microsoft Azure, check out the following courses:
- Understanding Microsoft Azure – Build a strong foundation in Microsoft Azure and unlock the power of cloud computing.
- Microsoft Azure Fundamentals (AZ-900) – Get exam-ready with this beginner-friendly track covering all key Azure fundamentals.
- Understanding Microsoft Azure Architecture and Services – Learn how Azure’s architecture and services work together to power cloud solutions.
Emmanuel Akor là Kỹ sư Cloud & DevOps, thành thạo trong việc tận dụng các công nghệ đám mây và công cụ DevOps để thúc đẩy những dự án tạo tác động. Là cử nhân loại Xuất sắc ngành Khoa học Máy tính từ Đại học Babcock và từng là Đồng Trưởng nhóm Mảng Đám mây tại GDSC, Emmanuel kết hợp nền tảng học thuật vững chắc với kinh nghiệm thực tiễn. Với vai trò Biên tập viên Nội dung Kỹ thuật, anh xuất sắc trong việc chia sẻ kiến thức và hợp tác cùng các đội ngũ.
