Làm thế nào để tự động tạo bản sao lưu xây dựng trong Visual Studio

Mục lục:

Làm thế nào để tự động tạo bản sao lưu xây dựng trong Visual Studio
Làm thế nào để tự động tạo bản sao lưu xây dựng trong Visual Studio

Video: Làm thế nào để tự động tạo bản sao lưu xây dựng trong Visual Studio

Video: Làm thế nào để tự động tạo bản sao lưu xây dựng trong Visual Studio
Video: Mua Tên Miền & Trỏ Tên Miền về IP Server | Học lập trình web tại F8 - YouTube 2024, Tháng tư
Anonim
Nếu bạn là một nhóm phát triển một người, có thể bạn không thực sự cần một hệ thống điều khiển phiên bản đầy đủ, nhưng việc tạo bản sao lưu mã nguồn cho mỗi phiên bản được phát hành chắc chắn là quan trọng.
Nếu bạn là một nhóm phát triển một người, có thể bạn không thực sự cần một hệ thống điều khiển phiên bản đầy đủ, nhưng việc tạo bản sao lưu mã nguồn cho mỗi phiên bản được phát hành chắc chắn là quan trọng.

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.

Trong các thuộc tính của dự án, đi tới phần Biên dịch.
Trong các thuộc tính của dự án, đi tới phần Biên dịch.
Ở góc dưới cùng bên phải, nhấp vào nút Xây dựng sự kiện.
Ở góc dưới cùng bên phải, nhấp vào nút Xây dựng sự kiện.
Trong trường hợp của chúng tôi, chúng tôi muốn tạo một bản sao lưu sau một hành động biên dịch thành công. Đảm bảo bạn có tùy chọn để chạy sự kiện sau khi xây dựng “Khi xây dựng thành công” và sau đó nhấp vào nút Chỉnh sửa bài đăng.
Trong trường hợp của chúng tôi, chúng tôi muốn tạo một bản sao lưu sau một hành động biên dịch thành công. Đảm bảo bạn có tùy chọn để chạy sự kiện sau khi xây dựng “Khi xây dựng thành công” và sau đó nhấp vào nút Chỉnh sửa bài đăng.
Lệnh dưới đây chỉ tạo bản sao lưu xây dựng để biên dịch cấu hình Phát hành (đây là điều IF kiểm tra), thực tế, có thể chúng tôi không muốn sao lưu từng bản dựng Gỡ lỗi / thử nghiệm. Ngoài ra, dấu thời gian hiện tại sẽ được nối thêm (/ D chuyển đổi) với tệp sao lưu ở định dạng tệp 7z (/ 7z) ngược với zip. Bằng cách thêm / T “$ (ConfigurationName)” làm tham số, chúng tôi sẽ thêm kiểu xây dựng (Phát hành trong trường hợp này) vào tên của tệp sao lưu.
Lệnh dưới đây chỉ tạo bản sao lưu xây dựng để biên dịch cấu hình Phát hành (đây là điều IF kiểm tra), thực tế, có thể chúng tôi không muốn sao lưu từng bản dựng Gỡ lỗi / thử nghiệm. Ngoài ra, dấu thời gian hiện tại sẽ được nối thêm (/ D chuyển đổi) với tệp sao lưu ở định dạng tệp 7z (/ 7z) ngược với zip. Bằng cách thêm / T “$ (ConfigurationName)” làm tham số, chúng tôi sẽ thêm kiểu xây dựng (Phát hành trong trường hợp này) vào tên của tệp sao lưu.

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.

Khi bạn hoàn thành lệnh và áp dụng nó, chuỗi lệnh sẽ xuất hiện trong phần Sự kiện sau khi tạo dựng.
Khi bạn hoàn thành lệnh và áp dụng nó, chuỗi lệnh sẽ xuất hiện trong phần Sự kiện sau khi tạo dự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.

Bây giờ bất cứ khi nào bạn chạy một biên dịch / xây dựng với dự án của bạn trong cấu hình phát hành, bạn sẽ thấy đầu ra từ hoạt động sao lưu xây dựng.
Bây giờ bất cứ khi nào bạn chạy một biên dịch / xây dựng với dự án của bạn trong cấu hình phát hành, bạn sẽ thấy đầu ra từ hoạt động sao lưu xây dựng.
[…]
[…]
Mỗi phiên bản phát hành thành công tạo ra một kho lưu trữ thời gian mới với thư mục giải pháp trong thư mục con, "Bản dựng" (có thể được định nghĩa tùy chỉnh bằng nút chuyển / O nếu cần).
Mỗi phiên bản phát hành thành công tạo ra một kho lưu trữ thời gian mới với thư mục giải pháp trong thư mục con, "Bản dựng" (có thể được định nghĩa tùy chỉnh bằng nút chuyển / O nếu cần).
Nội dung của mỗi bản sao lưu là toàn bộ dự án Visual Studio - các tệp nguồn, cài đặt cấu hình, các tệp nhị phân được biên dịch và tất cả - điều này làm cho điểm này trở thành điểm đúng trong thời gian sao lưu.
Nội dung của mỗi bản sao lưu là toàn bộ dự án Visual Studio - các tệp nguồn, cài đặt cấu hình, các tệp nhị phân được biên dịch và tất cả - điều này làm cho điểm này trở thành điểm đúng trong thời gian sao lưu.
Image
Image

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)

Đề xuất: