👍 🎉 💖 Thanks for your interest! 💖 🎉 👍
The following is a set of guidelines for contributing to Git for Unity. These are just guidelines, not rules. Use your best judgment, and feel free to propose changes to this document in a pull request.
Note that Git for Unity is currently in preview, so everything is likely to change over time as we learn and refine how we work with the community.
This project is a fork of GitHub for Unity, and therefore some of the information here might not be fully up to date, and there may be links going to the wrong places. We're cleaning things up as we go!
What should I know before I get started?
This project adheres to the Contributor Covenant code of conduct. By participating, you are expected to uphold this code.
This project is a fork of GitHub for Unity and is currently in preview. The API part of Git for Unity is a .NET Git Client library, without any dependencies on Unity itself. Only the UI part of Git for Unity is Unity-specific.
The same applies to this project, which is split into two packages - com.spoiledcat.git.api
- the Git client library; and com.spoiledcat.git.ui
- a Unity Git UI based on the Git for Unity UI, which examplifies how to use the Git client library.
Even though this project is currently a fork, we plan for the API part of this project to become the authoritative implementation source, and split entirely from the original GitHub for Unity implementation.
We're doing this so we can improving the integration between Git and Unity by exposing additional version control C# APIs that Git for Unity can leverage. Therefore, the API may change while we build this, and this project may become dependent on more recent versions of Unity.
This repository is LFS-enabled. To clone it, you should use a git client that supports git LFS 2.x and submodules.
Please read the How to Build document for information on how to build Git for Unity.
This section guides you through submitting a bug report for Git for Unity. Following these guidelines helps maintainers and the community understand your report 📝, reproduce the behavior 💻 💻, and find related reports 🔎.
Before creating bug reports, please check this list as you might find out that you don't need to create one. When you are creating a bug report, please include as many details as possible. Fill out the required template, the information it asks for helps us resolve issues faster.
As this is still a fork, there are a lot of existing issues reported upstream. Perform a cursory search there and here to see if the problem has already been reported.
If it does exist, add a reaction to the issue to indicate this is also an issue for you, and add a comment to the existing issue if there is extra information you can contribute.
Bugs are tracked as Git issues.
Simply create an issue on the Git for Unity issue tracker and fill out the provided issue template.
The information we are interested in includes:
- details about your environment - which build, which operating system
- details about reproducing the issue - what steps to take, what happens, how often it happens
- other relevant information - log files, screenshots, etc.
This section guides you through submitting an enhancement suggestion for Git for Unity, including completely new features and minor improvements to existing functionality. Following these guidelines helps maintainers and the community understand your suggestion 📝 and find related suggestions 🔎.
Before creating enhancement suggestions, please check this list as you might find out that you don't need to create one. When you are creating an enhancement suggestion, please include as many details as possible. Fill in the template, including the steps that you imagine you would take if the feature you're requesting existed.
As this is still a fork, there are a lot of existing issues reported upstream. Perform a cursory search there and here to see if the enhancement has already been suggested. If it has, add a :thumbsup: to indicate your interest in it, or comment if there is additional information you would like to add.
Enhancement suggestions are tracked as Git issues.
Simply create an issue on the Git for Unity issue tracker and provide the following information:
- Use a clear and descriptive title for the issue to identify the suggestion.
- Provide a step-by-step description of the suggested enhancement in as much detail as possible. This additional context helps the maintainers to understand the enhancement from your perspective
- Explain why this enhancement would be useful to Git for Unity users.
- Include screenshots and animated GIFs if relevant to help you demonstrate the steps or point out the part of Git for Unity which the suggestion is related to. You can use this tool to record GIFs on macOS and Windows.
- List some other applications where this enhancement exists, if applicable.
As the team is working towards the 2.0 release, we'll identify enhancements or bugs that can be categorized as tasks that:
- have low impact, or have a known workaround
- should be fixed
- have a narrow scope and/or easy reproduction steps
- can be worked on independent of other tasks
These issues will be labelled as up-for-grabs
in the repository. If you are interested in contributing to the project, please
comment on the issue to let the maintainers (and community) know you are
interested in picking this up.
This section lists the labels we use to help us track and manage issues and pull requests.
Label name | 🔎 | Description |
---|---|---|
enhancement |
search | Feature requests. |
bug |
search | Confirmed bugs or reports that are very likely to be bugs. |
question |
search | Questions more than bug reports or feature requests (e.g. how do I do X). |
more-information-needed |
search | More information needs to be collected about these problems or feature requests (e.g. steps to reproduce). |
needs-reproduction |
search | Likely bugs, but haven't been reliably reproduced. |
macOS |
search | Issues specific to macOS users. |
Windows |
search | Issues specific to Windows users. |
Linux |
search | Issues specific to Linux users. |
Label name | 🔎 | Description |
---|---|---|
up-for-grabs |
search | Issues marked as ideal for external contributors. |
polish |
search | Issues not critical to the application but would provide a better experience if resolved. |
tech-debt |
search | Issues related to code or architecture decisions. |
design |
search | Issues that require some design input from the maintainers as part of completing the work. |
Label name | 🔎 | Description |
---|---|---|
ready-for-review |
search | Pull Requests that are ready to be reviewed by the maintainers. |