Bằng cách tận dụng sức mạnh của các sự kiện hậu xây dựng và một kịch bản lệnh đơn giản, bạn có thể dễ dàng thêm khả năng để Visual Studio tự động tạo bản sao lưu mã nguồn cho mỗi bản dựng mã phát hành.
Làm thế nào nó hoạt động
Giải pháp của chúng tôi rất đơn giản: bất cứ khi nào một sự kiện xây dựng thành công xảy ra, chúng tôi có một tập lệnh batch chạy để tạo một kho lưu trữ nén (tùy chọn được gắn thẻ và dấu thời gian) của tất cả các tệp trong thư mục dự án Visual Studio tương ứng.
Đó là nó. Tất cả những gì bạn phải làm là làm theo các bước dưới đây.
Thiết lập sao lưu tự động xây dựng
Trước tiên, bạn sẽ cần tải xuống và trích xuất tệp tập lệnh batch từ liên kết ở cuối bài viết. Ngoài ra, bạn sẽ cần công cụ dòng lệnh 7-Zip (được bao gồm với phiên bản ‘đầy đủ’ của tập lệnh Dự án xây dựng dự phòng hoặc bạn có thể tải xuống riêng biệt). Trong ví dụ của chúng tôi, chúng tôi trích xuất các tệp này vào thư mục “C: Tools”, nhưng bất kỳ vị trí nào cũng sẽ hoạt động.
Mở thuộc tính Visual Studio Project của bạn, bằng cách nhấp đúp vào My Project trong dự án tương ứng.
IF “$(ConfigurationName)” == “Release” CALL C:ToolsProjectBuildBackup.bat “$(SolutionDir)” “$(ProjectDir)” “$(ProjectName)” /T “$(ConfigurationName)” /D /7z
Sử dụng nút Macro, bạn có thể có thông tin cụ thể về dự án của Visual Studio, vì vậy không cần phải có mã hóa cứng. Bạn có thể điều chỉnh lệnh này khi cần thiết (đặc biệt là vị trí của tệp lô), nhưng ba thông số đầu tiên có thể sẽ không cần phải thay đổi.
Điều quan trọng cần lưu ý là các hoạt động hậu sự kiện chạy bất kể cấu hình dự án được chọn. Đây là lý do tại sao chúng ta cần thêm câu lệnh IF “$ (ConfigurationName)” == “Release” - nếu không hành động sao lưu sẽ xảy ra mỗi sự kiện xây dựng thành công.
Lưu ý rằng trong khi lệnh "CALL" không được yêu cầu về mặt kỹ thuật, nó rất được khuyến khích, như thể điều này bị bỏ qua thì bất kỳ sự kiện nào được thêm vào sau này có thể không thực thi.
Không thay thế cho hệ thống điều khiển phiên bản đầy đủ
Cuối cùng, chúng tôi chỉ muốn nhắc lại rằng công cụ này không có ý định thay thế một hệ thống điều khiển phiên bản đầy đủ. Nó chỉ đơn giản là một công cụ hữu ích cho các nhà phát triển để tạo ảnh chụp nhanh của mã nguồn dự án của họ sau mỗi lần biên dịch.
Trong trường hợp bạn phải quay trở lại và kiểm tra một phiên bản trước, có một tập tin dự án sẵn sàng để sử dụng (chỉ cần giải nén vào một thư mục mới) cho một thời điểm biên dịch có thể thực sự có ích.
Liên kết
Tải xuống dự án kịch bản sao lưu dự án
Tải xuống Công cụ Dòng lệnh 7-Zip (Lưu ý - tiện ích 7za cũng đi kèm với bản tải xuống từ tập lệnh Dự án Xây dựng Dự phòng)