公司代码模块标准化方案
公司代码模块标准化方案:1.源码gitlab管理2.dependencies管理模块间相互依赖3.工具git tag按版本发布4.工具通过Unity PackageManage引入Unity使用常用命令:创建或更新upm分支git subtree split --prefix=Assets/packageName --branch upm打taggit tag 1.1.3 upm推送taggit
公司代码模块标准化方案:
1.源码gitlab管理
2.dependencies管理模块间相互依赖
3.工具git tag按版本发布
4.工具通过Unity PackageManage引入Unity使用
常用命令:
创建或更新upm分支
git subtree split --prefix=Assets/packageName --branch upm
打tag
git tag 1.1.3 upm
推送tag
git push gitlab upm --tags
引入Unity
"dependencies": {
"unity.eamon.packageName": "http://0.0.0.0/diyplugins/packageName.git#1.1.3"
}
案例在已有工程中分离出特定模块并上传
首先配置好unity包的信息并保存提交到git,
目录规则
最好更改目录后在Runtime与Editor文件夹下右键创建AssemblyDefinition自定义程序集文件。
Editor 文件夹下的 AssemblyDefinition 中 Platform 只能选择 Editor,并且 Reference 必须添加上 Runtime 中的那个 AssemblyDefiniion,dependencies里添加依赖,AssemblyDefinition里也要相应添加。
最主要是修改Project manifests,文件名:package.json。官方文档链接
package.json example:
name要求小写
{
"name": "com.unity.example",
"version": "1.2.3",
"displayName": "Package Example",
"description": "This is an example package",
"unity": "2019.1",
"unityRelease": "0b5",
"dependencies": {
"com.unity.some-package": "1.0.0",
"com.unity.other-package": "2.0.0"
},
"keywords": [
"keyword1",
"keyword2",
"keyword3"
],
"author": {
"name": "Unity",
"email": "unity@example.com",
"url": "https://www.unity3d.com"
}
}
然后就是命令行了:
cd existing_repo
git remote add asyncawait http://192.168.0.0/modifiedplugins/asyncawait.git
git subtree split --prefix=Assets/Tools/AsyncAwait --branch upmAsyncawait
git tag 0.2.0e upmAsyncawait
git push asyncawait upmAsyncawait --tags
然后就可以引入新工程使用了。
修正
0.2.0e的版本号不符合semver命名要求,所以报错,修改后package.json后重新提交:
cd existing_repo
git add .
git commit asyncawait0.2.1
git subtree split --prefix=Assets/Tools/AsyncAwait --branch upmAsyncawait
git tag -d 0.2.0e
git tag 0.2.1 upmAsyncawait
git push asyncawait upmAsyncawait --tags
然后在unity2019+的package manager里点"+"=>“add package from git URL”=>“http://192.168.0.0/modifiedplugins/asyncawait.git”=>“add”
就可以使用了
最后附上一个教程Git Tag 删除
Enjoy!
开放原子开发者工作坊旨在鼓励更多人参与开源活动,与志同道合的开发者们相互交流开发经验、分享开发心得、获取前沿技术趋势。工作坊有多种形式的开发者活动,如meetup、训练营等,主打技术交流,干货满满,真诚地邀请各位开发者共同参与!
更多推荐
所有评论(0)