Skip to content
体验新版
项目
组织
正在加载...
登录
切换导航
打开侧边栏
魔术师Dix
UPM解决方案:苍耳
提交
116d2052
UPM解决方案:苍耳
项目概览
魔术师Dix
/
UPM解决方案:苍耳
通知
26
Star
3
Fork
1
代码
文件
提交
分支
Tags
贡献者
分支图
Diff
Issue
0
列表
看板
标记
里程碑
合并请求
0
DevOps
流水线
流水线任务
计划
Wiki
2
Wiki
分析
仓库
DevOps
项目成员
Pages
UPM解决方案:苍耳
项目概览
项目概览
详情
发布
仓库
仓库
文件
提交
分支
标签
贡献者
分支图
比较
Issue
0
Issue
0
列表
看板
标记
里程碑
合并请求
0
合并请求
0
Pages
DevOps
DevOps
流水线
流水线任务
计划
分析
分析
仓库分析
DevOps
Wiki
2
Wiki
成员
成员
收起侧边栏
关闭侧边栏
动态
分支图
创建新Issue
流水线任务
提交
Issue看板
前往新版Gitcode,体验更适合开发者的 AI 搜索 >>
提交
116d2052
编写于
12月 29, 2022
作者:
魔术师Dix
浏览文件
操作
浏览文件
下载
电子邮件补丁
差异文件
【UpmGitTool】更新调试显示代码;
上级
7e4f8d92
变更
4
隐藏空白更改
内联
并排
Showing
4 changed file
with
129 addition
and
27 deletion
+129
-27
UpmGitTool/Assets/Scritps/Core/Fetch/DependencyInfo.cs
UpmGitTool/Assets/Scritps/Core/Fetch/DependencyInfo.cs
+4
-1
UpmGitTool/Assets/Scritps/Core/Fetch/UPackage.cs
UpmGitTool/Assets/Scritps/Core/Fetch/UPackage.cs
+69
-23
UpmGitTool/Assets/Scritps/Core/Fetch/UpmPackageVersion.cs
UpmGitTool/Assets/Scritps/Core/Fetch/UpmPackageVersion.cs
+42
-0
UpmGitTool/Assets/Scritps/UI/Controller/UICtrl_PackageItem.cs
...itTool/Assets/Scritps/UI/Controller/UICtrl_PackageItem.cs
+14
-3
未找到文件。
UpmGitTool/Assets/Scritps/Core/Fetch/DependencyInfo.cs
浏览文件 @
116d2052
...
...
@@ -7,6 +7,7 @@
*版本: 1.0
*/
using
Sirenix.OdinInspector
;
using
System
;
using
UnityEngine
;
...
...
@@ -16,12 +17,14 @@ namespace UpmGitTool
/// 包依赖
/// </summary>
[
Serializable
]
public
struct
DependencyInfo
public
struct
DependencyInfo
{
[
HideLabel
,
DisplayAsString
,
VerticalGroup
(
"包名"
)]
[
SerializeField
]
private
string
m_Name
;
[
HideLabel
,
DisplayAsString
,
VerticalGroup
(
"版本"
)]
[
SerializeField
]
private
string
m_Version
;
...
...
UpmGitTool/Assets/Scritps/Core/Fetch/UPackage.cs
浏览文件 @
116d2052
...
...
@@ -7,6 +7,8 @@
*版本: 1.0
*/
using
Sirenix.OdinInspector
;
using
System
;
using
System.Collections.Generic
;
using
System.IO
;
using
UnityEngine
;
...
...
@@ -19,12 +21,62 @@ namespace UpmGitTool
/// </summary>
public
class
UPackage
:
IListViewData
{
#
region
包信息
private
const
float
LabelWidth
=
100
;
[
LabelWidth
(
LabelWidth
)]
[
ShowInInspector
,
DisplayAsString
,
LabelText
(
"包名"
)]
public
string
PackageName
{
get
;
private
set
;
}
[
LabelWidth
(
LabelWidth
)]
[
ShowInInspector
,
DisplayAsString
,
LabelText
(
"Git工程名"
)]
public
string
GitLastName
{
get
;
private
set
;
}
[
LabelWidth
(
LabelWidth
)]
[
ShowInInspector
,
DisplayAsString
,
LabelText
(
"是否是Git包"
)]
public
bool
IsGit
{
get
;
private
set
;
}
/// <summary>
/// 包路径;
/// </summary>
[
LabelWidth
(
LabelWidth
)]
[
ShowInInspector
,
DisplayAsString
,
LabelText
(
"包路径"
)]
public
string
PackageUrl
{
get
;
private
set
;
}
/// <summary>
/// 当前工程是否有已经安装的包;
/// </summary>
[
LabelWidth
(
LabelWidth
)]
[
ShowInInspector
,
DisplayAsString
,
LabelText
(
"已安装"
)]
public
bool
IsInstalled
{
get
;
private
set
;
}
/// <summary>
/// 已安装的包版本号;
/// </summary>
[
LabelWidth
(
LabelWidth
)]
[
ShowInInspector
,
DisplayAsString
,
LabelText
(
"已安装版本"
)]
public
string
InstalledVersionString
{
get
;
private
set
;
}
/// <summary>
/// 已安装包的ID;
/// </summary>
[
LabelWidth
(
LabelWidth
)]
[
ShowInInspector
,
DisplayAsString
,
LabelText
(
"已安装包ID"
)]
public
string
InstallPackageId
{
get
;
private
set
;
}
/// <summary>
/// 是否可以升级
/// </summary>
[
LabelWidth
(
LabelWidth
)]
[
ShowInInspector
,
DisplayAsString
,
LabelText
(
"是否可升级"
)]
public
bool
IsUpgradable
{
get
;
private
set
;
}
[
LabelText
(
"所有版本"
)]
public
List
<
UpmPackageVersion
>
Versions
=
new
List
<
UpmPackageVersion
>();
#
endregion
public
UPackage
(
PackageItem
item
)
{
PackageName
=
item
.
Name
;
...
...
@@ -69,6 +121,7 @@ namespace UpmGitTool
if
(
i
>=
length
)
Versions
.
Add
(
version
);
//排序
Versions
.
Sort
((
a
,
b
)
=>
{
return
a
.
Version
>
b
.
Version
?
-
1
:
1
;
});
//查找当前安装的版本;
RefreshInstalledVersion
();
...
...
@@ -77,19 +130,33 @@ namespace UpmGitTool
/// <summary>
/// 刷新已安装的版本
/// </summary>
[
Button
(
"刷新已安装信息"
)]
private
void
RefreshInstalledVersion
()
{
InstallVersion
=
null
;
if
(!
IsInstalled
)
return
;
if
(
string
.
IsNullOrEmpty
(
InstallPackageId
))
return
;
if
(
Versions
==
null
)
return
;
foreach
(
var
ver
in
Versions
)
{
if
(
ver
.
PackageId
==
InstallPackageId
)
{
InstallVersion
=
ver
;
InstalledVersionString
=
ver
.
VersionString
;
return
;
break
;
}
}
if
(
InstallVersion
==
null
)
return
;
var
installVer
=
InstallVersion
.
Version
;
IsUpgradable
=
false
;
foreach
(
var
ver
in
Versions
)
{
if
(
ver
.
Version
>
installVer
)
{
IsUpgradable
=
true
;
break
;
}
}
}
...
...
@@ -99,28 +166,6 @@ namespace UpmGitTool
/// </summary>
public
UpmPackageVersion
InstallVersion
{
get
;
private
set
;
}
/// <summary>
/// 当前工程是否有已经安装的包;
/// </summary>
public
bool
IsInstalled
{
get
;
private
set
;
}
/// <summary>
/// 已安装的包版本号;
/// </summary>
public
string
InstalledVersionString
{
get
;
private
set
;
}
/// <summary>
/// 包路径;
/// </summary>
public
string
PackageUrl
{
get
;
private
set
;
}
/// <summary>
/// 已安装包的ID;
/// </summary>
public
string
InstallPackageId
{
get
;
private
set
;
}
public
List
<
UpmPackageVersion
>
Versions
=
new
List
<
UpmPackageVersion
>();
public
bool
IsFilter
(
E_PackageFliterType
type
)
{
switch
(
type
)
...
...
@@ -170,6 +215,7 @@ namespace UpmGitTool
/// <summary>
/// Git信息拉取请求
/// </summary>
[
NonSerialized
]
public
GitFetchReq
FetchReq
;
public
bool
IsFetching
...
...
UpmGitTool/Assets/Scritps/Core/Fetch/UpmPackageVersion.cs
浏览文件 @
116d2052
...
...
@@ -7,6 +7,7 @@
*版本: 1.0
*/
using
Sirenix.OdinInspector
;
using
System
;
using
UnityEngine
;
using
UpmGitTool.UI
;
...
...
@@ -20,19 +21,60 @@ namespace UpmGitTool
[
Serializable
]
public
class
UpmPackageVersion
:
IListViewData
{
private
const
float
LabelWidth
=
100
;
[
LabelWidth
(
LabelWidth
)]
[
DisplayAsString
,
LabelText
(
"Tag名"
)]
[
SerializeField
]
private
string
refName
;
[
LabelWidth
(
LabelWidth
)]
[
DisplayAsString
,
LabelText
(
"Hash"
)]
[
SerializeField
]
private
string
hash
;
[
LabelWidth
(
LabelWidth
)]
[
DisplayAsString
,
LabelText
(
"Unity版本"
)]
[
SerializeField
]
private
string
m_MinimumUnityVersion
;
[
LabelWidth
(
LabelWidth
)]
[
DisplayAsString
,
LabelText
(
"显示名"
)]
[
SerializeField
]
private
string
m_DisplayName
;
[
HideInInspector
]
[
SerializeField
]
private
string
m_Description
;
[
LabelWidth
(
LabelWidth
)]
[
DisplayAsString
,
LabelText
(
"包名"
)]
[
SerializeField
]
private
string
m_Name
;
[
LabelWidth
(
LabelWidth
)]
[
DisplayAsString
,
LabelText
(
"包ID"
)]
[
SerializeField
]
private
string
m_PackageId
;
[
LabelWidth
(
LabelWidth
)]
[
DisplayAsString
,
LabelText
(
"作者"
)]
[
SerializeField
]
private
string
m_Author
;
[
LabelWidth
(
LabelWidth
)]
[
DisplayAsString
,
LabelText
(
"版本号"
)]
[
SerializeField
]
private
string
m_VersionString
;
[
LabelText
(
"依赖项目"
),
ListDrawerSettings
(
HideAddButton
=
true
),
TableList
]
[
SerializeField
]
private
DependencyInfo
[]
m_Dependencies
;
[
LabelWidth
(
LabelWidth
)]
[
DisplayAsString
,
LabelText
(
"文档链接"
)]
[
SerializeField
]
private
string
m_DocumentationUrl
;
[
LabelWidth
(
LabelWidth
)]
[
DisplayAsString
,
LabelText
(
"更新日志"
)]
[
SerializeField
]
private
string
m_ChangelogUrl
;
[
LabelWidth
(
LabelWidth
)]
[
DisplayAsString
,
LabelText
(
"仓库地址"
)]
[
SerializeField
]
private
string
m_RepositoryUrl
;
//仓库地址
[
LabelWidth
(
LabelWidth
)]
[
DisplayAsString
,
LabelText
(
"拉取地址"
)]
[
SerializeField
]
private
string
m_Url
;
//拉取地址,可以直接在Unity工程中拉取
public
string
RefName
=>
refName
;
...
...
UpmGitTool/Assets/Scritps/UI/Controller/UICtrl_PackageItem.cs
浏览文件 @
116d2052
...
...
@@ -31,6 +31,9 @@ namespace UpmGitTool.UI
[
LabelText
(
"状态图片"
)]
public
Image
StateMark
;
[
Title
(
"包信息"
),
HideLabel
,
HideReferenceObjectPicker
]
[
PropertyOrder
(
99
)]
[
ShowInInspector
,
HideInEditorMode
]
private
UPackage
Package
;
public
void
SetData
(
IListViewData
data
)
...
...
@@ -97,9 +100,17 @@ namespace UpmGitTool.UI
return
;
}
//可更新
StateMark
.
sprite
=
StateSp_Upgrade
;
StateMark
.
color
=
Color
.
white
;
if
(
Package
.
IsUpgradable
)
{
//可更新
StateMark
.
sprite
=
StateSp_Upgrade
;
StateMark
.
color
=
Color
.
white
;
}
else
{
StateMark
.
sprite
=
StateSp_Checked
;
StateMark
.
color
=
Color
.
green
;
}
}
private
void
OnPackageDataRefresh
(
string
msgId
,
object
data
)
...
...
编辑
预览
Markdown
is supported
0%
请重试
或
添加新附件
.
添加附件
取消
You are about to add
0
people
to the discussion. Proceed with caution.
先完成此消息的编辑!
取消
想要评论请
注册
或
登录