Thực tiễn tốt nhất để kiểm soát phiên bản trong Unity?


11

Tôi hơi bối rối khi sử dụng kiểm soát phiên bản với Unity, đặc biệt là với các đối tượng như cảnh hoặc prefab không chỉ là mã.

Gần đây chúng tôi có một vấn đề khi đồng nghiệp của tôi và tôi đang làm việc trên các phần khác nhau của cùng một cảnh. dẫn đến xung đột, phân nhánh và sáp nhập galore.

Cuối cùng, bản sửa đổi của tôi đã bị thay đổi bởi những thay đổi của anh ấy.

Cách duy nhất tôi thấy vào lúc này là chúng tôi thay phiên nhau làm việc trên cùng một đối tượng, nhưng có vẻ không thuận tiện lắm, đặc biệt là vì tất cả công việc chúng tôi hiện đang làm là trong các cảnh.

Mọi người thường làm gì trong những tình huống này?

(Chúng tôi đang sử dụng Mercurial, BitBucket và SourceTree.)


1
Ơ Quan tâm để nhận xét lý do tại sao tôi bị đánh giá thấp hơn 5 phút sau khi hỏi? Tôi không thể làm cho câu hỏi tốt hơn nếu tôi không biết điều gì sai với nó.
Kaworu

2
Tôi cũng đã gặp phải điều này. Bạn có thể đặt các kịch bản không có vấn đề, nhưng các cảnh vv có vẻ khó hơn
Ewan

1
Có phải các tệp cảnh này là các tệp văn bản khó hợp nhất hoặc chúng là các tệp nhị phân ít hơn không thể? Nếu chúng là nhị phân, Unity dường như cung cấp các công cụ hợp nhất (và có thể khác?) Cho điều đó .
Nathan Cooper

@NathanCooper Họ là những người nhị phân theo như tôi có thể nói. Ít nhất là chúng hoạt động giống như nhị phân, và mở chúng trong trình soạn thảo văn bản mang lại cho tôi tải mumbo-jumbo giống như bất kỳ tệp được biên dịch nào khác. Tôi không biết về Hợp nhất thông minh. Cảm ơn!
Kaworu

Câu trả lời:


6

Bạn có thể thử giải pháp sau nếu bạn đang sử dụng GitHub.

  1. Trong sự thống nhất mở Chỉnh sửa-> Cài đặt dự án -> Trình chỉnh sửa, sau đó trong Thanh tra cài đặt dự án.
  2. Thay đổi "Chế độ kiểm soát phiên bản" thành "Tệp meta hiển thị".
  3. Thay đổi "Chế độ tuần tự hóa tài sản" thành "Buộc văn bản".

Cái này làm việc tốt cho tôi.


3

Hầu hết các hệ thống kiểm soát phiên bản (VCS) được thiết kế cho văn bản. Chúng thường có các tính năng rất mạnh mẽ và thuận tiện để so sánh ( diff) và hợp nhất mã nguồn, và một số công cụ thậm chí có thể tự động hợp nhất các thay đổi (và thực hiện công việc tốt để đoán cách thay đổi nên được hợp nhất và tại thời điểm nào nhà phát triển nên được mời hợp nhất thủ công).

Thật tuyệt vời khi có sự hỗ trợ tốt hơn cho việc diffhợp nhất và hợp nhất các tệp nhị phân từ các ứng dụng tương ứng sử dụng các tệp đó. Chẳng hạn, Microsoft Word cho phép so sánh hai tài liệu và trong khi nó không phải là một công cụ hợp nhất thuận tiện, nó vẫn tốt hơn không có gì và giúp tôi tiết kiệm hàng giờ trong nhiều lần. Thật không may, tính năng hợp nhất thường được giám sát trong các sản phẩm phần mềm hoặc khó thực hiện (làm thế nào để bạn hình dung ra diffmột cảnh 3D?)

Khi nói đến các tệp nhị phân, bạn nhận được ít sự trợ giúp từ VCS. Họ không chỉ không thể lưu trữ các thay đổi liên tiếp một cách hiệu quả mà còn không thể giúp bạn hợp nhất các thay đổi.

Hai năm trước, tôi đã hỏi một câu hỏi tương tự liên quan đến việc sử dụng kiểm soát phiên bản trong phần mềm chỉnh sửa video . Tôi tin rằng các câu trả lời cho câu hỏi của tôi cũng được áp dụng một phần ở đây, sự khác biệt duy nhất (nhưng quan trọng) là câu hỏi của tôi liên quan đến các tệp lớn, trong khi trong trường hợp của bạn, các tệp nhị phân có thể tương đối nhỏ.

Cách tiếp cận mà bạn tìm thấy, đó là những người thay phiên nhau làm việc trên cùng một đối tượng, là phương pháp tốt. Nếu bạn không thể hợp nhất, đừng làm việc song song trên cùng một thứ. Nếu bạn làm việc trong cùng một văn phòng, nó có thể dễ dàng thực hiện. Nếu không, hầu hết các hệ thống kiểm soát phiên bản ( bao gồm cả hệ thống bạn sử dụng ; nó cũng được thảo luận ở đây trong bối cảnh BitBucket) hỗ trợ khóa , bao gồm người dùng của một VCS để thông báo, thông qua hệ thống, rằng anh ta đang làm việc trên một tệp đã cho hiện nay; những người dùng khác có thể tải phiên bản mới nhất của tệp, nhưng họ không muốn thay đổi nó.

Khi sử dụng trang web của chúng tôi, bạn xác nhận rằng bạn đã đọc và hiểu Chính sách cookieChính sách bảo mật của chúng tôi.
Licensed under cc by-sa 3.0 with attribution required.