dev_git 0.0.2 → 0.0.3

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.
Files changed (4) hide show
  1. data/README.md +34 -1
  2. data/lib/git.rb +24 -19
  3. data/spec/git_spec.rb +34 -0
  4. metadata +4 -35
data/README.md CHANGED
@@ -1 +1,34 @@
1
- # dev_git.gem
1
+ ## dev_git <img src="https://badge.fury.io/rb/dev_git.png" alt="Gem Version" />
2
+
3
+ A ruby gem to assist with git operations.
4
+ The dev_tasks gem defines a constant DEV
5
+
6
+ ### Installation
7
+
8
+ The gem can be installed by the single command
9
+ ```
10
+ gem install dev_git
11
+ ```
12
+
13
+ ### Usage
14
+
15
+ This is an example of a simple usage
16
+ ```
17
+ require 'dev_git'
18
+ ```
19
+
20
+ ### License
21
+ Copyright 2014-2015 Lou Parslow
22
+
23
+ Licensed under the Apache License, Version 2.0 (the "License");
24
+ you may not use this file except in compliance with the License.
25
+ You may obtain a copy of the License at
26
+
27
+ http://www.apache.org/licenses/LICENSE-2.0
28
+
29
+ Unless required by applicable law or agreed to in writing, software
30
+ distributed under the License is distributed on an "AS IS" BASIS,
31
+ WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
32
+ See the License for the specific language governing permissions and
33
+ limitations under the License.
34
+
data/lib/git.rb CHANGED
@@ -1,10 +1,13 @@
1
1
  class Git
2
- def self.branch
3
- begin
4
- `git branch`.scan(/\* ([.\w-]+)/)[0][0] if(File.exists?('.git'))
5
- rescue
6
- ''
7
- end
2
+ def self.branch directory=''
3
+ directory=Dir.pwd if directory.length == 0
4
+ Dir.chdir(directory) do
5
+ begin
6
+ `git branch`.scan(/\* ([.\w-]+)/)[0][0] if(File.exists?('.git'))
7
+ rescue
8
+ ''
9
+ end
10
+ end
8
11
  end
9
12
 
10
13
  def self.remote_origin directory=''
@@ -28,19 +31,21 @@ class Git
28
31
  end
29
32
  end
30
33
  false
31
- # $ git status
32
- # On branch master
33
- # nothing to commit, working directory clean
34
-
35
- # $ git status
36
- # On branch master
37
- # Changes not staged for commit:
38
- # (use "git add <file>..." to update what will be committed)
39
- # (use "git checkout -- <file>..." to discard changes in working directory)
40
- #
41
- # modified: lib/git.rb
42
- #
43
- # no changes added to commit (use "git add" and/or "git commit -a")
34
+ end
44
35
 
36
+ def self.init directory=''
37
+ directory=Dir.pwd if directory.length==0
38
+ FileUtils.mkpath directory if !File.exists?(directory)
39
+ if(!File.exists?("#{directory}/.git"))
40
+ Dir.chdir(directory) do
41
+ `git init`
42
+ File.open('.gitignore','w'){|f|
43
+ f.puts '### Mac ###'
44
+ f.puts '*.DS_Store'
45
+ }
46
+ `git add .gitignore`
47
+ `git commit -m'added .gitignore'`
48
+ end
49
+ end
45
50
  end
46
51
  end
data/spec/git_spec.rb CHANGED
@@ -1,4 +1,5 @@
1
1
  require_relative '../lib/git.rb'
2
+ require 'fileutils'
2
3
 
3
4
  describe Git do
4
5
  it "should be able to get the remote origin" do
@@ -8,4 +9,37 @@ describe Git do
8
9
  it "should be able to get the current branch" do
9
10
  expect(Git.branch).not_to eq('')
10
11
  end
12
+
13
+ it "should be able to perform a basic workflow" do
14
+ repo_dir="#{File.dirname(__FILE__)}/tmp/repo"
15
+
16
+ FileUtils.rm_r repo_dir if File.exists?(repo_dir)
17
+
18
+ Git.init repo_dir
19
+ #FileUtils.mkpath repo_dir if !File.exists?(repo_dir)
20
+ #Dir.chdir(repo_dir) do
21
+ # `git init`
22
+ # File.open('.gitignore','w'){|f|
23
+ # f.puts '### Ruby ###'
24
+ # f.puts '*.gem'
25
+ # }
26
+ # `git add .gitignore`
27
+ # `git commit -m'added .gitignore'`
28
+ #end
29
+ expect(File.exists?("#{repo_dir}/.git")).to eq(true)
30
+ #Node.Net.Environment.Command createMaster = new Node.Net.Environment.Command("git checkout -b master", workingPath);
31
+ #expect(Git.branch repo_dir).to eq('master')
32
+
33
+ wrk_dir="#{File.dirname(__FILE__)}/tmp/wrk"
34
+ FileUtils.rm_r wrk_dir if File.exists?(wrk_dir)
35
+ `git clone #{repo_dir} #{wrk_dir}`
36
+ expect(File.exists?("#{wrk_dir}/.git")).to eq(true)
37
+ Dir.chdir(wrk_dir) do
38
+ #{}`git checkout -b master`
39
+ #expect(Git.branch).to eq('master')
40
+ end
41
+ #expect(Git.branch wrk_dir).to eq('master')
42
+ FileUtils.rm_r repo_dir
43
+ FileUtils.rm_r wrk_dir
44
+ end
11
45
  end
metadata CHANGED
@@ -1,7 +1,7 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: dev_git
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.0.2
4
+ version: 0.0.3
5
5
  prerelease:
6
6
  platform: ruby
7
7
  authors:
@@ -9,40 +9,8 @@ authors:
9
9
  autorequire:
10
10
  bindir: bin
11
11
  cert_chain: []
12
- date: 2015-01-19 00:00:00.000000000 Z
13
- dependencies:
14
- - !ruby/object:Gem::Dependency
15
- name: rake
16
- requirement: !ruby/object:Gem::Requirement
17
- none: false
18
- requirements:
19
- - - ~>
20
- - !ruby/object:Gem::Version
21
- version: '10.0'
22
- type: :development
23
- prerelease: false
24
- version_requirements: !ruby/object:Gem::Requirement
25
- none: false
26
- requirements:
27
- - - ~>
28
- - !ruby/object:Gem::Version
29
- version: '10.0'
30
- - !ruby/object:Gem::Dependency
31
- name: rspec
32
- requirement: !ruby/object:Gem::Requirement
33
- none: false
34
- requirements:
35
- - - ~>
36
- - !ruby/object:Gem::Version
37
- version: '3.0'
38
- type: :development
39
- prerelease: false
40
- version_requirements: !ruby/object:Gem::Requirement
41
- none: false
42
- requirements:
43
- - - ~>
44
- - !ruby/object:Gem::Version
45
- version: '3.0'
12
+ date: 2015-04-06 00:00:00.000000000 Z
13
+ dependencies: []
46
14
  description: execution of git operations
47
15
  email: lou.parslow@gmail.com
48
16
  executables: []
@@ -81,3 +49,4 @@ signing_key:
81
49
  specification_version: 3
82
50
  summary: gem to assist with git operations
83
51
  test_files: []
52
+ has_rdoc: