summaryrefslogtreecommitdiffstats
path: root/docs/05_roadmap.mkd
blob: 868883144a13624ec1e0375b79eefe083bc600d1 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
## Roadmap

This is not exactly a formal roadmap but it is a priority list of what might be implemented in future releases.  
This list is volatile.

### TODO (high priority)

* Eclipse: create plugin to enumerate repositories and delegate cloning to EGit
* Manager: support federation RPCs
* Manager: redesign ref indicators in log, search, and activity views to support multiple local branches, remote branches, and tags
* Gitblit: Lucene integration with multi-repository search (issue 16)
* Gitblit: Serve repositories on root URL rather than /git (investigate JGit 1.2 GitFilter)

### TODO (medium priority)

* Gitblit: editable settings page in GO/WAR
* Gitblit: investigate create-repository-on-push.
    * Maybe a new user role to allow this?
    * Maybe a server setting to disable this completely?
    * Pusher/Creator becomes repository owner and can then manipulate access lists, etc?
* Gitblit: Clone Repository feature (issue 5)
    * optional scheduled pulls
    * optional automatic push to origin/remotes?
    * optional manual push to origin/remotes?
* Gitblit: Repository regex substitutions should be stored in .git/.config, not gitblit.properties
* Gitblit: Consider allowing git:// protocol using JGit
    * new setting *git.allowGitProtocol* to enable/disable git:// protocol
    * unrestricted repositories would have anonymous RW git:// access
    * push-restricted repositories would have anonymous R git:// access
    * clone-restricted repositories would prohibit git:// access
    * view-restricted repositories would prohibit git:// access

### IDEAS

* Gitblit: Re-use the EGit branch visualization table cell renderer as some sort of servlet
* Gitblit: Support personal repositories (~username/repo)
* Gitblit: diff should highlight inserted/removed fragment compared to original line
* Gitblit: implement branch permission controls as Groovy pre-receive script.  
*Maintain permissions text file similar to a gitolite configuration file or svn authz file.*
* Gitblit: consider user-subscribed email notifications for a repository branch.  
* Gitblit: aggregate RSS feeds by tag or subfolder
* Gitblit: Consider creating more Git model objects and exposing them via the JSON RPC interface to allow inspection/retrieval of Git commits, Git trees, etc from Gitblit.
* Gitblit: Blame coloring by author (issue 2)
* Gitblit: View binary files in blob page (issue 6)
* Gitblit: Stronger ticgit integration (issue 8)