https://github.com/acoppes/unity-upm-gitpackagepusher
Unity Plugin that, given a folder with the unity package layout, it will automatically push it to Github and create a branch and tags with only its contents in order to use it later as a dependency for another project.
https://github.com/acoppes/unity-upm-gitpackagepusher
automation openupm plugin release unity upm upm-package
Last synced: 5 months ago
JSON representation
Unity Plugin that, given a folder with the unity package layout, it will automatically push it to Github and create a branch and tags with only its contents in order to use it later as a dependency for another project.
- Host: GitHub
- URL: https://github.com/acoppes/unity-upm-gitpackagepusher
- Owner: acoppes
- License: mit
- Created: 2020-04-12T15:44:13.000Z (about 5 years ago)
- Default Branch: master
- Last Pushed: 2023-05-24T12:39:47.000Z (about 2 years ago)
- Last Synced: 2025-01-31T03:55:44.980Z (5 months ago)
- Topics: automation, openupm, plugin, release, unity, upm, upm-package
- Language: C#
- Homepage:
- Size: 455 KB
- Stars: 6
- Watchers: 2
- Forks: 0
- Open Issues: 0
-
Metadata Files:
- Readme: README.md
- License: LICENSE.txt
Awesome Lists containing this project
README
# Unity Package Manager Git Pusher
Given a folder with the unity package layout, this Unity plugin will allow you to automatically push a version of it to Github and create specific branches and tags with only its contents in order to use it later as a upm dependency for another Unity project.
[](https://openupm.com/packages/com.gemserk.upmgitpusher/)

This is a simple tool to automatically push your code into a structure interpreted by UPM. It uses a special branch for all the stripped code using the package name, and it creates a tag with the package.name-version based on the current package.json data.
For example, if you have a project `com.gemserk.myproject` in version `0.1.0` with the following structure:
```
Root/
Assets/
MyCustomLibrary/
package.json
MyCustomLibrary.asmdef
Code/
MyCode.cs
OtherScripts/
```It will create a branch named `com.gemserk.myproject` with only the code related to the package, and with the following content
```
Root/
MyCustomLibrary/
package.json
MyCustomLibrary.asmdef
Code/
MyCode.cs
```And a tag `com.gemserk.myproject-0.1.0` pointing to current version, and will increase version patch by one in master.
The project itself is published using its own code.
# Install
Download from  or just open Package Manager and add git URL `https://github.com/acoppes/upmgitpusher.git#com.gemserk.upmgitpusher` for latest version or check [tags](https://github.com/acoppes/unity-upm-gitpackagepusher/tags) for previous versions.
# How to use
Just create a folder with your package.json and all the stuff you want to export.
Then, select `Assets/UPM Git Package/Publish Patch`

# Preferences
You can configure some default behaviours in user preferences

# TODO
* Publish Major and Minor version changes too.
* Select specific package.json instead of just finding it (in the case there are multiple libraries).
* Support for having a latest tag which points to the last published release.
* Support for `-preview` version notation.