# Gitote [](https://gitlab.com/gitote/gitote/pipelines) [](https://quay.io/repository/gitote/gitote) [](https://goreportcard.com/report/gitlab.com/gitote/gitote) [](https://www.bountysource.com/teams/gitote) [](https://gitote.ml) #### Software version control made simple! Welcome to the [gitote](https://gitote.com) codebase. We are so excited to have you. With your help, we can build out Gitote to be more stable and better serve our platform. ## What is gitote? [Gitote](https://gitote.com) is an open source end-to-end software development platform with built-in version control, issue tracking, code review, and more. ## Contributing We expect contributors to abide by our underlying [code of conduct](CONDUCT.md). All conversations and discussions on GitLab (issues, merge requests) and across Gitote must be respectful and harassment-free. ### Where to contribute When in doubt, ask a [core team member](#core-team)! You can mention us in any issues . Any issue with ~7579403 tag is typically a good place to start. **Refactoring** code, e.g. improving the code without modifying the behavior is an area that can probably be done based on intuition and may not require much communication to be merged. **Fixing bugs** may also not require a lot of communication, but the more the better. Please surround bug fixes with ample tests. Bugs are magnets for other bugs. Write tests near bugs! **Building features** is the area which will require the most communication and/or negotiation. Every feature is subjective and open for debate. The [product roadmap](https://gitlab.com/gitote/gitote/boards/716462) should be a good guide to follow. As always, when in doubt, ask! ### How to contribute 1. Fork the project & clone locally. Follow the initial setup [here](#getting-started). 2. Create a branch, naming it either a feature or bug: `git checkout -b feature/that-new-feature` or `bug/fixing-that-bug` 3. Code and commit your changes. Bonus points if you write a [good commit message](https://chris.beams.io/posts/git-commit/): `git commit -m 'Add some feature'` 4. Push to the branch: `git push origin feature/that-new-feature` 5. [Create a merge request](#create-a-merge-request) for your branch 🎉 ## Contribution guideline ### Create an issue Nobody's perfect. Something doesn't work? Or could be done better? Let us know by creating an issue. PS: a clear and detailed issue gets lots of love, all you have to do is follow the issue template! #### Clean code with tests Some existing code may be poorly written or untested, so we must have more scrutiny going forward. We test with **go test**, let us know if you have any questions about this! #### Create a megre request * Try to keep the megre requests small. A megre request should try its very best to address only a single concern. * Make sure all tests pass and add additional tests for the code you submit. * Document your reasoning behind the changes. Explain why you wrote the code in the way you did. The code should explain what it does. * If there's an existing issue related to the megre request, reference to it by adding something like `References/Closes/Fixes/Resolves #305`, where 305 is the issue number. [More info here](https://docs.gitlab.com/ee/user/project/issues/closing_issues.html#via-merge-request) * If you follow the megre request template, you can't go wrong. ## Codebase ### The stack We run on a **Go** backend. Additional technologies and services are listed on [our stackshare](https://stackshare.com/gitote). ## Features - Activity timeline - **SSH** and **HTTP/HTTPS** protocols - Account/Organization/Repository management - Add/Remove repository collaborators - Repository/Organization **webhooks** (including Slack and Discord) - Repository **Git hooks/deploy keys** - Repository **issues**, **pull requests**, **wiki** and **protected branches** - **Migrate** and **mirror** repository and its wiki - **Web editor** for repository files and wiki - **Jupyter Notebook** - **Two-factor authentication** - **Gravatar** and **Federated avatar** with custom source - **Mail** service ## Product Roadmap Our new product roadmap can be found [here](https://gitlab.com/gitote/gitote/boards/716462). Many notes need to be converted to issues but this should provide an overview of features we plan to work on, as well as features we are considering. Core team members will move issues along the project board as they progress. * Backlog: an accumulation of uncompleted work or matters needing to be dealt with. * Bug: bugs to be fixed. * Feature Requests: features up for discussion. * Closed: features we're committed to building -- free for contributors to work on, but please communicate with the owner beforehand. ## Core team
Yoginth |
OteBot |