.Sln / .csproj có hữu ích cho việc chia sẻ dự án Unity không?


13

Chúng tôi đang gặp một số vấn đề với GIT và Unity. Nó xảy ra khá thường xuyên khi tệp .sln / .csproj gây cho chúng tôi một số rắc rối, vì vậy sau khi tìm kiếm một lúc trên web tôi thấy rằng có thể các tệp này không cần thiết phải đẩy. Ai đó có bất kỳ thông tin phản hồi cho điều này? https://gist.github.com/hw/1234398 Ví dụ, có bao gồm trong .gitignore, nhưng tôi thực sự không biết loại tệp này làm gì.

Tôi có thể loại trừ họ khỏi repo của tôi hoặc tệp này có liên quan đến một số tài liệu tham khảo trong trò chơi của tôi không?

Câu trả lời:


21

Từ kinh nghiệm cá nhân của tôi, tôi nhận thấy tốt hơn là loại trừ * .csproj và * .sln khỏi kiểm soát nguồn: Unity tạo các tệp này mỗi khi bạn mở một dự án hoặc thêm / xóa các tệp nguồn, vì vậy bạn sẽ không bỏ lỡ chúng. Bạn cũng có thể thực hiện thủ công thông qua mục menu "Sync MonoDevelop Project".

Điều đặc biệt hữu ích là loại trừ chúng nếu có nhiều hơn một nhà phát triển trong dự án, bởi vì nội dung được tạo tự động của các tệp này có thể khác nhau đối với mỗi người dùng (điều này phụ thuộc vào đường dẫn cài đặt Unity và có thể một số yếu tố khác), có thể gây ra rất nhiều thay đổi tập tin không cần thiết cam kết với kho lưu trữ.


4
Bạn cũng nên loại trừ toàn bộ Thư viện / thư mục.
michael.bartnett

Bạn đã quên viết rằng nó chỉ hoạt động với MonoDevelop và VS 20xx. Điều này là hoàn toàn sai bởi vì sử dụng vscode hoặc rider unity sẽ không tạo bất kỳ tệp nào ngay cả khi bạn thêm tập lệnh c # mới hoặc khởi động lại sự thống nhất
Herrgott

2

Tôi không bao giờ kiểm tra trong .sln hoặc csproj. Tôi chỉ kiểm tra trong dự án thống nhất thực sự. Hãy để unity quản lý các tập tin giải pháp cho bạn. Nó có thể là một vấn đề đau đầu nếu một số người quên chỉ kiểm tra một trong số .csproj từ thư mục biên tập hoặc một cái gì đó. Vì vậy, nếu một lập trình viên mới vào, họ kiểm tra repo và nhấp đúp vào tệp có sự phát triển hoặc vs.

Tôi cũng đảm bảo bỏ qua Scn trên tất cả các tệp đó, vì vậy nghệ sĩ không kiểm tra chúng một cách tình cờ với lol


Điều gì xảy ra nếu lập trình viên mới không sử dụng đơn vị phát triển này và không thể sử dụng so với vì anh ta đang sử dụng linux?
Herrgott

0

Bạn có thể loại trừ các tệp đó một cách an toàn vì chúng được Mono tạo lại tự động. Mã bên trong các tệp đó chỉ được đọc từ các tệp đang mở, ví dụ, các tệp DLL được bảo vệ của plugin trả phí.

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.