codeisok
Badoo repository browsing and code review tool
- Users management
- Repositories management
- Access management
-
Commitdiff review
- Unified mode
- Side-by-side mode
- Branchdiff review
- Blob review
- Review for diff between two commits
The project was originally forked from
https://github.com/xiphux/gitphp.
But we changed almost everything and added lot of new features.
- Branchdiffs – ability to see diffs between branches
- Branchlogs
- treediff mode – as unified but with folders/files tree on the left side
- toggle comments mode – ability to see all comments in review in a one view
- Authorisation via JIRA REST API, Atlassian Crowd service or Redmine REST API
- Comments about review to Jira or Redmine tickets
- Code Review including branchdiffs
- Code syntax highlighting using http://alexgorbatchev.com/SyntaxHighlighter with a lot of additional languages support
- Side-by-side review using http://www.mergely.com
- Filters in diffs on-the-fly for different file types and changes
- Search in project heads
- Access control, repositories management – no gitosis is reguired, everything is done inside codeisok
- and even more
Please find the full documentation in codeisok wiki
Installation
For manual installation explore .setup dir and find all nesessary scripts and tools. Service requires mysql, php and nginx to work. Setup scenario can be found in .setup/Dockerfile.
Docker
For docker build run “docker build -t codeisok .setup” from project root.
To run docker container use start.sh script in project root.
Docker container exposes 2 ports:
- 80 for HTTP instance (http://localhost/).
- 22 as ssh-source for git operations (ssh://git@localhost/testrepo.git)
To run container in non-interactive mode (background) – replace -it
options with -d
one in docker run
command
Internals
Default authorisation is just config-based. You can use ‘user’ user and ‘password’ password. To change it look for GitPHPConfig::AUTH_METHOD and GitPHPConfig::CONFIG_AUTH_USER fields in .config/gitphp.conf.php file.
Service is using smarty as template engine. So templates_c directory should be writable for web-service user.
Service is storing repositories at PROJECT_ROOT directory path. This directory should be writable for web-service user.