Unity版本管理从svn换成git的踩的坑汇总

本文总结了将Unity项目从svn切换到git过程中遇到的主要问题,包括git无法合并二进制文件冲突、无法上传空文件夹及对应的解决办法。同时对比了svn与git的操作差异,并提供了部分常用git指令。
摘要由CSDN通过智能技术生成

由于项目的需要,被要求全部换成git。但是对于用了10多年的svn突然要求换git,真的不想换,svn挺好的。而且unity那么多大文件git能搞定吗?没法,领导发话了就得换,不换svn就换我。。。好吧,我现在我把踩的坑汇个总。所以此文章会持续更新:
遇到第一个坑就是git不能合并冲突的二进制码、比如unity里面的*.assets、第三方静态库、和luajit等等。但是这个其实无所谓,不能解决冲突就暴力的用我的或者用他们的,这个不存在。不过unity有个地方可以设置unity自带文件文本非二进制,如图所示:
在这里插入图片描述
在一些高版本unity里面这些都是默认设置,低版本的unity需要注意一下。好像svn也不能解决二进制冲突?不过不管了
再说第二个坑,我不晓得这是坑还是BUG,那就是git不能上传空文件夹,不晓得是我没设置好还是git本身就不支持。大家都知道unity就算你建个空文件夹,会对应在目录下生成一个*.meta文件。于是乎,这个空文件夹上传不了,这个*.meta却上传了。别人拉到版本就是没有拉到此空文件夹,在unity情况下,会把这个*.meta文件删除,然后就悲剧了。解决方案就是要么空文件夹放个东西,要么就忽略*.meta文件。有人会问,为什么项目里会有空文件夹,因为项目初期,预定一些文件夹放一些资源,只是这些资源美术还没有上传。或者开发者和打包者对文件的管理需求也是不一样的,这就是为什么项目里会有空文件夹。
… …
目前就遇到这么多坑,我会持续更新,还

1. 忽略不必要的文件和文件夹 在上传Unity项目到Git时,需要忽略不必要的文件和文件夹,例如Library、Temp、Builds等。这些文件和文件夹会频繁变化,但对项目本身并没有太大的作用,因此忽略它们可以减小Git仓库的大小,并提高上传、下载的速度。 2. 大文件上传限制 Git有一个默认的文件大小限制,通常为100MB。如果Unity项目中有超过100MB的文件,上传会失败。解决方法是使用Git LFS(Large File Storage)插件,将大文件存储在LFS服务器上,然后在Git仓库中只保存文件的指针。 3. 地址大小写敏感 Git在Windows系统中是大小写不敏感的,而Unity项目在Mac或Linux系统中是大小写敏感的。这意味着,如果在Windows系统中提交了一个文件名为“Assets/Scripts/PlayerController.cs”,在Mac或Linux系统中可能会出现“Assets/scripts/PlayerController.cs”的情况。为了避免这种情况,最好在所有系统中都使用相同的文件名。 4. 版本冲突 在多人协作开发时,可能会出现版本冲突的情况。例如,两个人同时修改了同一个文件,并提交到了Git仓库中。此时,Git无法自动合并两个版本,需要手动解决冲突。为了避免这种情况,可以使用分支管理功能,每个人在自己的分支中修改代码,然后再合并到主分支上。 5. 不要在Git仓库中保存敏感信息 Git仓库是公开的,不要在其中保存敏感信息,例如密码、密钥等。如果必须保存这些信息,可以使用Git的加密功能或者将它们保存在另外一个安全的地方。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值