Jenis file apa yang harus saya kecualikan dari repositori kontrol sumber game saya?

11

Saya sudah mulai mengerjakan proyek pribadi menggunakan Unity dengan seorang teman dan kami telah menyiapkan sistem kendali sumber kami sendiri.

Saya menyadari fakta bahwa ada banyak jenis file, yaitu yang dihasilkan secara lokal ketika Anda membangun (misalnya, file Visual Studio) dan yang khusus untuk mesin khusus Anda yang tidak boleh ditambahkan ke kontrol sumber, tetapi Saya tidak yakin apa jenis file ini.

Saya tidak ingin mengecualikan file yang dihasilkan yang harus saya sertakan, seperti file .meta.

Apakah seseorang dapat membuat daftar semua, atau setidaknya semua jenis file umum yang tidak boleh ditambahkan ke kontrol versi, khususnya untuk proyek Unity?

SirYakalot
sumber

Jawaban:

9

Dengan versi Unity saat ini, cukup periksa apa saja di folder Aset dan folder ProjectSettings. Jangan memeriksa apa pun di bawah Perpustakaan, atau di tingkat atas.

Tetrad
sumber
8

Referensi yang bagus untuk daftar semacam ini adalah templat gitignore GitHub . Daftar khusus Persatuan ada di sini .

Dan jika Anda merasa ada sesuatu yang hilang, buat permintaan tarik!

Laurent Couvidou
sumber
5

Jenis file kurang penting dari tujuan dan asal file; seperti yang Anda katakan, apa pun yang dapat dihasilkan dari file sumber di bawah kontrol versi (biasanya) tidak memiliki bisnis yang dimasukkan dalam repositori itu sendiri.

Demikian pula, apa pun yang khusus pengguna, seperti pengaturan atau file konfigurasi, harus dikecualikan.

Lebih dari itu, itu terserah Anda dan proyek Anda.


sumber
2
Saya kira apa yang saya minta benar-benar, adalah daftar pendek file mana dalam proyek kesatuan standar ADALAH file yang dihasilkan atau spesifik pengguna. Terlepas dari file yang saya buat secara manual, saya cukup bodoh untuk melakukan apa dan berasal dari mana.
SirYakalot
Saya melihat. Saya mengedit pertanyaan Anda untuk mengklarifikasi bahwa, karena bit Unity telah dihapus pada saat saya melihatnya (atau saya hanya melewatkannya).
3

Anda dapat melihat proyek Unity saya, Radius , di GitHub sebagai contoh. Atau checkout Unity.gitignorefile di repo gitignore resmi GitHub.

Ada juga panduan bagus oleh Damien Mayance di situs webnya tentang proyek Git dan Unity

Pastikan Anda memeriksa .metafile Anda karena inilah yang digunakan Unity untuk mereferensikan setiap aset. Anda dapat membuat mereka unhidden di OS Anda dengan pergi ke Edit->Project Settings->Editordan mengubah Version Controlke Visible Meta Files.

Jika Anda menyimpan proyek kesatuan Anda di folder bernama UnityProjectName, inilah tampilan .gitignore Anda. Jika Anda hanya memiliki folder proyek Persatuan sebagai root dari repo GitHub, cukup hapus UnityProjectName/dari setiap jalur di bawah ini.

.gitignore

# Ignore unneeded Unity files
# --------------------------------------------------
UnityProjectName/Temp/
UnityProjectName/obj/
UnityProjectName/Library/

UnityProjectName/*.csproj
UnityProjectName/*.unityproj
UnityProjectName/*.sln

# Ignore Custom Builds
# --------------------------------------------------
UnityProjectName/[Bb]uilds/
MLM
sumber
1

Saya tidak tahu tentang persatuan tetapi Anda menyebutkan studio visual. Di sana Anda biasanya dapat mengecualikan folder bin dan obj di folder proyek (dalam beberapa jenis proyek, folder bin juga menyimpan rakitan dari proyek yang disertakan, tapi saya pikir ini hanya berlaku untuk jenis proyek web tertentu).

Juga jangan memeriksa file " .csproj.user" dan " .suo". Kedua jenis itu termasuk pengaturan pengguna. Jika Anda memeriksa itu, maka semua pengaturan pengguna akan tercermin pada mesin lain, ketika Anda memperbarui sumbernya. Ini cukup menjengkelkan, karena pengaturan itu tidak membangun atau proyek yang relevan tetapi lebih untuk mengkonfigurasi ui, editor dll untuk setiap kebutuhan individu pengembang.

tom van green
sumber