Ecosyste.ms: Awesome
An open API service indexing awesome lists of open source software.
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: about 1 month 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 (over 4 years ago)
- Default Branch: master
- Last Pushed: 2023-05-24T12:39:47.000Z (over 1 year ago)
- Last Synced: 2024-09-28T23:54:29.389Z (about 2 months ago)
- Topics: automation, openupm, plugin, release, unity, upm, upm-package
- Language: C#
- Homepage:
- Size: 455 KB
- Stars: 7
- 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.
[![openupm](https://img.shields.io/npm/v/com.gemserk.upmgitpusher?label=openupm®istry_uri=https://package.openupm.com)](https://openupm.com/packages/com.gemserk.upmgitpusher/)
![Demo](images/example.gif?raw=true "Demo")
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 ![OpenUPM](https://openupm.com/packages/com.gemserk.upmgitpusher/) 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`
![How to publish](images/menuitem.png?raw=true "How to publish")
# Preferences
You can configure some default behaviours in user preferences
![Configure](images/preferences.png?raw=true "Configure")
# 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.