git-dropbox 0.2.0 → 0.2.1

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/README.md CHANGED
@@ -11,11 +11,26 @@ Gem mirrors your git repositorys in dropbox folder. It's based on shell script f
11
11
 
12
12
  ## Features
13
13
 
14
+ 1. Synchronizes single repo to dropbox
15
+ 2. Synchronizes all knows repos to dropbox
16
+ 3. Lists all knows repos
17
+ 4. Saves configuration in your dropbox folder `~/Dropbox/git/git-dropbox.yml`
18
+
14
19
  ## Examples
15
20
 
16
- require 'git/dropbox'
21
+ ### Synchronize single repo
22
+
23
+ $ git dropbox init
24
+ $ cd to your project
25
+ $ git dropbox sync
26
+
27
+ ### List synchronized repos
28
+
29
+ $ git dropbox list
30
+
31
+ ### Synchronize all known repos
17
32
 
18
- ## Requirements
33
+ $ git dropbox sync --all
19
34
 
20
35
  ## Install
21
36
 
@@ -3,13 +3,19 @@ require "thor"
3
3
  module Git
4
4
  module Dropbox
5
5
  class CLI < Thor
6
+ include Thor::Actions
6
7
 
7
8
 
8
9
  desc 'sync', 'Syncs current git repository to dropbox folder'
10
+ method_options :all => false
9
11
 
10
12
  def sync
11
- config = Git::Dropbox::Config.load
12
- Repository.new(config).sync(Dir.pwd)
13
+ config = load_config
14
+ repositories = options[:all] ? config['repositories'] : [Dir.pwd]
15
+ repositories.each do |repo|
16
+ say "Synchronizing repository #{repo}"
17
+ Repository.new(config).sync(repo)
18
+ end
13
19
  end
14
20
 
15
21
  desc 'init', 'Initialize this gem'
@@ -22,10 +28,15 @@ module Git
22
28
  desc "list", "Shows all repositories"
23
29
 
24
30
  def list
25
- config = Git::Dropbox::Config.load
31
+ config = load_config
26
32
  config['repositories'].each { |r| puts r }
27
33
  end
28
34
 
35
+ private
36
+ def load_config
37
+ Git::Dropbox::Config.load
38
+ end
39
+
29
40
 
30
41
  end
31
42
  end
@@ -6,13 +6,15 @@ class Repository
6
6
  @config = config
7
7
  end
8
8
 
9
- def sync(repo)
10
- puts "About to sync #{repo}"
11
- system DROPBOX_GIT_CMD
12
- @config['repositories'] ||= []
13
- @config['repositories'] << repo
14
- @config['repositories'].uniq!
15
- @config.save
9
+ def sync(repo, add_repo_to_list=true)
10
+ system "cd #{repo}; #{DROPBOX_GIT_CMD}"
11
+ if add_repo_to_list
12
+ @config['repositories'] ||= []
13
+ @config['repositories'] << repo
14
+ @config['repositories'].uniq!
15
+ @config.save
16
+ end
16
17
  end
17
18
 
19
+
18
20
  end
@@ -1,6 +1,6 @@
1
1
  module Git
2
2
  module Dropbox
3
3
  # git-dropbox version
4
- VERSION = "0.2.0"
4
+ VERSION = "0.2.1"
5
5
  end
6
6
  end
metadata CHANGED
@@ -1,7 +1,7 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: git-dropbox
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.2.0
4
+ version: 0.2.1
5
5
  prerelease:
6
6
  platform: ruby
7
7
  authors:
@@ -9,11 +9,11 @@ authors:
9
9
  autorequire:
10
10
  bindir: bin
11
11
  cert_chain: []
12
- date: 2012-08-02 00:00:00.000000000Z
12
+ date: 2012-08-05 00:00:00.000000000Z
13
13
  dependencies:
14
14
  - !ruby/object:Gem::Dependency
15
15
  name: thor
16
- requirement: &2155430380 !ruby/object:Gem::Requirement
16
+ requirement: &2154934280 !ruby/object:Gem::Requirement
17
17
  none: false
18
18
  requirements:
19
19
  - - ~>
@@ -21,10 +21,10 @@ dependencies:
21
21
  version: 0.15.4
22
22
  type: :runtime
23
23
  prerelease: false
24
- version_requirements: *2155430380
24
+ version_requirements: *2154934280
25
25
  - !ruby/object:Gem::Dependency
26
26
  name: bundler
27
- requirement: &2155429880 !ruby/object:Gem::Requirement
27
+ requirement: &2154929500 !ruby/object:Gem::Requirement
28
28
  none: false
29
29
  requirements:
30
30
  - - ~>
@@ -32,10 +32,10 @@ dependencies:
32
32
  version: '1.0'
33
33
  type: :development
34
34
  prerelease: false
35
- version_requirements: *2155429880
35
+ version_requirements: *2154929500
36
36
  - !ruby/object:Gem::Dependency
37
37
  name: rake
38
- requirement: &2155429420 !ruby/object:Gem::Requirement
38
+ requirement: &2154929020 !ruby/object:Gem::Requirement
39
39
  none: false
40
40
  requirements:
41
41
  - - ~>
@@ -43,10 +43,10 @@ dependencies:
43
43
  version: '0.8'
44
44
  type: :development
45
45
  prerelease: false
46
- version_requirements: *2155429420
46
+ version_requirements: *2154929020
47
47
  - !ruby/object:Gem::Dependency
48
48
  name: rspec
49
- requirement: &2155428900 !ruby/object:Gem::Requirement
49
+ requirement: &2154928540 !ruby/object:Gem::Requirement
50
50
  none: false
51
51
  requirements:
52
52
  - - ~>
@@ -54,10 +54,10 @@ dependencies:
54
54
  version: '2.4'
55
55
  type: :development
56
56
  prerelease: false
57
- version_requirements: *2155428900
57
+ version_requirements: *2154928540
58
58
  - !ruby/object:Gem::Dependency
59
59
  name: rubygems-tasks
60
- requirement: &2155428400 !ruby/object:Gem::Requirement
60
+ requirement: &2154928080 !ruby/object:Gem::Requirement
61
61
  none: false
62
62
  requirements:
63
63
  - - ~>
@@ -65,7 +65,7 @@ dependencies:
65
65
  version: '0.2'
66
66
  type: :development
67
67
  prerelease: false
68
- version_requirements: *2155428400
68
+ version_requirements: *2154928080
69
69
  description: Gem mirrors your git repositorys in dropbox folder
70
70
  email: lukasz.kaniowski@gmail.com
71
71
  executables:
@@ -105,7 +105,7 @@ required_ruby_version: !ruby/object:Gem::Requirement
105
105
  version: '0'
106
106
  segments:
107
107
  - 0
108
- hash: 2521307909805871201
108
+ hash: -81121427720390238
109
109
  required_rubygems_version: !ruby/object:Gem::Requirement
110
110
  none: false
111
111
  requirements: