Awesome
<img src="https://git-scm.com/images/logos/downloads/Git-Icon-1788C.svg" height="24px" > UPM Git Extension
This package enhances the user interface (UI) of the Unity Package Manager (UPM) specifically for packages installed from a git repository.
<< 📝 Description | ⚙ Installation | 🚀 Usage | 🛠 Development Note | 🤝 Contributing >>
📝 Description
In Unity 2018.3, the Unity Package Manager (UPM) introduced Git support, providing a convenient way to install packages from code hosting services such as GitHub. However, certain limitations and shortcomings were identified, including:
- Incorrect links to documents (readme, changelog, license)
- Lack of a direct link to the repository URL
- Limited functionality for adding, updating, and removing packages through the UI
This project addresses these issues by extending the UI of the Unity Package Manager for packages installed using Git.
Features
- Direct link to the Git repository URL
- Links to offline documents, including:
- Documentations
- Changelog
- License
- Support for various Git hosting platforms such as GitHub, GitLab, Bitbucket, Azure DevOps, etc.
- Installation of packages from Git repository URLs using the UI
- Updating packages with a specific tag/branch
- Removing packages
- Compatibility with Unity 2018.3 or later
- Support for
.Net 3.5
,.Net 4.x
, and.Net Standard 2.0
- Version filtering
- Support for path query parameters (for Unity 2019.3.4f or later)
- (Version 2.0.0) Git repositories are cached, and installed/searched packages are automatically indexed:
- Cached repositories are shared between different projects
- Cached repository URLs are displayed as history in the installation window
- Indexed packages are shown in
My Registries
- (Version 2.0.0) Additional menu options to open
manifest.json
with a code editor, open the cache directory, clear the cache, and fetch packages:
<br><br>
⚙ Installation
This package requires as following:
- v1.x: Unity 2018.3 to 2019.4
- v2.x: Unity 2020.1 or later
Install via OpenUPM
This package is available on OpenUPM package registry. This is the preferred method of installation, as you can easily receive updates as they're released.
If you have openupm-cli installed, then run the following command in your project's directory:
# for Unity 2020 or later
openupm add com.coffee.upm-git-extension
# for Unity 2018 or 2019
openupm add com.coffee.upm-git-extension@v1
Install via UPM (using Git URL)
Navigate to your project's Packages folder and open the manifest.json
file. Then add this package somewhere in
the dependencies
block:
{
"dependencies": {
// for Unity 2020 or later
"com.coffee.upm-git-extension": "https://github.com/mob-sakai/UpmGitExtension.git",
// for Unity 2018 or 2019
"com.coffee.upm-git-extension": "https://github.com/mob-sakai/UpmGitExtension.git#v1",
...
},
}
To update the package, change suffix #{version}
to the target version.
- e.g.
"com.coffee.upm-git-extension": "https://github.com/mob-sakai/UpmGitExtension.git#2.1.0",
<br><br>
🚀 Usage
Install a Package from a Git Repository
Click
button in the package manager UI to open the
Install Package Window
.
-
Input a git repository URL and click the
Find Versions
button. In Unity 2019.3.4 or later, you can specify a subdirectory.
-
Select a tag or branch and click the
Find Package
button.
-
Wait a few seconds for validation.
-
Click the
Install Package
button to install the package.
Update Package with a Specific Tag or Branch as Version
You can update or remove the package in your project, just as you would for official packages.
<br><br>
🛠 Development Note
Develop a package for UPM
See https://www.patreon.com/posts/25070968, https://www.jianshu.com/u/275cca6e5f17 (Chinese)
<br><br>
🤝 Contributing
Issues
Issues are incredibly valuable to this project:
- Ideas provide a valuable source of contributions that others can make.
- Problems help identify areas where this project needs improvement.
- Questions indicate where contributors can enhance the user experience.
Pull Requests
Pull requests offer a fantastic way to contribute your ideas to this repository.
Please refer to CONTRIBUTING.md and develop branch for guidelines.
Support
This is an open-source project developed during my spare time.
If you appreciate it, consider supporting me.
Your support allows me to dedicate more time to development. 😊
<br><br>
License
- MIT
Author
See Also
- GitHub page : https://github.com/mob-sakai/UpmGitExtension
- Releases : https://github.com/mob-sakai/UpmGitExtension/releases
- Issue tracker : https://github.com/mob-sakai/UpmGitExtension/issues
- Current project : https://github.com/mob-sakai/UpmGitExtension/projects/1
- Change log : https://github.com/mob-sakai/UpmGitExtension/blob/main/CHANGELOG.md