Bagi kebanyakan dari kita - terutama yang bekerja pada gim yang lebih kecil - Anda benar-benar harus memiliki aset dalam repositori yang sama dengan sumber Anda .
Saran bahwa aset termasuk dalam repositori terpisah hanya masuk akal untuk set aset yang sangat besar, atau untuk set aset yang agak besar ketika ada batas mesin / data yang jelas. Kecuali ada alasan teknis khusus untuk itu - itu saran yang buruk!
Anda ingin kontrol versi Anda berperilaku seperti kontrol versi . Anda ingin dapat memundurkan dan memajukan serta menggabungkan dan menggabungkan revisi dan masih membuat gim Anda bekerja. Dan kode dan aset Anda akan saling bergantung.
Sebagai contoh: Kode Anda mungkin berharap untuk dapat mengatur parameter pada shader, dan shader itu mungkin tergantung pada tekstur yang ada di sana. Atau mungkin format data level Anda mungkin bergantung pada versi tertentu dari kode permainan Anda.
Ini hampir pasti akan menjadi berantakan. Dan Anda memiliki hal-hal yang lebih baik untuk dilakukan daripada mencoba dan menjaganya tetap rapi.
Sekarang, seperti komentar Mike Wagner ( pada jawaban ini ) - Anda tidak ingin atau membutuhkan semua versi "dalam proses" aset Anda di bawah kontrol versi! Hanya versi final / yang berfungsi, seperti yang digunakan oleh kode Anda, yang akan dilakukan - sering kali inilah yang Anda ekspor dari alat Anda.
(Meskipun jika Anda benar-benar ingin mengontrol versi versi aset yang sedang dalam proses - itu bagus. Dan sangat cocok untuk repositori terpisah. Secara pribadi saya menemukan bahwa organisasi folder yang bagus dan sistem cadangan yang tepat sudah cukup.)
Yang dikatakan - kadang-kadang baik untuk memiliki opsi untuk hanya menempel "dalam proses" aset di bawah kontrol versi. Biasanya ini melibatkan memiliki pipa konten yang dapat menangani langkah-langkah 'ekspor' untuk Anda - misalnya: meratakan gambar multi-layer ke satu tekstur.