lgit 0.3.0 → 0.5.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.
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA256:
3
- metadata.gz: d29e963fe6d26aa9b8de93d7ec5509a3daa9efc4499233fe0d9e0e358b192c95
4
- data.tar.gz: ccc2fbdbcc21196e970249cf6197c44e803c2faa21a7f9b3f0985ec6e76cd8cf
3
+ metadata.gz: 2d930bd4c761f1bfb030903aa641b8a3acb0686cd95503363445e0f6de464d50
4
+ data.tar.gz: 98227fefbc3a5e6b665628452cbec23d4401d5c43a961c06fe7d98d578fc52b2
5
5
  SHA512:
6
- metadata.gz: d7238657b5b65fa0918e676090c9c058c2eac04f7b522adece8bf3bf3542541adfc7a500f75363289e9eaa4b43b085770dcc2560038efee4eb89fd443c63f40c
7
- data.tar.gz: 6c5bf22694a0df071acf6ece731f91ace66c407b4ec35ed8af58262b286114b0e51f2537af4dcf755cbc563a9eed1ec4d676af5d9cc1c5ecfa0ba9a39c1ddfcf
6
+ metadata.gz: a6c229fa6e2a027bb8ed01da054fd5708886e55845fe2fa71938805c3875e8236b0b4591cf886a69431506d57c33f7839d812b9523a485520f3f8f0dc1c31878
7
+ data.tar.gz: 96d12cc805d7bdda5bda6faf5ae0eaf39c8a59c30df03e17038cc0ed1e455eded9cd86607d8bd3243ae90fdea250564af5407c3f4b1a4fa42139e365464889ed
data/Gemfile.lock CHANGED
@@ -1,13 +1,13 @@
1
1
  PATH
2
2
  remote: .
3
3
  specs:
4
- lgit (0.2.1)
4
+ lgit (0.5.0)
5
5
 
6
6
  GEM
7
7
  remote: https://rubygems.org/
8
8
  specs:
9
9
  minitest (5.11.3)
10
- rake (10.5.0)
10
+ rake (13.0.1)
11
11
 
12
12
  PLATFORMS
13
13
  ruby
@@ -17,7 +17,7 @@ DEPENDENCIES
17
17
  bundler (~> 1.16)
18
18
  lgit!
19
19
  minitest (~> 5.0)
20
- rake (~> 10.0)
20
+ rake (~> 13.0)
21
21
 
22
22
  BUNDLED WITH
23
- 1.16.6
23
+ 1.17.3
data/README.md CHANGED
@@ -22,16 +22,16 @@ Or install it yourself as:
22
22
 
23
23
  ## Usage
24
24
 
25
- Rebase current branch from master
25
+ Rebase current branch from specified base or master by default
26
26
 
27
27
  ```shell
28
- lgit rebase
28
+ lgit rebase [<base>]
29
29
  ```
30
30
 
31
- Create new branch from freshly pulled master
31
+ Create new branch from freshly pulled base or master by default
32
32
 
33
33
  ```shell
34
- lgit branch <name>
34
+ lgit branch <name> [<base>]
35
35
  ```
36
36
 
37
37
  Delete all branches for which remotes are gone. *Use with caution!*
@@ -56,4 +56,4 @@ The gem is available as open source under the terms of the [MIT License](https:/
56
56
 
57
57
  ## Code of Conduct
58
58
 
59
- Everyone interacting in the Lgit project’s codebases, issue trackers, chat rooms and mailing lists is expected to follow the [code of conduct](https://github.com/[USERNAME]/lgit/blob/master/CODE_OF_CONDUCT.md).
59
+ Everyone interacting in the Lgit project’s codebases, issue trackers, chat rooms and mailing lists is expected to follow the [code of conduct](https://github.com/Luladjiev/lgit/blob/master/CODE_OF_CONDUCT.md).
data/exe/lgit CHANGED
@@ -12,10 +12,10 @@ git = Lgit::Git.new
12
12
 
13
13
  case ARGV[0]
14
14
  when 'branch'
15
- git.create_branch ARGV[1]
15
+ git.create_branch(ARGV[1], ARGV[2])
16
16
  when 'rebase'
17
- if git.get_branch == 'master'
18
- puts 'Error: Cannot rebase master!'
17
+ if git.get_branch == git.get_default_branch
18
+ puts "Error: Cannot rebase #{git.get_default_branch}!"
19
19
  exit 2
20
20
  end
21
21
  git.rebase ARGV[1]
data/lgit.gemspec CHANGED
@@ -31,6 +31,6 @@ Gem::Specification.new do |spec|
31
31
  spec.require_paths = ["lib"]
32
32
 
33
33
  spec.add_development_dependency "bundler", "~> 1.16"
34
- spec.add_development_dependency "rake", "~> 10.0"
34
+ spec.add_development_dependency "rake", "~> 13.0"
35
35
  spec.add_development_dependency "minitest", "~> 5.0"
36
36
  end
data/lib/lgit/version.rb CHANGED
@@ -1,3 +1,3 @@
1
1
  module Lgit
2
- VERSION = '0.3.0'.freeze
2
+ VERSION = '0.5.1'.freeze
3
3
  end
data/lib/lgit.rb CHANGED
@@ -1,26 +1,41 @@
1
1
  require 'lgit/version'
2
+ require 'open3'
2
3
 
3
4
  module Lgit
4
5
  ###
5
6
  # Git related class
6
7
  class Git
7
- def refresh_base(base = 'master')
8
+ def refresh_base(base)
9
+ base ||= get_default_branch
10
+
8
11
  `git checkout #{base}`
9
12
  `git pull`
10
13
  end
11
14
 
12
15
  def get_branch
13
- `git name-rev --name-only HEAD`.strip
16
+ `git branch --show-current`.strip
17
+ end
18
+
19
+ def get_default_branch
20
+ stdout, _, status = Open3.capture3("git symbolic-ref refs/remotes/origin/HEAD")
21
+
22
+ return `git config init.defaultBranch`.strip if status != 0
23
+
24
+ stdout.strip[20..-1]
14
25
  end
15
26
 
16
- def create_branch(name)
27
+ def create_branch(name, base)
17
28
  return unless name
18
29
 
19
- refresh_base
30
+ base ||= get_default_branch
31
+
32
+ refresh_base base
20
33
  `git checkout -b #{name}`
21
34
  end
22
35
 
23
- def rebase(base = 'master')
36
+ def rebase(base)
37
+ base ||= get_default_branch
38
+
24
39
  refresh_base base
25
40
  `git checkout - `
26
41
  `git rebase #{base}`
metadata CHANGED
@@ -1,14 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: lgit
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.3.0
4
+ version: 0.5.1
5
5
  platform: ruby
6
6
  authors:
7
7
  - Peter Luladjiev
8
8
  autorequire:
9
9
  bindir: exe
10
10
  cert_chain: []
11
- date: 2019-12-17 00:00:00.000000000 Z
11
+ date: 2022-05-17 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: bundler
@@ -30,14 +30,14 @@ dependencies:
30
30
  requirements:
31
31
  - - "~>"
32
32
  - !ruby/object:Gem::Version
33
- version: '10.0'
33
+ version: '13.0'
34
34
  type: :development
35
35
  prerelease: false
36
36
  version_requirements: !ruby/object:Gem::Requirement
37
37
  requirements:
38
38
  - - "~>"
39
39
  - !ruby/object:Gem::Version
40
- version: '10.0'
40
+ version: '13.0'
41
41
  - !ruby/object:Gem::Dependency
42
42
  name: minitest
43
43
  requirement: !ruby/object:Gem::Requirement
@@ -94,8 +94,7 @@ required_rubygems_version: !ruby/object:Gem::Requirement
94
94
  - !ruby/object:Gem::Version
95
95
  version: '0'
96
96
  requirements: []
97
- rubyforge_project:
98
- rubygems_version: 2.7.8
97
+ rubygems_version: 3.0.3.1
99
98
  signing_key:
100
99
  specification_version: 4
101
100
  summary: Git on steroids