public
Description: Gitorious aims to provide a great way of doing distributed opensource code collaboration.
Homepage: http://gitorious.org/projects/gitorious
Clone URL: git://github.com/dysinger/gitorious.git
Search Repo:
dysinger (author)
Tue Apr 29 17:29:28 -0700 2008
commit  8c930210231c6383bb5c40fbf3b69a3676b3a5e0
tree    b00466e3649ba91e9e9c0b773fd6f9a7d4ab5a06
parent  1015c9e63e990cc98199b5b301cac03db41dfcc9 parent  25177c88703dcc6146d0d67afc937e8240c3c4be
gitorious / HACKING
100644 56 lines (33 sloc) 2.074 kb
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
46
47
48
49
50
51
52
53
54
55
56
== Guide to Hacking Gitorious
 
=== Dependencies
 
Ruby libraries/bindings/gems
 
* BlueCloth (http://rubyforge.org/projects/bluecloth/)
* mime-types (http://rubyforge.org/projects/mime-types)
* oniguruma (http://rubyforge.org/projects/oniguruma)
* textpow (http://rubyforge.org/projects/textpow)
* chronic (http://rubyforge.org/projects/chronic)
* rmagick (http://rubyforge.org/projects/rmagick)
 
Libraries/applications:
 
* Git (http://git-scm.org)
* Oniguruma C library (http://www.geocities.jp/kosako3/oniguruma/)
* Sphinx (http://sphinxsearch.com/)
 
(App is deployed on mysql, allthough source should be free of mysql-isms/quirks)
 
 
=== The Hackers digest guide:
 
1. Do the normal rails app stuff (database.yml etc.)
 
2. Rename the config/gitorious.sample.yml file to gitorious.yml, and update it with your changes.
 
3a. If you want real project data, find a project, set the 'ready' status to true, create a bare git repository (git --bare init) in the directory GitoriousConfig['repository_base_path']/#{project.slug}/#{repository.name}.git, and push something to that repository (cd to a git repository with commits and do "git push path/to/the/bare/repository/you/just/created master").
  
3b. OR run the script/task_performer and let it create the repository for you (remember to do step 2 first)
  
4. Get your git on!
 
Consult the mailinglist (http://groups.google.com/group/gitorious) or drop in
by #gitorious on irc.freenode.net if you have questions.
 
 
=== Tasks and other scripts
 
* script/task_performer runs any tasks in the queue (creating repositories etc)
* script/graph_generator generates graph.
* rake ultrasphinx:index runs the search indexer
 
 
=== Coding style
 
* Two spaces, no tabs, for indention
* Don't use and and or for boolean tests, instead always use && and ||
* MyClass.my_method(my_arg) -- not my_method( my_arg ) or my_method my_arg
* Unless presedence is an issue; do .. end for multi-line blocks, braces for single line blocks
* Follow the conventions you see used in the source already
 
(copied mostly verbatim from dev.rubyonrails.org)