1. Unity 之 版本控制 使用SVN遇到的問題(檢測不到.meta文件)

    2021-03-11 11:03發布

    Unity 使用SVN版本控制遇到的小問題:

    開發中總會遇到各種小問題,,,問題雖然不大卻費時費力,,,不過還好每次遇到問題都會問前輩或者上網查資料,都能學到很多平常不會出深究的東西,都會明白一些道理,有所收獲,,,下面分享一下,幫各位添過的坑… …


    問題描述:預制體腳本和資源丟失

    遇到這樣個問題:我做好了一個prefab。包含什么圖片按鈕和掛在上面的腳本,上傳prefab和cs文件到SVN,但是別人pull下來project后發現你這個prefab的腳本是missing的。

    這個就很麻煩,別人用不了你得預制體,那么對于多人開發的情況,不管是游戲資源的整合還是資源的使用,,這都是一個不能接受的事情,,, 這個問題原因就在于這就是前面提到的meta文件。Meta文件中有個重要的東西就是guid,guid是文件唯一標示,文件中的關聯關系都是基于guid而不是基于文件名稱和文件路徑的。當一個新文件創建之后,unity會自己主動給它生成一個guid。

    假設沒有上傳meta,所以兩個project的guid不同,則關聯關系自然找不到。

    所以我們也必須把相應的meta文件上傳。當然,假設愿意解析meta文件,然后直接改動guid就是更好的做法了。當然相對的也easy出錯。

    當移動或重命名資源時。確保你也對應的移動或重命名了meta文件。當腳本文件內容發生變化的時候,實際上guid是不會發生變化的。并且unity事實上并不基于文件內容增量變化的版本號管理。而是覆蓋式的。


    解決方法 :

    1、在Uniyt里面, Edit->project settings->editor 里面設置Version Control的Model為Meta Files,表示以meta文件來記錄資源版本。默認為Disabled

    2、設置Asset Serialization的Mode為Force Text,表示以純文本形式保存unity文件。Mixed和Force Binary都是二進制,不利于版本管理。

    在這里插入圖片描述

    3、提交的時候僅提交Assets 和 ProjectSettings 兩個目錄下所有東西,忽略掉其他所有目錄和文件

    (當提交之后,別人更新下來之后用不了,,,你這邊又重新提交,他那邊還是更新不到,可以刪除你最后修改的文件夾,重新更新,)


    我的問題:SVN更新的時候檢測不到.meta文件,沒有上傳,,,所以別人更新下來之后會有上面的問題…

    (不知道為什么就是檢測不到…)

    在這里插入圖片描述

    解決方法
    方法一:點擊下面Non-versioned 不受版本控制的文件選擇一下,,,

    在這里插入圖片描述

    方法二:
    在工程文件下:選中要提交的.meta 右鍵TortoriseSVN -> Add 就可以了,

    在這里插入圖片描述

    在這里插入圖片描述

    這樣再次上傳你的項目…SVN就可以檢測到了,,,

    [PS:上傳預制體,沒有上傳.meta文件,當別人更新下來之后,他的Unity會自動生成.meta文件,當你重新提交到版本庫的時候,他再更新是不會有更新文件顯示的,需要刪除后,再次更新]


    希望有遇到這類問題的童鞋可以評論,分享一下,,,若有不足,敬請指正。。。



    ————————————————

    版權聲明:本文為CSDN博主「妳是我改卟了的bug」的原創文章,遵循CC 4.0 BY-SA版權協議,轉載請附上原文出處鏈接及本聲明。

    原文鏈接:https://blog.csdn.net/Czhenya/article/details/83043688



    日日摸夜夜添夜夜添无码,free性欧美极度另类,超清中文乱码字幕在线观看,真人美女两腿张开露PP图片