siuying-gitdocs 0.4.14.md
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- data/.gitignore +5 -0
- data/CHANGELOG +79 -0
- data/Gemfile +4 -0
- data/LICENSE +20 -0
- data/README.md +192 -0
- data/Rakefile +8 -0
- data/bin/gitdocs +5 -0
- data/gitdocs.gemspec +41 -0
- data/lib/gitdocs/cli.rb +111 -0
- data/lib/gitdocs/configuration.rb +79 -0
- data/lib/gitdocs/docfile.rb +23 -0
- data/lib/gitdocs/manager.rb +96 -0
- data/lib/gitdocs/markdown_converter.rb +44 -0
- data/lib/gitdocs/markdown_template.rb +20 -0
- data/lib/gitdocs/migration/001_create_shares.rb +13 -0
- data/lib/gitdocs/migration/002_add_remote_branch.rb +10 -0
- data/lib/gitdocs/migration/003_create_configs.rb +11 -0
- data/lib/gitdocs/migration/004_add_index_for_path.rb +10 -0
- data/lib/gitdocs/migration/005_add_start_web_frontend.rb +9 -0
- data/lib/gitdocs/migration/006_add_web_port_to_config.rb +9 -0
- data/lib/gitdocs/public/css/app.css +51 -0
- data/lib/gitdocs/public/css/bootstrap.css +356 -0
- data/lib/gitdocs/public/css/coderay.css +41 -0
- data/lib/gitdocs/public/css/tilt.css +82 -0
- data/lib/gitdocs/public/img/error.png +0 -0
- data/lib/gitdocs/public/img/file.png +0 -0
- data/lib/gitdocs/public/img/folder.png +0 -0
- data/lib/gitdocs/public/img/git_logo.png +0 -0
- data/lib/gitdocs/public/img/info.png +0 -0
- data/lib/gitdocs/public/img/ok.png +0 -0
- data/lib/gitdocs/public/img/warning.png +0 -0
- data/lib/gitdocs/public/js/ace/ace-compat.js +1 -0
- data/lib/gitdocs/public/js/ace/ace-uncompressed.js +14202 -0
- data/lib/gitdocs/public/js/ace/ace.js +1 -0
- data/lib/gitdocs/public/js/ace/keybinding-emacs.js +1 -0
- data/lib/gitdocs/public/js/ace/keybinding-vim.js +1 -0
- data/lib/gitdocs/public/js/ace/mode-coffee.js +1 -0
- data/lib/gitdocs/public/js/ace/mode-css.js +1 -0
- data/lib/gitdocs/public/js/ace/mode-html.js +1 -0
- data/lib/gitdocs/public/js/ace/mode-javascript.js +1 -0
- data/lib/gitdocs/public/js/ace/mode-json.js +1 -0
- data/lib/gitdocs/public/js/ace/mode-lua.js +1 -0
- data/lib/gitdocs/public/js/ace/mode-markdown.js +1 -0
- data/lib/gitdocs/public/js/ace/mode-php.js +1 -0
- data/lib/gitdocs/public/js/ace/mode-python.js +1 -0
- data/lib/gitdocs/public/js/ace/mode-ruby.js +1 -0
- data/lib/gitdocs/public/js/ace/mode-scala.js +1 -0
- data/lib/gitdocs/public/js/ace/mode-scss.js +1 -0
- data/lib/gitdocs/public/js/ace/mode-sql.js +1 -0
- data/lib/gitdocs/public/js/ace/mode-svg.js +1 -0
- data/lib/gitdocs/public/js/ace/mode-textile.js +1 -0
- data/lib/gitdocs/public/js/ace/mode-xml.js +1 -0
- data/lib/gitdocs/public/js/ace/theme-tomorrow.js +1 -0
- data/lib/gitdocs/public/js/ace/theme-tomorrow_night.js +1 -0
- data/lib/gitdocs/public/js/ace/theme-tomorrow_night_blue.js +1 -0
- data/lib/gitdocs/public/js/ace/theme-twilight.js +1 -0
- data/lib/gitdocs/public/js/ace/theme-vibrant_ink.js +1 -0
- data/lib/gitdocs/public/js/ace/worker-coffee.js +7041 -0
- data/lib/gitdocs/public/js/ace/worker-css.js +9525 -0
- data/lib/gitdocs/public/js/ace/worker-javascript.js +9739 -0
- data/lib/gitdocs/public/js/app.js +107 -0
- data/lib/gitdocs/public/js/bootstrap-alerts.js +113 -0
- data/lib/gitdocs/public/js/edit.js +30 -0
- data/lib/gitdocs/public/js/jquery.js +4 -0
- data/lib/gitdocs/public/js/jquery.tablesorter.js +4 -0
- data/lib/gitdocs/public/js/search.js +13 -0
- data/lib/gitdocs/public/js/settings.js +25 -0
- data/lib/gitdocs/public/js/util.js +145 -0
- data/lib/gitdocs/runner.rb +259 -0
- data/lib/gitdocs/server.rb +154 -0
- data/lib/gitdocs/version.rb +3 -0
- data/lib/gitdocs/views/_ace_scripts.erb +8 -0
- data/lib/gitdocs/views/_header.haml +14 -0
- data/lib/gitdocs/views/app.haml +40 -0
- data/lib/gitdocs/views/dir.haml +43 -0
- data/lib/gitdocs/views/edit.haml +15 -0
- data/lib/gitdocs/views/file.haml +8 -0
- data/lib/gitdocs/views/home.haml +10 -0
- data/lib/gitdocs/views/revisions.haml +28 -0
- data/lib/gitdocs/views/search.haml +16 -0
- data/lib/gitdocs/views/settings.haml +55 -0
- data/lib/gitdocs.rb +37 -0
- data/lib/img/icon.png +0 -0
- data/test/configuration_test.rb +39 -0
- data/test/runner_test.rb +25 -0
- data/test/test_helper.rb +54 -0
- metadata +370 -0
|
@@ -0,0 +1,15 @@
|
|
|
1
|
+
- @title = root
|
|
2
|
+
|
|
3
|
+
= partial("header", :locals => { :parent => parent, :file => true, :idx => idx })
|
|
4
|
+
|
|
5
|
+
%form{ :class => "edit", :action => "/#{idx}#{request.path_info}?mode=save", :method => "post", :style => "display:none;" }
|
|
6
|
+
#editor
|
|
7
|
+
%textarea{ :id => 'data', :name => "data" }= preserve contents
|
|
8
|
+
.clearfix
|
|
9
|
+
%textarea{ :id => 'message', :name => 'message', :class => 'span16', :placeholder => 'Optional commit message.' }
|
|
10
|
+
%input{ :type => 'submit', :value => "Save", :class => "btn primary" }
|
|
11
|
+
%a{ :href => "/#{idx}#{request.path_info}", :class => "btn secondary" } Cancel
|
|
12
|
+
%input{ :type => 'hidden', :class => 'filename', :value => request.path_info }
|
|
13
|
+
|
|
14
|
+
= partial("ace_scripts")
|
|
15
|
+
|
|
@@ -0,0 +1,28 @@
|
|
|
1
|
+
- @title = root
|
|
2
|
+
|
|
3
|
+
= partial("header", :locals => { :parent => parent, :file => true, :idx => idx })
|
|
4
|
+
|
|
5
|
+
- if revisions && revisions.any?
|
|
6
|
+
%table.condensed-table.zebra-striped
|
|
7
|
+
%thead
|
|
8
|
+
%tr
|
|
9
|
+
%th Commit
|
|
10
|
+
%th Subject
|
|
11
|
+
%th Author
|
|
12
|
+
%th Committed
|
|
13
|
+
%th Revert
|
|
14
|
+
|
|
15
|
+
%tbody
|
|
16
|
+
- revisions.each_with_index do |r, i|
|
|
17
|
+
%tr
|
|
18
|
+
%td.commit
|
|
19
|
+
%a{ :href => "?revision=#{r[:commit]}" }
|
|
20
|
+
= r[:commit]
|
|
21
|
+
%td.subject= r[:subject]
|
|
22
|
+
%td.author= r[:author]
|
|
23
|
+
%td.date.reldate= r[:date]
|
|
24
|
+
%td.revert
|
|
25
|
+
%a{ :href => "?mode=revert&revision=#{r[:commit]}", :onclick => "javascript:return confirm('Are you sure?')" }
|
|
26
|
+
= r[:commit]
|
|
27
|
+
- if revisions.empty?
|
|
28
|
+
%p No revisions for this file could be found.
|
|
@@ -0,0 +1,16 @@
|
|
|
1
|
+
- @title = "Matches for #{request.params['q'].inspect}"
|
|
2
|
+
%script{ :src => "/js/search.js", :type => "text/javascript", :charset => "utf-8" }
|
|
3
|
+
|
|
4
|
+
.results{ "data-query" => request.params['q'] }
|
|
5
|
+
-if results.empty?
|
|
6
|
+
%h2 No results
|
|
7
|
+
-else
|
|
8
|
+
- results.each do |repo, search_results|
|
|
9
|
+
%h2= repo.name
|
|
10
|
+
%dl
|
|
11
|
+
- search_results.each do |res|
|
|
12
|
+
%dt
|
|
13
|
+
%a{:href => "/#{repo.index}/#{res.file}"}
|
|
14
|
+
= "/#{res.file}"
|
|
15
|
+
%dd
|
|
16
|
+
= res.context
|
|
@@ -0,0 +1,55 @@
|
|
|
1
|
+
- @title = "Settings"
|
|
2
|
+
%script{ :src => "/js/settings.js", :type => "text/javascript", :charset => "utf-8" }
|
|
3
|
+
|
|
4
|
+
%form#settings{:method => 'POST', :action => '/settings'}
|
|
5
|
+
%h2 Gitdocs
|
|
6
|
+
#config.field.config
|
|
7
|
+
%dl
|
|
8
|
+
%dt Web Frontend Port
|
|
9
|
+
%dd
|
|
10
|
+
%input{:type =>'input', :name=>"config[web_frontend_port]", :value => conf.global.web_frontend_port }
|
|
11
|
+
%p
|
|
12
|
+
%input{:type =>'hidden', :value => '0', :name=>"config[load_browser_on_startup]"}
|
|
13
|
+
%input{:type =>'checkbox', :value => '1', :name=>"config[load_browser_on_startup]", :checked => conf.global.load_browser_on_startup ? 'checked' : nil}
|
|
14
|
+
%span Open browser on startup?
|
|
15
|
+
|
|
16
|
+
%h2 Shares
|
|
17
|
+
- conf.shares.each_with_index do |share, idx|
|
|
18
|
+
%div{:id => "share-#{idx}", :class => "share #{idx % 2 == 0 ? 'even' : 'odd'}"}
|
|
19
|
+
%dl
|
|
20
|
+
%dt Path
|
|
21
|
+
%dd
|
|
22
|
+
%input{:name=>"share[#{idx}][path]", :value => share.path, :class => "path" }
|
|
23
|
+
%dl
|
|
24
|
+
%dt Polling interval
|
|
25
|
+
%dd
|
|
26
|
+
%input{:name=>"share[#{idx}][polling_interval]", :value => share.polling_interval}
|
|
27
|
+
|
|
28
|
+
- if share.available_remotes
|
|
29
|
+
%dl
|
|
30
|
+
%dt Remote
|
|
31
|
+
%dd
|
|
32
|
+
%select{:name=>"share[#{idx}][remote_branch]"}
|
|
33
|
+
- share.available_remotes.each do |remote|
|
|
34
|
+
%option{:value => remote, :selected => remote == "#{share.remote_name}/#{share.branch_name}" ? 'selected' : nil}
|
|
35
|
+
= remote
|
|
36
|
+
- else
|
|
37
|
+
|
|
38
|
+
%dl
|
|
39
|
+
%dt Remote
|
|
40
|
+
%dd
|
|
41
|
+
%input{:name=>"share[#{idx}][remote_name]", :value => share.remote_name}
|
|
42
|
+
%dl
|
|
43
|
+
%dt Branch
|
|
44
|
+
%dd
|
|
45
|
+
%input{:name=>"share[#{idx}][branch_name]", :value => share.branch_name}
|
|
46
|
+
.notify.field
|
|
47
|
+
%input{:type =>'hidden', :value => '0', :name=>"share[#{idx}][notification]"}
|
|
48
|
+
%input{:type =>'checkbox', :value => '1', :name=>"share[#{idx}][notification]", :checked => share.notification ? 'checked' : nil}
|
|
49
|
+
%span Notifications?
|
|
50
|
+
.delete
|
|
51
|
+
%a{ :href => "/shares/#{share.id}", :class => "btn remove_share danger", :"data-method" => "delete"}
|
|
52
|
+
Delete
|
|
53
|
+
|
|
54
|
+
%input{:value => 'Save', :type => 'submit', :class => "btn primary" }
|
|
55
|
+
%a{ :class => "btn secondary new-share", :href => "/shares", :"data-method" => "post" } Add Share
|
data/lib/gitdocs.rb
ADDED
|
@@ -0,0 +1,37 @@
|
|
|
1
|
+
require 'thread'
|
|
2
|
+
require 'yajl'
|
|
3
|
+
require 'dante'
|
|
4
|
+
require 'socket'
|
|
5
|
+
require 'shell_tools'
|
|
6
|
+
require 'guard'
|
|
7
|
+
|
|
8
|
+
require 'gitdocs/markdown_converter'
|
|
9
|
+
require 'gitdocs/markdown_template'
|
|
10
|
+
require 'gitdocs/version'
|
|
11
|
+
require 'gitdocs/configuration'
|
|
12
|
+
require 'gitdocs/runner'
|
|
13
|
+
require 'gitdocs/server'
|
|
14
|
+
require 'gitdocs/cli'
|
|
15
|
+
require 'gitdocs/manager'
|
|
16
|
+
require 'gitdocs/docfile'
|
|
17
|
+
|
|
18
|
+
module Gitdocs
|
|
19
|
+
|
|
20
|
+
DEBUG = ENV['DEBUG']
|
|
21
|
+
|
|
22
|
+
# Gitdocs.start(:config_root => "...", :debug => true)
|
|
23
|
+
def self.start(options={}, &blk)
|
|
24
|
+
options = { :debug => DEBUG, :config_root => nil }.merge(options)
|
|
25
|
+
@manager.stop if @manager
|
|
26
|
+
@manager = Manager.new(options[:config_root], options[:debug], &blk)
|
|
27
|
+
@manager.start(options[:port])
|
|
28
|
+
end
|
|
29
|
+
|
|
30
|
+
def self.restart
|
|
31
|
+
@manager.restart
|
|
32
|
+
end
|
|
33
|
+
|
|
34
|
+
def self.stop
|
|
35
|
+
@manager.stop
|
|
36
|
+
end
|
|
37
|
+
end
|
data/lib/img/icon.png
ADDED
|
Binary file
|
|
@@ -0,0 +1,39 @@
|
|
|
1
|
+
require File.expand_path('../test_helper', __FILE__)
|
|
2
|
+
|
|
3
|
+
describe "gitdocs configuration" do
|
|
4
|
+
before do
|
|
5
|
+
ShellTools.capture { @config = Gitdocs::Configuration.new("/tmp/gitdocs") }
|
|
6
|
+
end
|
|
7
|
+
|
|
8
|
+
it "has sensible default config root" do
|
|
9
|
+
assert_equal "/tmp/gitdocs", @config.config_root
|
|
10
|
+
end
|
|
11
|
+
|
|
12
|
+
it "can retrieve empty shares" do
|
|
13
|
+
assert_equal [], @config.shares
|
|
14
|
+
end
|
|
15
|
+
|
|
16
|
+
it "can have a path added" do
|
|
17
|
+
@config.add_path('/my/../my/path') # normalized test
|
|
18
|
+
assert_equal "/my/path", @config.shares.first.path
|
|
19
|
+
assert_equal 15.0, @config.shares.first.polling_interval
|
|
20
|
+
end
|
|
21
|
+
|
|
22
|
+
it "can have a path removed" do
|
|
23
|
+
@config.add_path('/my/path')
|
|
24
|
+
@config.add_path('/my/path/2')
|
|
25
|
+
@config.remove_path('/my/../my/path/2') # normalized test
|
|
26
|
+
assert_equal ["/my/path"], @config.shares.map(&:path)
|
|
27
|
+
end
|
|
28
|
+
|
|
29
|
+
it "can clear paths" do
|
|
30
|
+
@config.add_path('/my/path')
|
|
31
|
+
@config.add_path('/my/path/2')
|
|
32
|
+
@config.clear
|
|
33
|
+
assert_equal [], @config.shares.map(&:path)
|
|
34
|
+
end
|
|
35
|
+
|
|
36
|
+
it "can normalize paths" do
|
|
37
|
+
assert_equal File.expand_path("../test_helper.rb", Dir.pwd), @config.normalize_path("../test_helper.rb")
|
|
38
|
+
end
|
|
39
|
+
end
|
data/test/runner_test.rb
ADDED
|
@@ -0,0 +1,25 @@
|
|
|
1
|
+
require File.expand_path('../test_helper', __FILE__)
|
|
2
|
+
|
|
3
|
+
describe "gitdocs runner" do
|
|
4
|
+
it "should clone files" do
|
|
5
|
+
with_clones(3) do |clone1, clone2, clone3|
|
|
6
|
+
File.open(File.join(clone1, "test"), 'w') { |f| f << "testing" }
|
|
7
|
+
sleep 3
|
|
8
|
+
assert_equal "testing", File.read(File.join(clone1, "test"))
|
|
9
|
+
assert_equal "testing", File.read(File.join(clone2, "test"))
|
|
10
|
+
assert_equal "testing", File.read(File.join(clone3, "test"))
|
|
11
|
+
end
|
|
12
|
+
end
|
|
13
|
+
|
|
14
|
+
it "should resolve conflicts files" do
|
|
15
|
+
with_clones(3) do |clone1, clone2, clone3|
|
|
16
|
+
File.open(File.join(clone1, "test.txt"), 'w') { |f| f << "testing" }
|
|
17
|
+
sleep 3
|
|
18
|
+
File.open(File.join(clone1, "test.txt"), 'w') { |f| f << "testing\n1" }
|
|
19
|
+
File.open(File.join(clone2, "test.txt"), 'w') { |f| f << "testing\n2" }
|
|
20
|
+
sleep 3
|
|
21
|
+
assert_includes 2..3, Dir[File.join(clone2, "*.txt")].to_a.size
|
|
22
|
+
assert_includes 2..3, Dir[File.join(clone3, "*.txt")].to_a.size
|
|
23
|
+
end
|
|
24
|
+
end
|
|
25
|
+
end
|
data/test/test_helper.rb
ADDED
|
@@ -0,0 +1,54 @@
|
|
|
1
|
+
ENV["TEST"] = 'true'
|
|
2
|
+
require 'rubygems'
|
|
3
|
+
require 'minitest/autorun'
|
|
4
|
+
$:.unshift File.expand_path("../../lib")
|
|
5
|
+
require 'gitdocs'
|
|
6
|
+
require 'fakeweb'
|
|
7
|
+
require 'mocha'
|
|
8
|
+
|
|
9
|
+
FakeWeb.allow_net_connect = false
|
|
10
|
+
|
|
11
|
+
## Kernel Extensions
|
|
12
|
+
require 'stringio'
|
|
13
|
+
|
|
14
|
+
class MiniTest::Spec
|
|
15
|
+
def with_clones(count = 3)
|
|
16
|
+
FileUtils.rm_rf("/tmp/gitdocs")
|
|
17
|
+
master_path = "/tmp/gitdocs/master"
|
|
18
|
+
FileUtils.mkdir_p("/tmp/gitdocs/master")
|
|
19
|
+
ShellTools.capture { `git init /tmp/gitdocs/master --bare` }
|
|
20
|
+
sub_paths = count.times.map do |c|
|
|
21
|
+
ShellTools.capture { `cd /tmp/gitdocs && git clone file://#{master_path} #{c}` }
|
|
22
|
+
conf_path = "/tmp/gitdocs/config/#{c}"
|
|
23
|
+
FileUtils.mkdir_p(conf_path)
|
|
24
|
+
["/tmp/gitdocs/#{c}", conf_path]
|
|
25
|
+
end
|
|
26
|
+
pids = sub_paths.map do |(path, conf_path)|
|
|
27
|
+
fork do
|
|
28
|
+
unless ENV['DEBUG']
|
|
29
|
+
STDOUT.reopen(File.open("/dev/null", 'w'))
|
|
30
|
+
STDERR.reopen(File.open("/dev/null", 'w'))
|
|
31
|
+
end
|
|
32
|
+
begin
|
|
33
|
+
puts "RUNNING!"
|
|
34
|
+
Gitdocs.start(:config_path => conf_path) do |conf|
|
|
35
|
+
conf.global.update_attributes(:load_browser_on_startup => false, :start_web_frontend => false)
|
|
36
|
+
conf.add_path(path, :polling_interval => 0.1, :notification => false)
|
|
37
|
+
end
|
|
38
|
+
rescue
|
|
39
|
+
puts "RATHER BAD ~~~~~"
|
|
40
|
+
puts $!.message
|
|
41
|
+
puts $!.backtrace.join("\n ")
|
|
42
|
+
end
|
|
43
|
+
end
|
|
44
|
+
end
|
|
45
|
+
begin
|
|
46
|
+
sleep 1
|
|
47
|
+
yield sub_paths.map{|sp| sp.first}
|
|
48
|
+
ensure
|
|
49
|
+
pids.each { |pid| Process.kill("INT", pid) rescue nil }
|
|
50
|
+
end
|
|
51
|
+
ensure
|
|
52
|
+
FileUtils.rm_rf("/tmp/gitdocs") unless ENV['DEBUG']
|
|
53
|
+
end
|
|
54
|
+
end
|
metadata
ADDED
|
@@ -0,0 +1,370 @@
|
|
|
1
|
+
--- !ruby/object:Gem::Specification
|
|
2
|
+
name: siuying-gitdocs
|
|
3
|
+
version: !ruby/object:Gem::Version
|
|
4
|
+
version: 0.4.14.md
|
|
5
|
+
prerelease: 7
|
|
6
|
+
platform: ruby
|
|
7
|
+
authors:
|
|
8
|
+
- Josh Hull
|
|
9
|
+
- Nathan Esquenazi
|
|
10
|
+
autorequire:
|
|
11
|
+
bindir: bin
|
|
12
|
+
cert_chain: []
|
|
13
|
+
date: 2012-01-27 00:00:00.000000000 Z
|
|
14
|
+
dependencies:
|
|
15
|
+
- !ruby/object:Gem::Dependency
|
|
16
|
+
name: joshbuddy-guard
|
|
17
|
+
requirement: &70209005243520 !ruby/object:Gem::Requirement
|
|
18
|
+
none: false
|
|
19
|
+
requirements:
|
|
20
|
+
- - ~>
|
|
21
|
+
- !ruby/object:Gem::Version
|
|
22
|
+
version: 0.10.0
|
|
23
|
+
type: :runtime
|
|
24
|
+
prerelease: false
|
|
25
|
+
version_requirements: *70209005243520
|
|
26
|
+
- !ruby/object:Gem::Dependency
|
|
27
|
+
name: thin
|
|
28
|
+
requirement: &70209005243020 !ruby/object:Gem::Requirement
|
|
29
|
+
none: false
|
|
30
|
+
requirements:
|
|
31
|
+
- - ~>
|
|
32
|
+
- !ruby/object:Gem::Version
|
|
33
|
+
version: 1.3.1
|
|
34
|
+
type: :runtime
|
|
35
|
+
prerelease: false
|
|
36
|
+
version_requirements: *70209005243020
|
|
37
|
+
- !ruby/object:Gem::Dependency
|
|
38
|
+
name: renee
|
|
39
|
+
requirement: &70209005242560 !ruby/object:Gem::Requirement
|
|
40
|
+
none: false
|
|
41
|
+
requirements:
|
|
42
|
+
- - ~>
|
|
43
|
+
- !ruby/object:Gem::Version
|
|
44
|
+
version: 0.3.7
|
|
45
|
+
type: :runtime
|
|
46
|
+
prerelease: false
|
|
47
|
+
version_requirements: *70209005242560
|
|
48
|
+
- !ruby/object:Gem::Dependency
|
|
49
|
+
name: redcarpet
|
|
50
|
+
requirement: &70209005242100 !ruby/object:Gem::Requirement
|
|
51
|
+
none: false
|
|
52
|
+
requirements:
|
|
53
|
+
- - ~>
|
|
54
|
+
- !ruby/object:Gem::Version
|
|
55
|
+
version: 2.0.0
|
|
56
|
+
type: :runtime
|
|
57
|
+
prerelease: false
|
|
58
|
+
version_requirements: *70209005242100
|
|
59
|
+
- !ruby/object:Gem::Dependency
|
|
60
|
+
name: thor
|
|
61
|
+
requirement: &70209005241640 !ruby/object:Gem::Requirement
|
|
62
|
+
none: false
|
|
63
|
+
requirements:
|
|
64
|
+
- - ~>
|
|
65
|
+
- !ruby/object:Gem::Version
|
|
66
|
+
version: 0.14.6
|
|
67
|
+
type: :runtime
|
|
68
|
+
prerelease: false
|
|
69
|
+
version_requirements: *70209005241640
|
|
70
|
+
- !ruby/object:Gem::Dependency
|
|
71
|
+
name: coderay
|
|
72
|
+
requirement: &70209005241180 !ruby/object:Gem::Requirement
|
|
73
|
+
none: false
|
|
74
|
+
requirements:
|
|
75
|
+
- - ~>
|
|
76
|
+
- !ruby/object:Gem::Version
|
|
77
|
+
version: 1.0.4
|
|
78
|
+
type: :runtime
|
|
79
|
+
prerelease: false
|
|
80
|
+
version_requirements: *70209005241180
|
|
81
|
+
- !ruby/object:Gem::Dependency
|
|
82
|
+
name: dante
|
|
83
|
+
requirement: &70209005240720 !ruby/object:Gem::Requirement
|
|
84
|
+
none: false
|
|
85
|
+
requirements:
|
|
86
|
+
- - ~>
|
|
87
|
+
- !ruby/object:Gem::Version
|
|
88
|
+
version: 0.1.2
|
|
89
|
+
type: :runtime
|
|
90
|
+
prerelease: false
|
|
91
|
+
version_requirements: *70209005240720
|
|
92
|
+
- !ruby/object:Gem::Dependency
|
|
93
|
+
name: growl
|
|
94
|
+
requirement: &70209005240260 !ruby/object:Gem::Requirement
|
|
95
|
+
none: false
|
|
96
|
+
requirements:
|
|
97
|
+
- - ~>
|
|
98
|
+
- !ruby/object:Gem::Version
|
|
99
|
+
version: 1.0.3
|
|
100
|
+
type: :runtime
|
|
101
|
+
prerelease: false
|
|
102
|
+
version_requirements: *70209005240260
|
|
103
|
+
- !ruby/object:Gem::Dependency
|
|
104
|
+
name: yajl-ruby
|
|
105
|
+
requirement: &70209005239800 !ruby/object:Gem::Requirement
|
|
106
|
+
none: false
|
|
107
|
+
requirements:
|
|
108
|
+
- - ~>
|
|
109
|
+
- !ruby/object:Gem::Version
|
|
110
|
+
version: 1.1.0
|
|
111
|
+
type: :runtime
|
|
112
|
+
prerelease: false
|
|
113
|
+
version_requirements: *70209005239800
|
|
114
|
+
- !ruby/object:Gem::Dependency
|
|
115
|
+
name: haml
|
|
116
|
+
requirement: &70209005239340 !ruby/object:Gem::Requirement
|
|
117
|
+
none: false
|
|
118
|
+
requirements:
|
|
119
|
+
- - ~>
|
|
120
|
+
- !ruby/object:Gem::Version
|
|
121
|
+
version: 3.1.4
|
|
122
|
+
type: :runtime
|
|
123
|
+
prerelease: false
|
|
124
|
+
version_requirements: *70209005239340
|
|
125
|
+
- !ruby/object:Gem::Dependency
|
|
126
|
+
name: sqlite3
|
|
127
|
+
requirement: &70209005238880 !ruby/object:Gem::Requirement
|
|
128
|
+
none: false
|
|
129
|
+
requirements:
|
|
130
|
+
- - ~>
|
|
131
|
+
- !ruby/object:Gem::Version
|
|
132
|
+
version: 1.3.4
|
|
133
|
+
type: :runtime
|
|
134
|
+
prerelease: false
|
|
135
|
+
version_requirements: *70209005238880
|
|
136
|
+
- !ruby/object:Gem::Dependency
|
|
137
|
+
name: activerecord
|
|
138
|
+
requirement: &70208992173860 !ruby/object:Gem::Requirement
|
|
139
|
+
none: false
|
|
140
|
+
requirements:
|
|
141
|
+
- - ~>
|
|
142
|
+
- !ruby/object:Gem::Version
|
|
143
|
+
version: 3.1.0
|
|
144
|
+
type: :runtime
|
|
145
|
+
prerelease: false
|
|
146
|
+
version_requirements: *70208992173860
|
|
147
|
+
- !ruby/object:Gem::Dependency
|
|
148
|
+
name: grit
|
|
149
|
+
requirement: &70208992168960 !ruby/object:Gem::Requirement
|
|
150
|
+
none: false
|
|
151
|
+
requirements:
|
|
152
|
+
- - ~>
|
|
153
|
+
- !ruby/object:Gem::Version
|
|
154
|
+
version: 2.4.1
|
|
155
|
+
type: :runtime
|
|
156
|
+
prerelease: false
|
|
157
|
+
version_requirements: *70208992168960
|
|
158
|
+
- !ruby/object:Gem::Dependency
|
|
159
|
+
name: shell_tools
|
|
160
|
+
requirement: &70208992166400 !ruby/object:Gem::Requirement
|
|
161
|
+
none: false
|
|
162
|
+
requirements:
|
|
163
|
+
- - ~>
|
|
164
|
+
- !ruby/object:Gem::Version
|
|
165
|
+
version: 0.1.0
|
|
166
|
+
type: :runtime
|
|
167
|
+
prerelease: false
|
|
168
|
+
version_requirements: *70208992166400
|
|
169
|
+
- !ruby/object:Gem::Dependency
|
|
170
|
+
name: mimetype-fu
|
|
171
|
+
requirement: &70208999966100 !ruby/object:Gem::Requirement
|
|
172
|
+
none: false
|
|
173
|
+
requirements:
|
|
174
|
+
- - ~>
|
|
175
|
+
- !ruby/object:Gem::Version
|
|
176
|
+
version: 0.1.2
|
|
177
|
+
type: :runtime
|
|
178
|
+
prerelease: false
|
|
179
|
+
version_requirements: *70208999966100
|
|
180
|
+
- !ruby/object:Gem::Dependency
|
|
181
|
+
name: eventmachine
|
|
182
|
+
requirement: &70208999965640 !ruby/object:Gem::Requirement
|
|
183
|
+
none: false
|
|
184
|
+
requirements:
|
|
185
|
+
- - ! '>='
|
|
186
|
+
- !ruby/object:Gem::Version
|
|
187
|
+
version: 1.0.0.beta.3
|
|
188
|
+
type: :runtime
|
|
189
|
+
prerelease: false
|
|
190
|
+
version_requirements: *70208999965640
|
|
191
|
+
- !ruby/object:Gem::Dependency
|
|
192
|
+
name: pygments.rb
|
|
193
|
+
requirement: &70208999965260 !ruby/object:Gem::Requirement
|
|
194
|
+
none: false
|
|
195
|
+
requirements:
|
|
196
|
+
- - ! '>='
|
|
197
|
+
- !ruby/object:Gem::Version
|
|
198
|
+
version: '0'
|
|
199
|
+
type: :runtime
|
|
200
|
+
prerelease: false
|
|
201
|
+
version_requirements: *70208999965260
|
|
202
|
+
- !ruby/object:Gem::Dependency
|
|
203
|
+
name: minitest
|
|
204
|
+
requirement: &70208999964720 !ruby/object:Gem::Requirement
|
|
205
|
+
none: false
|
|
206
|
+
requirements:
|
|
207
|
+
- - ~>
|
|
208
|
+
- !ruby/object:Gem::Version
|
|
209
|
+
version: 2.6.1
|
|
210
|
+
type: :development
|
|
211
|
+
prerelease: false
|
|
212
|
+
version_requirements: *70208999964720
|
|
213
|
+
- !ruby/object:Gem::Dependency
|
|
214
|
+
name: rake
|
|
215
|
+
requirement: &70208999964300 !ruby/object:Gem::Requirement
|
|
216
|
+
none: false
|
|
217
|
+
requirements:
|
|
218
|
+
- - ! '>='
|
|
219
|
+
- !ruby/object:Gem::Version
|
|
220
|
+
version: '0'
|
|
221
|
+
type: :development
|
|
222
|
+
prerelease: false
|
|
223
|
+
version_requirements: *70208999964300
|
|
224
|
+
- !ruby/object:Gem::Dependency
|
|
225
|
+
name: mocha
|
|
226
|
+
requirement: &70208999963840 !ruby/object:Gem::Requirement
|
|
227
|
+
none: false
|
|
228
|
+
requirements:
|
|
229
|
+
- - ! '>='
|
|
230
|
+
- !ruby/object:Gem::Version
|
|
231
|
+
version: '0'
|
|
232
|
+
type: :development
|
|
233
|
+
prerelease: false
|
|
234
|
+
version_requirements: *70208999963840
|
|
235
|
+
- !ruby/object:Gem::Dependency
|
|
236
|
+
name: fakeweb
|
|
237
|
+
requirement: &70208999963420 !ruby/object:Gem::Requirement
|
|
238
|
+
none: false
|
|
239
|
+
requirements:
|
|
240
|
+
- - ! '>='
|
|
241
|
+
- !ruby/object:Gem::Version
|
|
242
|
+
version: '0'
|
|
243
|
+
type: :development
|
|
244
|
+
prerelease: false
|
|
245
|
+
version_requirements: *70208999963420
|
|
246
|
+
description: Open-source Dropbox using Ruby and Git (my fork with github favoured
|
|
247
|
+
markdown support).
|
|
248
|
+
email:
|
|
249
|
+
- joshbuddy@gmail.com
|
|
250
|
+
- nesquena@gmail.com
|
|
251
|
+
executables:
|
|
252
|
+
- gitdocs
|
|
253
|
+
extensions: []
|
|
254
|
+
extra_rdoc_files: []
|
|
255
|
+
files:
|
|
256
|
+
- .gitignore
|
|
257
|
+
- CHANGELOG
|
|
258
|
+
- Gemfile
|
|
259
|
+
- LICENSE
|
|
260
|
+
- README.md
|
|
261
|
+
- Rakefile
|
|
262
|
+
- bin/gitdocs
|
|
263
|
+
- gitdocs.gemspec
|
|
264
|
+
- lib/gitdocs.rb
|
|
265
|
+
- lib/gitdocs/cli.rb
|
|
266
|
+
- lib/gitdocs/configuration.rb
|
|
267
|
+
- lib/gitdocs/docfile.rb
|
|
268
|
+
- lib/gitdocs/manager.rb
|
|
269
|
+
- lib/gitdocs/markdown_converter.rb
|
|
270
|
+
- lib/gitdocs/markdown_template.rb
|
|
271
|
+
- lib/gitdocs/migration/001_create_shares.rb
|
|
272
|
+
- lib/gitdocs/migration/002_add_remote_branch.rb
|
|
273
|
+
- lib/gitdocs/migration/003_create_configs.rb
|
|
274
|
+
- lib/gitdocs/migration/004_add_index_for_path.rb
|
|
275
|
+
- lib/gitdocs/migration/005_add_start_web_frontend.rb
|
|
276
|
+
- lib/gitdocs/migration/006_add_web_port_to_config.rb
|
|
277
|
+
- lib/gitdocs/public/css/app.css
|
|
278
|
+
- lib/gitdocs/public/css/bootstrap.css
|
|
279
|
+
- lib/gitdocs/public/css/coderay.css
|
|
280
|
+
- lib/gitdocs/public/css/tilt.css
|
|
281
|
+
- lib/gitdocs/public/img/error.png
|
|
282
|
+
- lib/gitdocs/public/img/file.png
|
|
283
|
+
- lib/gitdocs/public/img/folder.png
|
|
284
|
+
- lib/gitdocs/public/img/git_logo.png
|
|
285
|
+
- lib/gitdocs/public/img/info.png
|
|
286
|
+
- lib/gitdocs/public/img/ok.png
|
|
287
|
+
- lib/gitdocs/public/img/warning.png
|
|
288
|
+
- lib/gitdocs/public/js/ace/ace-compat.js
|
|
289
|
+
- lib/gitdocs/public/js/ace/ace-uncompressed.js
|
|
290
|
+
- lib/gitdocs/public/js/ace/ace.js
|
|
291
|
+
- lib/gitdocs/public/js/ace/keybinding-emacs.js
|
|
292
|
+
- lib/gitdocs/public/js/ace/keybinding-vim.js
|
|
293
|
+
- lib/gitdocs/public/js/ace/mode-coffee.js
|
|
294
|
+
- lib/gitdocs/public/js/ace/mode-css.js
|
|
295
|
+
- lib/gitdocs/public/js/ace/mode-html.js
|
|
296
|
+
- lib/gitdocs/public/js/ace/mode-javascript.js
|
|
297
|
+
- lib/gitdocs/public/js/ace/mode-json.js
|
|
298
|
+
- lib/gitdocs/public/js/ace/mode-lua.js
|
|
299
|
+
- lib/gitdocs/public/js/ace/mode-markdown.js
|
|
300
|
+
- lib/gitdocs/public/js/ace/mode-php.js
|
|
301
|
+
- lib/gitdocs/public/js/ace/mode-python.js
|
|
302
|
+
- lib/gitdocs/public/js/ace/mode-ruby.js
|
|
303
|
+
- lib/gitdocs/public/js/ace/mode-scala.js
|
|
304
|
+
- lib/gitdocs/public/js/ace/mode-scss.js
|
|
305
|
+
- lib/gitdocs/public/js/ace/mode-sql.js
|
|
306
|
+
- lib/gitdocs/public/js/ace/mode-svg.js
|
|
307
|
+
- lib/gitdocs/public/js/ace/mode-textile.js
|
|
308
|
+
- lib/gitdocs/public/js/ace/mode-xml.js
|
|
309
|
+
- lib/gitdocs/public/js/ace/theme-tomorrow.js
|
|
310
|
+
- lib/gitdocs/public/js/ace/theme-tomorrow_night.js
|
|
311
|
+
- lib/gitdocs/public/js/ace/theme-tomorrow_night_blue.js
|
|
312
|
+
- lib/gitdocs/public/js/ace/theme-twilight.js
|
|
313
|
+
- lib/gitdocs/public/js/ace/theme-vibrant_ink.js
|
|
314
|
+
- lib/gitdocs/public/js/ace/worker-coffee.js
|
|
315
|
+
- lib/gitdocs/public/js/ace/worker-css.js
|
|
316
|
+
- lib/gitdocs/public/js/ace/worker-javascript.js
|
|
317
|
+
- lib/gitdocs/public/js/app.js
|
|
318
|
+
- lib/gitdocs/public/js/bootstrap-alerts.js
|
|
319
|
+
- lib/gitdocs/public/js/edit.js
|
|
320
|
+
- lib/gitdocs/public/js/jquery.js
|
|
321
|
+
- lib/gitdocs/public/js/jquery.tablesorter.js
|
|
322
|
+
- lib/gitdocs/public/js/search.js
|
|
323
|
+
- lib/gitdocs/public/js/settings.js
|
|
324
|
+
- lib/gitdocs/public/js/util.js
|
|
325
|
+
- lib/gitdocs/runner.rb
|
|
326
|
+
- lib/gitdocs/server.rb
|
|
327
|
+
- lib/gitdocs/version.rb
|
|
328
|
+
- lib/gitdocs/views/_ace_scripts.erb
|
|
329
|
+
- lib/gitdocs/views/_header.haml
|
|
330
|
+
- lib/gitdocs/views/app.haml
|
|
331
|
+
- lib/gitdocs/views/dir.haml
|
|
332
|
+
- lib/gitdocs/views/edit.haml
|
|
333
|
+
- lib/gitdocs/views/file.haml
|
|
334
|
+
- lib/gitdocs/views/home.haml
|
|
335
|
+
- lib/gitdocs/views/revisions.haml
|
|
336
|
+
- lib/gitdocs/views/search.haml
|
|
337
|
+
- lib/gitdocs/views/settings.haml
|
|
338
|
+
- lib/img/icon.png
|
|
339
|
+
- test/configuration_test.rb
|
|
340
|
+
- test/runner_test.rb
|
|
341
|
+
- test/test_helper.rb
|
|
342
|
+
homepage: https://github.com/siuying/gitdocs
|
|
343
|
+
licenses: []
|
|
344
|
+
post_install_message:
|
|
345
|
+
rdoc_options: []
|
|
346
|
+
require_paths:
|
|
347
|
+
- lib
|
|
348
|
+
required_ruby_version: !ruby/object:Gem::Requirement
|
|
349
|
+
none: false
|
|
350
|
+
requirements:
|
|
351
|
+
- - ! '>='
|
|
352
|
+
- !ruby/object:Gem::Version
|
|
353
|
+
version: '0'
|
|
354
|
+
required_rubygems_version: !ruby/object:Gem::Requirement
|
|
355
|
+
none: false
|
|
356
|
+
requirements:
|
|
357
|
+
- - ! '>'
|
|
358
|
+
- !ruby/object:Gem::Version
|
|
359
|
+
version: 1.3.1
|
|
360
|
+
requirements: []
|
|
361
|
+
rubyforge_project:
|
|
362
|
+
rubygems_version: 1.8.15
|
|
363
|
+
signing_key:
|
|
364
|
+
specification_version: 3
|
|
365
|
+
summary: Open-source Dropbox using Ruby and Git (my fork with github favoured markdown
|
|
366
|
+
support)
|
|
367
|
+
test_files:
|
|
368
|
+
- test/configuration_test.rb
|
|
369
|
+
- test/runner_test.rb
|
|
370
|
+
- test/test_helper.rb
|