2023-01-29 12:44:57 +08:00
|
|
|
|
@echo off
|
2025-03-13 18:05:30 +08:00
|
|
|
|
:: Set UTF-8 encoding
|
|
|
|
|
|
chcp 65001
|
|
|
|
|
|
:: Set window title
|
|
|
|
|
|
title UPM Package Update Tool
|
|
|
|
|
|
:: Set console color
|
2023-01-29 12:44:57 +08:00
|
|
|
|
color a
|
2025-03-13 18:05:30 +08:00
|
|
|
|
|
2025-03-13 17:59:04 +08:00
|
|
|
|
echo 开始提交到git upm....
|
|
|
|
|
|
echo 提交upm前请确保当前分支所有改动都已经提交!
|
|
|
|
|
|
|
2025-03-13 18:05:30 +08:00
|
|
|
|
:: Extract version from package.json
|
2025-03-13 17:59:04 +08:00
|
|
|
|
for /f "tokens=2 delims=:, " %%i in ('findstr "version" Assets\package.json') do (
|
|
|
|
|
|
set version=%%i
|
|
|
|
|
|
)
|
2025-03-13 18:05:30 +08:00
|
|
|
|
:: Remove quotes
|
2025-03-13 17:59:04 +08:00
|
|
|
|
set version=%version:"=%
|
|
|
|
|
|
|
|
|
|
|
|
echo 从package.json中读取的版本号为:%version%
|
|
|
|
|
|
|
2025-03-13 18:05:30 +08:00
|
|
|
|
:: Check if tag exists
|
2025-03-13 17:59:04 +08:00
|
|
|
|
git tag | findstr "%version%" > nul
|
|
|
|
|
|
if %errorlevel% equ 0 (
|
|
|
|
|
|
echo 错误:版本号 %version% 对应的tag已存在!
|
|
|
|
|
|
pause
|
|
|
|
|
|
exit
|
|
|
|
|
|
)
|
|
|
|
|
|
|
|
|
|
|
|
set /p Flg=确认提交的版本号%version%,是否开始提交(y/n) -------- :
|
2023-01-29 12:44:57 +08:00
|
|
|
|
|
|
|
|
|
|
IF "%Flg%" equ "y" (
|
2025-03-13 17:59:04 +08:00
|
|
|
|
echo 开始提交,请勿关闭该窗口!
|
2025-03-13 18:05:30 +08:00
|
|
|
|
|
|
|
|
|
|
:: Delete local upm branch if exists
|
|
|
|
|
|
git branch -D upm 2>nul
|
|
|
|
|
|
|
|
|
|
|
|
:: Create new upm branch from current Assets folder
|
2023-01-29 12:44:57 +08:00
|
|
|
|
git subtree split --prefix=Assets --branch upm
|
2025-03-13 18:05:30 +08:00
|
|
|
|
|
|
|
|
|
|
:: Force update local upm branch with remote changes
|
|
|
|
|
|
git fetch origin upm
|
|
|
|
|
|
git checkout upm
|
|
|
|
|
|
git reset --hard origin/upm
|
|
|
|
|
|
|
|
|
|
|
|
:: Create new subtree split
|
|
|
|
|
|
git checkout master
|
|
|
|
|
|
git subtree split --prefix=Assets --branch upm-temp
|
|
|
|
|
|
|
|
|
|
|
|
:: Apply new changes and force push
|
|
|
|
|
|
git checkout upm
|
|
|
|
|
|
git merge upm-temp --allow-unrelated-histories -X theirs
|
|
|
|
|
|
git branch -D upm-temp
|
|
|
|
|
|
|
|
|
|
|
|
:: Create and push tag
|
2025-03-13 17:59:04 +08:00
|
|
|
|
git tag %version% upm
|
2025-03-13 18:05:30 +08:00
|
|
|
|
git push -f origin upm --tags
|
|
|
|
|
|
|
|
|
|
|
|
:: Return to original branch
|
|
|
|
|
|
git checkout master
|
2023-01-29 12:44:57 +08:00
|
|
|
|
GOTO :END
|
|
|
|
|
|
)
|
|
|
|
|
|
|
|
|
|
|
|
:END
|
2025-03-13 17:59:04 +08:00
|
|
|
|
echo 执行完成!
|
2023-01-29 12:44:57 +08:00
|
|
|
|
pause
|
|
|
|
|
|
exit
|