git-process-lib 2.0.3 → 2.0.4
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/CHANGELOG.md +9 -1
- data/lib/git-process/git_lib.rb +23 -7
- data/lib/git-process/version.rb +1 -1
- data/local-build.rb +5 -5
- data/spec/git_lib_spec.rb +37 -0
- data/spec/sync_spec.rb +1 -1
- metadata +3 -3
data/CHANGELOG.md
CHANGED
@@ -1,4 +1,12 @@
|
|
1
|
-
# CHANGELOG - 2.0.
|
1
|
+
# CHANGELOG - 2.0.4 #
|
2
|
+
|
3
|
+
### Since 2.0.3 ###
|
4
|
+
|
5
|
+
* Fixed incompatibility with git 1.7 ([GH-128](https://github.com/jdigger/git-process/issues/128))
|
6
|
+
|
7
|
+
### Since 2.0.2 ###
|
8
|
+
|
9
|
+
* Locked down dependencies due to a change in the "faraday" packages.
|
2
10
|
|
3
11
|
### Since 2.0.1 ###
|
4
12
|
|
data/lib/git-process/git_lib.rb
CHANGED
@@ -558,6 +558,29 @@ module GitProc
|
|
558
558
|
end
|
559
559
|
|
560
560
|
|
561
|
+
def set_upstream_branch(branch_name, upstream)
|
562
|
+
logger.info { "Setting upstream/tracking for branch '#{branch_name}' to '#{upstream}'." }
|
563
|
+
|
564
|
+
if has_a_remote?
|
565
|
+
parts = upstream.split(/\//)
|
566
|
+
if parts.length() > 1
|
567
|
+
potential_remote = parts.shift
|
568
|
+
if remote.remote_names.include?(potential_remote)
|
569
|
+
config["branch.#{branch_name}.remote"] = potential_remote
|
570
|
+
config["branch.#{branch_name}.merge"] = "refs/heads/#{parts.join('/')}"
|
571
|
+
end
|
572
|
+
else
|
573
|
+
config["branch.#{branch_name}.merge"] = "refs/heads/#{upstream}"
|
574
|
+
end
|
575
|
+
else
|
576
|
+
config["branch.#{branch_name}.merge"] = "refs/heads/#{upstream}"
|
577
|
+
end
|
578
|
+
|
579
|
+
# The preferred way assuming using git 1.8 cli
|
580
|
+
#command(:branch, ['--set-upstream-to', upstream, branch_name])
|
581
|
+
end
|
582
|
+
|
583
|
+
|
561
584
|
private
|
562
585
|
|
563
586
|
|
@@ -642,13 +665,6 @@ module GitProc
|
|
642
665
|
end
|
643
666
|
|
644
667
|
|
645
|
-
def set_upstream_branch(branch_name, upstream)
|
646
|
-
logger.info { "Setting upstream/tracking for branch '#{branch_name}' to '#{upstream}'." }
|
647
|
-
|
648
|
-
command(:branch, ['--set-upstream-to', upstream, branch_name])
|
649
|
-
end
|
650
|
-
|
651
|
-
|
652
668
|
def sync_control_filename(branch_name)
|
653
669
|
File.join(File.join(workdir, '.git'), "gitprocess-sync-#{remote.name}--#{branch_name}")
|
654
670
|
end
|
data/lib/git-process/version.rb
CHANGED
data/local-build.rb
CHANGED
@@ -15,10 +15,10 @@ for gem in gems
|
|
15
15
|
|
16
16
|
%x[gem build #{gem}.gemspec]
|
17
17
|
SystemExit.new($?) if $?.exitstatus
|
18
|
-
end
|
19
18
|
|
20
|
-
puts %x(gem install
|
21
|
-
SystemExit.new($?) if $?.exitstatus
|
19
|
+
# puts %x(gem install ./#{gem}-#{GitProc::Version::STRING}.gem -l -u)
|
20
|
+
# SystemExit.new($?) if $?.exitstatus
|
22
21
|
|
23
|
-
|
24
|
-
|
22
|
+
puts %x(gem push ./#{gem}-#{GitProc::Version::STRING}.gem)
|
23
|
+
SystemExit.new($?) if $?.exitstatus
|
24
|
+
end
|
data/spec/git_lib_spec.rb
CHANGED
@@ -46,6 +46,43 @@ describe GitLib, :git_repo_helper do
|
|
46
46
|
end
|
47
47
|
|
48
48
|
|
49
|
+
describe 'set_upstream_branch' do
|
50
|
+
include GitRepoHelper
|
51
|
+
|
52
|
+
it 'updates for remote branch' do
|
53
|
+
gitlib.branch('ba/bb', :base_branch => 'master')
|
54
|
+
clone_repo do |gl|
|
55
|
+
gl.checkout('new_branch', :new_branch => 'origin/master')
|
56
|
+
gl.set_upstream_branch('new_branch', 'origin/ba/bb')
|
57
|
+
|
58
|
+
gl.config['branch.new_branch.remote'].should == 'origin'
|
59
|
+
gl.config['branch.new_branch.merge'].should == 'refs/heads/ba/bb'
|
60
|
+
end
|
61
|
+
end
|
62
|
+
|
63
|
+
|
64
|
+
it 'updates for local branch' do
|
65
|
+
gitlib.branch('ba', :base_branch => 'master')
|
66
|
+
gitlib.checkout('new_branch', :new_branch => 'master')
|
67
|
+
gitlib.set_upstream_branch('new_branch', 'ba')
|
68
|
+
|
69
|
+
gitlib.config['branch.new_branch.remote'].should == nil
|
70
|
+
gitlib.config['branch.new_branch.merge'].should == 'refs/heads/ba'
|
71
|
+
end
|
72
|
+
|
73
|
+
|
74
|
+
it 'updates for local branch that looks remote' do
|
75
|
+
gitlib.branch('other/ba', :base_branch => 'master')
|
76
|
+
gitlib.checkout('new_branch', :new_branch => 'master')
|
77
|
+
gitlib.set_upstream_branch('new_branch', 'other/ba')
|
78
|
+
|
79
|
+
gitlib.config['branch.new_branch.remote'].should == nil
|
80
|
+
gitlib.config['branch.new_branch.merge'].should == 'refs/heads/other/ba'
|
81
|
+
end
|
82
|
+
|
83
|
+
end
|
84
|
+
|
85
|
+
|
49
86
|
describe 'fetch' do
|
50
87
|
|
51
88
|
it 'parse the list of changes' do
|
data/spec/sync_spec.rb
CHANGED
@@ -1108,7 +1108,7 @@ describe Sync do
|
|
1108
1108
|
|
1109
1109
|
it 'should fail if it is not subsumed by the remote' do
|
1110
1110
|
Given do
|
1111
|
-
@local.command(:remote, ['
|
1111
|
+
@local.command(:remote, ['rm', 'origin'])
|
1112
1112
|
end
|
1113
1113
|
|
1114
1114
|
expect { when_sync_is_run(false) }.to raise_error(GitProcessError, /Specifying 'no_remote' does not make sense without a remote/)
|
metadata
CHANGED
@@ -1,13 +1,13 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: git-process-lib
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
hash:
|
4
|
+
hash: 7
|
5
5
|
prerelease:
|
6
6
|
segments:
|
7
7
|
- 2
|
8
8
|
- 0
|
9
|
-
-
|
10
|
-
version: 2.0.
|
9
|
+
- 4
|
10
|
+
version: 2.0.4
|
11
11
|
platform: ruby
|
12
12
|
authors:
|
13
13
|
- Jim Moore
|