gitdocs 0.4.10 → 0.4.11
Sign up to get free protection for your applications and to get access to all the features.
- data/CHANGELOG +5 -0
- data/README.md +24 -13
- data/lib/gitdocs/public/css/tilt.css +1 -0
- data/lib/gitdocs/runner.rb +9 -1
- data/lib/gitdocs/version.rb +1 -1
- data/lib/gitdocs/views/dir.haml +1 -1
- metadata +2 -2
data/CHANGELOG
CHANGED
data/README.md
CHANGED
@@ -5,21 +5,21 @@ gitdocs will automatically keep everyone's repos in sync by pushing and pulling
|
|
5
5
|
This allows any git repo to be used as a collaborative task list, file share, or wiki for a team.
|
6
6
|
Supports a web front-end allowing each repo to be accessed through your browser.
|
7
7
|
|
8
|
-
**Note:** Gitdocs
|
9
|
-
|
10
|
-
|
8
|
+
**Note:** Gitdocs has been tested on multiple unix systems including Mac OS X and Ubuntu.
|
9
|
+
Windows support is [half-baked](https://github.com/bazaarlabs/gitdocs/issues/7)
|
10
|
+
but we plan to tackle that shortly in an upcoming release.
|
11
11
|
|
12
12
|
## Why?
|
13
13
|
|
14
|
-
Why
|
14
|
+
Why use gitdocs for your file and doc sharing needs?
|
15
15
|
|
16
16
|
* **Open** - gitdocs is entirely open-source under the MIT license
|
17
17
|
* **Simple** - gitdocs is the simplest thing that works in both setup and usage
|
18
18
|
* **Secure** - gitdocs leverages git (and existing providers like github) to store your data safely.
|
19
|
-
* **Versatile** - share task lists, code snippets, images, files or just use it as a wiki (with our web front-end)
|
20
|
-
* **Portable** - access your files
|
19
|
+
* **Versatile** - share task lists, code snippets, images, files or just use it as a wiki (with our web front-end).
|
20
|
+
* **Portable** - access your files on any client that can use git.
|
21
21
|
|
22
|
-
The best part is that
|
22
|
+
The best part is that getting started using this project is quick and simple.
|
23
23
|
|
24
24
|
## Quick Start
|
25
25
|
|
@@ -55,7 +55,7 @@ If you have Growl installed on Max OSX, you'll probably want to run:
|
|
55
55
|
brew install growlnotify
|
56
56
|
```
|
57
57
|
|
58
|
-
to enable Growl support
|
58
|
+
to enable Growl notification support.
|
59
59
|
|
60
60
|
## Usage
|
61
61
|
|
@@ -125,6 +125,7 @@ Gitdocs come with a handy web front-end that is available.
|
|
125
125
|
This browser front-end supports the following features:
|
126
126
|
|
127
127
|
* Explore the files within all your shares
|
128
|
+
* View revision history for every file in your share
|
128
129
|
* View source files in your shares with code syntax highlighting
|
129
130
|
* View text files in your shares with smart formatting (markdown, textile)
|
130
131
|
* View any file in your shares that can be rendered inline (pdf, images, et al)
|
@@ -144,19 +145,29 @@ Don't worry, gitdocs makes handling this simple. In the event of a conflict,
|
|
144
145
|
**all the different versions of a document are stored** in the repo tagged with the **git sha** for each
|
145
146
|
committed version. The members of the repo can then compare all versions and resolve the conflict.
|
146
147
|
|
148
|
+
## Gitdocs in Practice
|
149
|
+
|
150
|
+
At Miso, our team actually uses gitdocs in conjunction with Dropbox. We find Dropbox is ideal for galleries, videos,
|
151
|
+
and large binary files of all sorts. We use gitdocs for storing our actual "docs":
|
152
|
+
Task lists, wiki pages, planning docs, collaborative designs, notes, guides, code snippets, etc.
|
153
|
+
|
154
|
+
You will find that the gitdocs browser front-end is well suited for this usage scenario
|
155
|
+
since you can browse formatted wiki pages, view files with smart syntax highlighting,
|
156
|
+
edit files with a rich text editor, search all your files, as well as view individual file revision histories.
|
157
|
+
|
147
158
|
## Planned Features
|
148
159
|
|
149
|
-
Gitdocs is a young project but we have
|
160
|
+
Gitdocs is a young project but we have many plans for it including:
|
150
161
|
|
162
|
+
- Better handling of large binary files circumventing known git limitations
|
151
163
|
- Click-to-share instant access granting file access to users using a local tunnel or other means.
|
152
|
-
- Indexing and full-text search for all documents in a repo
|
153
|
-
- Better access to the versions for a particular file within the web front-end
|
154
164
|
- Tagging and organizing of files within the web front-end
|
165
|
+
- Better access to the versions for a particular file within the web front-end
|
155
166
|
|
156
167
|
## Prior Projects
|
157
168
|
|
158
|
-
Gitdocs is a fresh project that we spiked on in a few days time. Our primary goals are to keep the code as simple as possible,
|
159
|
-
but provide the features that makes
|
169
|
+
Gitdocs is a fresh project that we originally spiked on in a few days time. Our primary goals are to keep the code as simple as possible,
|
170
|
+
but provide the features that makes Dropbox great. If you are interested in other Dropbox alternatives, be sure to checkout our notes below:
|
160
171
|
|
161
172
|
* [SparkleShare](http://sparkleshare.org/) is an open source, self-hosted Dropbox alternative written using C# and the [Mono Project](http://www.mono-project.com/Main_Page).
|
162
173
|
More mature but has a lot of dependencies, and lacks some of the features planned in Gitdocs.
|
data/lib/gitdocs/runner.rb
CHANGED
@@ -13,9 +13,17 @@ module Gitdocs
|
|
13
13
|
|
14
14
|
SearchResult = Struct.new(:file, :context)
|
15
15
|
def search(term)
|
16
|
+
return [] if term.empty?
|
17
|
+
|
16
18
|
results = []
|
17
19
|
if result_test = sh_string("git grep -i #{ShellTools.escape(term)}")
|
18
|
-
result_test.scan(/(.*?):([^\n]*)/)
|
20
|
+
result_test.scan(/(.*?):([^\n]*)/) do |(file, context)|
|
21
|
+
if result = results.find { |s| s.file == file }
|
22
|
+
result.context += ' ... ' + context
|
23
|
+
else
|
24
|
+
results << SearchResult.new(file, context)
|
25
|
+
end
|
26
|
+
end
|
19
27
|
end
|
20
28
|
results
|
21
29
|
end
|
data/lib/gitdocs/version.rb
CHANGED
data/lib/gitdocs/views/dir.haml
CHANGED
@@ -29,7 +29,7 @@
|
|
29
29
|
.span6
|
30
30
|
%form.upload{ :method => "post", :enctype => "multipart/form-data", :action => "/#{idx}#{request.path_info}?mode=upload" }
|
31
31
|
%p Upload file to this directory
|
32
|
-
%input{:type => 'file', :value => "Select a file", :name => "file", :class => "uploader" }
|
32
|
+
%input{:type => 'file', :value => "Select a file", :name => "file", :class => "uploader", :size => 12}
|
33
33
|
%input{:type => 'submit', :value => "Upload file", :class => "btn secondary" }
|
34
34
|
.span6
|
35
35
|
%form.add
|
metadata
CHANGED
@@ -2,7 +2,7 @@
|
|
2
2
|
name: gitdocs
|
3
3
|
version: !ruby/object:Gem::Version
|
4
4
|
prerelease:
|
5
|
-
version: 0.4.
|
5
|
+
version: 0.4.11
|
6
6
|
platform: ruby
|
7
7
|
authors:
|
8
8
|
- Josh Hull
|
@@ -11,7 +11,7 @@ autorequire:
|
|
11
11
|
bindir: bin
|
12
12
|
cert_chain: []
|
13
13
|
|
14
|
-
date:
|
14
|
+
date: 2012-01-05 00:00:00 Z
|
15
15
|
dependencies:
|
16
16
|
- !ruby/object:Gem::Dependency
|
17
17
|
name: joshbuddy-guard
|