git-object-browser 0.0.7 → 0.0.8
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/LICENSE +1 -1
- data/README.md +4 -2
- data/git-object-browser.gemspec +1 -0
- data/lib/git-object-browser.rb +6 -5
- data/lib/git-object-browser/dumper/main.rb +4 -1
- data/lib/git-object-browser/dumper/plain_files_dumper.rb +1 -1
- data/lib/git-object-browser/dumper/reflog_dumper.rb +46 -0
- data/lib/git-object-browser/version.rb +1 -1
- metadata +6 -4
data/LICENSE
CHANGED
data/README.md
CHANGED
@@ -12,17 +12,19 @@ Browse git raw objects.
|
|
12
12
|
To browse .git directory:
|
13
13
|
|
14
14
|
$ git object-browser ./path/to/project
|
15
|
-
$ open http://localhost:8080/#/.git
|
15
|
+
$ open http://localhost:8080/#/.git/
|
16
16
|
|
17
17
|
To dump .git directory (dump HTML/JSON/JS app):
|
18
18
|
|
19
19
|
$ git object-browser --dump path/to/dump/dir path/to/project
|
20
20
|
$ ${any_http_server} --port 8080 path/to/dump/dir
|
21
|
-
$ open http://localhost:8080
|
21
|
+
$ open http://localhost:8080/#/.git/
|
22
22
|
|
23
23
|
To dump .git step by step:
|
24
24
|
|
25
25
|
$ git object-browser --dump path/to/dump/dir --next path/to/project
|
26
|
+
$ ${any_http_server} --port 8080 path/to/dump/dir
|
27
|
+
$ open http://localhost:8080/#/step1/.git/
|
26
28
|
|
27
29
|
this command shows .git diff between previous step and current step.
|
28
30
|
|
data/git-object-browser.gemspec
CHANGED
@@ -7,6 +7,7 @@ Gem::Specification.new do |gem|
|
|
7
7
|
gem.description = %q{Browse git raw objects.}
|
8
8
|
gem.summary = %q{Browse git raw objects.}
|
9
9
|
gem.homepage = 'https://github.com/koseki/git-object-browser'
|
10
|
+
gem.license = 'MIT'
|
10
11
|
|
11
12
|
gem.files = `git ls-files`.split($\)
|
12
13
|
gem.executables = gem.files.grep(%r{^bin/}).map{ |f| File.basename(f) }
|
data/lib/git-object-browser.rb
CHANGED
@@ -34,14 +34,15 @@ require "git-object-browser/server/main"
|
|
34
34
|
require "git-object-browser/server/git_servlet"
|
35
35
|
|
36
36
|
require "git-object-browser/dumper/main"
|
37
|
-
require "git-object-browser/dumper/objects_dumper"
|
38
|
-
require "git-object-browser/dumper/index_dumper"
|
39
37
|
require "git-object-browser/dumper/directories_dumper"
|
40
|
-
require "git-object-browser/dumper/
|
41
|
-
require "git-object-browser/dumper/
|
38
|
+
require "git-object-browser/dumper/index_dumper"
|
39
|
+
require "git-object-browser/dumper/info_refs_dumper"
|
40
|
+
require "git-object-browser/dumper/objects_dumper"
|
42
41
|
require "git-object-browser/dumper/packed_refs_dumper"
|
43
42
|
require "git-object-browser/dumper/pack_indexes_dumper"
|
44
43
|
require "git-object-browser/dumper/packed_objects_dumper"
|
45
|
-
require "git-object-browser/dumper/
|
44
|
+
require "git-object-browser/dumper/plain_files_dumper"
|
45
|
+
require "git-object-browser/dumper/reflog_dumper"
|
46
|
+
require "git-object-browser/dumper/refs_dumper"
|
46
47
|
|
47
48
|
GitObjectBrowser::Main.new().execute if __FILE__ == $0
|
@@ -102,7 +102,9 @@ module GitObjectBrowser
|
|
102
102
|
conf['loadDiff'] = true
|
103
103
|
end
|
104
104
|
conf['steps'] = [] unless conf['steps'].is_a? Array
|
105
|
-
|
105
|
+
if @step
|
106
|
+
conf['steps'] << { 'name' => @step, 'label' => @step }
|
107
|
+
end
|
106
108
|
|
107
109
|
File.open(default_file, 'w') do |io|
|
108
110
|
io << "// Edit config.js instead of this file.\n"
|
@@ -185,6 +187,7 @@ module GitObjectBrowser
|
|
185
187
|
[IndexDumper,
|
186
188
|
ObjectsDumper,
|
187
189
|
RefsDumper,
|
190
|
+
ReflogDumper,
|
188
191
|
DirectoriesDumper,
|
189
192
|
PlainFilesDumper,
|
190
193
|
PackIndexesDumper,
|
@@ -25,7 +25,7 @@ module GitObjectBrowser
|
|
25
25
|
Dir.chdir(@root) do
|
26
26
|
Dir.glob('*') do |path|
|
27
27
|
next if %w{HEAD FETCH_HEAD ORIG_HEAD MERGE_HEAD CHERRY_PICK_HEAD}.include?(path)
|
28
|
-
next if %w{dump index objects refs packed-refs}.include?(path)
|
28
|
+
next if %w{dump index objects refs packed-refs logs}.include?(path)
|
29
29
|
|
30
30
|
if File.directory?(path)
|
31
31
|
subdirs << path
|
@@ -0,0 +1,46 @@
|
|
1
|
+
# -*- coding: utf-8 -*-
|
2
|
+
|
3
|
+
module GitObjectBrowser
|
4
|
+
|
5
|
+
module Dumper
|
6
|
+
|
7
|
+
class ReflogDumper
|
8
|
+
|
9
|
+
def initialize(root, outdir)
|
10
|
+
@root = root
|
11
|
+
@outdir = outdir
|
12
|
+
end
|
13
|
+
|
14
|
+
def dump
|
15
|
+
files = []
|
16
|
+
Dir.chdir(@root) do
|
17
|
+
Dir.glob("logs/**/*") do |path|
|
18
|
+
files << path if File.file?(path)
|
19
|
+
end
|
20
|
+
end
|
21
|
+
return if files.empty?
|
22
|
+
|
23
|
+
files.each do |path|
|
24
|
+
file = File.join(@root, path)
|
25
|
+
next unless File.exist?(file)
|
26
|
+
outfile = File.join(@outdir, "#{ path }.json")
|
27
|
+
FileUtils.mkdir_p(File.dirname(outfile))
|
28
|
+
|
29
|
+
puts "Write: #{path}\n"
|
30
|
+
File.open(file) do |input|
|
31
|
+
File.open(outfile, "w") do |output|
|
32
|
+
dump_object(input, output, path)
|
33
|
+
end
|
34
|
+
end
|
35
|
+
end
|
36
|
+
end
|
37
|
+
|
38
|
+
def dump_object(input, output, path)
|
39
|
+
obj = GitObjectBrowser::Models::Reflog.new(input).parse
|
40
|
+
wrapped = GitObjectBrowser::Models::WrappedObject.new(nil, path, obj)
|
41
|
+
output << JSON.pretty_generate(wrapped.to_hash)
|
42
|
+
end
|
43
|
+
end
|
44
|
+
end
|
45
|
+
end
|
46
|
+
|
metadata
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: git-object-browser
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 0.0.
|
4
|
+
version: 0.0.8
|
5
5
|
prerelease:
|
6
6
|
platform: ruby
|
7
7
|
authors:
|
@@ -9,7 +9,7 @@ authors:
|
|
9
9
|
autorequire:
|
10
10
|
bindir: bin
|
11
11
|
cert_chain: []
|
12
|
-
date: 2013-08-
|
12
|
+
date: 2013-08-29 00:00:00.000000000 Z
|
13
13
|
dependencies: []
|
14
14
|
description: Browse git raw objects.
|
15
15
|
email:
|
@@ -87,6 +87,7 @@ files:
|
|
87
87
|
- lib/git-object-browser/dumper/packed_objects_dumper.rb
|
88
88
|
- lib/git-object-browser/dumper/packed_refs_dumper.rb
|
89
89
|
- lib/git-object-browser/dumper/plain_files_dumper.rb
|
90
|
+
- lib/git-object-browser/dumper/reflog_dumper.rb
|
90
91
|
- lib/git-object-browser/dumper/refs_dumper.rb
|
91
92
|
- lib/git-object-browser/main.rb
|
92
93
|
- lib/git-object-browser/models/bindata.rb
|
@@ -180,7 +181,8 @@ files:
|
|
180
181
|
- spec/git-object-browser/models/plain_file_spec.rb
|
181
182
|
- spec/spec_helper.rb
|
182
183
|
homepage: https://github.com/koseki/git-object-browser
|
183
|
-
licenses:
|
184
|
+
licenses:
|
185
|
+
- MIT
|
184
186
|
post_install_message:
|
185
187
|
rdoc_options: []
|
186
188
|
require_paths:
|
@@ -199,7 +201,7 @@ required_rubygems_version: !ruby/object:Gem::Requirement
|
|
199
201
|
version: '0'
|
200
202
|
segments:
|
201
203
|
- 0
|
202
|
-
hash:
|
204
|
+
hash: -1762485448778216421
|
203
205
|
requirements: []
|
204
206
|
rubyforge_project:
|
205
207
|
rubygems_version: 1.8.24
|