ggsm 1.7.0 → 1.7.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 +4 -4
 - data/lib/ggsm.rb +2 -2
 - data/lib/ggsm/command/finish.rb +2 -2
 - data/lib/ggsm/command/merge.rb +22 -11
 - data/lib/ggsm/version.rb +1 -1
 - metadata +1 -1
 
    
        checksums.yaml
    CHANGED
    
    | 
         @@ -1,7 +1,7 @@ 
     | 
|
| 
       1 
1 
     | 
    
         
             
            ---
         
     | 
| 
       2 
2 
     | 
    
         
             
            SHA1:
         
     | 
| 
       3 
     | 
    
         
            -
              metadata.gz:  
     | 
| 
       4 
     | 
    
         
            -
              data.tar.gz:  
     | 
| 
      
 3 
     | 
    
         
            +
              metadata.gz: 996c39374cb11250d79913de7faf12ae2730290b
         
     | 
| 
      
 4 
     | 
    
         
            +
              data.tar.gz: 5045631bff91d67cf68cf1595869b5dc0715094d
         
     | 
| 
       5 
5 
     | 
    
         
             
            SHA512:
         
     | 
| 
       6 
     | 
    
         
            -
              metadata.gz:  
     | 
| 
       7 
     | 
    
         
            -
              data.tar.gz:  
     | 
| 
      
 6 
     | 
    
         
            +
              metadata.gz: fd593cfc4cb21c7fc66f51fcacb431ab913f44fd4f58bd95449ec0323de2a3f00e34776a7ac1e50939d62a4df68bb0f1d0226b90f1b367d1335cfd30f9067c8e
         
     | 
| 
      
 7 
     | 
    
         
            +
              data.tar.gz: 648ea7a0822727659814fdb4938a1767a1368f955d0b78a2dbf52d055d39990ad254c11edc6a2c169049f286fc841319660499b0819ce35287550ac0d0752da7
         
     | 
    
        data/lib/ggsm.rb
    CHANGED
    
    | 
         @@ -29,9 +29,9 @@ module GGSM 
     | 
|
| 
       29 
29 
     | 
    
         
             
                end
         
     | 
| 
       30 
30 
     | 
    
         | 
| 
       31 
31 
     | 
    
         
             
                desc 'merge <branch> [-r|--rebase]', 'Merge,开发完成后执行; --rebase:主工程强制rebase'
         
     | 
| 
       32 
     | 
    
         
            -
                option : 
     | 
| 
      
 32 
     | 
    
         
            +
                option :can_rebase, :default => false, :type => :boolean, aliases: '-r'
         
     | 
| 
       33 
33 
     | 
    
         
             
                def merge(branch)
         
     | 
| 
       34 
     | 
    
         
            -
                  rebase = options[: 
     | 
| 
      
 34 
     | 
    
         
            +
                  rebase = options[:can_rebase]
         
     | 
| 
       35 
35 
     | 
    
         
             
                  merge_flow(branch, rebase)
         
     | 
| 
       36 
36 
     | 
    
         
             
                end
         
     | 
| 
       37 
37 
     | 
    
         | 
    
        data/lib/ggsm/command/finish.rb
    CHANGED
    
    | 
         @@ -29,9 +29,9 @@ module GGSM 
     | 
|
| 
       29 
29 
     | 
    
         
             
                  end
         
     | 
| 
       30 
30 
     | 
    
         | 
| 
       31 
31 
     | 
    
         
             
                  if force
         
     | 
| 
       32 
     | 
    
         
            -
                    system "git push origin #{get_current_branch} -f"
         
     | 
| 
      
 32 
     | 
    
         
            +
                    system "git push -u origin #{get_current_branch} -f"
         
     | 
| 
       33 
33 
     | 
    
         
             
                  else
         
     | 
| 
       34 
     | 
    
         
            -
                    system "git push origin #{get_current_branch}"
         
     | 
| 
      
 34 
     | 
    
         
            +
                    system "git push -u origin #{get_current_branch}"
         
     | 
| 
       35 
35 
     | 
    
         
             
                  end
         
     | 
| 
       36 
36 
     | 
    
         
             
                end
         
     | 
| 
       37 
37 
     | 
    
         
             
              end
         
     | 
    
        data/lib/ggsm/command/merge.rb
    CHANGED
    
    | 
         @@ -69,20 +69,31 @@ module GGSM 
     | 
|
| 
       69 
69 
     | 
    
         
             
                  pattern = /[0-9a-z]{7}(?=\s)/
         
     | 
| 
       70 
70 
     | 
    
         
             
                  current_branch = get_current_branch
         
     | 
| 
       71 
71 
     | 
    
         | 
| 
       72 
     | 
    
         
            -
                   
     | 
| 
       73 
     | 
    
         
            -
             
     | 
| 
       74 
     | 
    
         
            -
             
     | 
| 
       75 
     | 
    
         
            -
             
     | 
| 
       76 
     | 
    
         
            -
             
     | 
| 
       77 
     | 
    
         
            -
             
     | 
| 
      
 72 
     | 
    
         
            +
                  can_rebase(current_branch) {|remote|
         
     | 
| 
      
 73 
     | 
    
         
            +
                    diff_logs = `git log --oneline #{branch}..#{current_branch}`.split("\n").reverse
         
     | 
| 
      
 74 
     | 
    
         
            +
             
     | 
| 
      
 75 
     | 
    
         
            +
                    if diff_logs.length > 0
         
     | 
| 
      
 76 
     | 
    
         
            +
                      commit = pattern.match(diff_logs[0].strip)[0]
         
     | 
| 
      
 77 
     | 
    
         
            +
                      result = `git log #{remote}/#{current_branch} |grep #{commit}`
         
     | 
| 
      
 78 
     | 
    
         
            +
                      if `git log --oneline #{current_branch}..#{branch}`.split("\n").length > 0 && result.strip != ''
         
     | 
| 
      
 79 
     | 
    
         
            +
                        return false
         
     | 
| 
      
 80 
     | 
    
         
            +
                      end
         
     | 
| 
      
 81 
     | 
    
         
            +
                    end
         
     | 
| 
      
 82 
     | 
    
         
            +
                  }
         
     | 
| 
      
 83 
     | 
    
         
            +
                end
         
     | 
| 
       78 
84 
     | 
    
         | 
| 
       79 
     | 
    
         
            -
             
     | 
| 
       80 
     | 
    
         
            -
             
     | 
| 
       81 
     | 
    
         
            -
                    result = `git log #{remote}/#{current_branch} |grep #{commit}`
         
     | 
| 
      
 85 
     | 
    
         
            +
                def can_rebase(current_branch)
         
     | 
| 
      
 86 
     | 
    
         
            +
                  remote = `git config --get branch.#{current_branch}.remote`
         
     | 
| 
       82 
87 
     | 
    
         | 
| 
       83 
     | 
    
         
            -
             
     | 
| 
       84 
     | 
    
         
            -
             
     | 
| 
      
 88 
     | 
    
         
            +
                  if remote == ''
         
     | 
| 
      
 89 
     | 
    
         
            +
                    `git branch -r`.split("\n").each do |branch|
         
     | 
| 
      
 90 
     | 
    
         
            +
                      if branch.strip == "origin/#{current_branch}"
         
     | 
| 
      
 91 
     | 
    
         
            +
                        remote = 'origin'
         
     | 
| 
      
 92 
     | 
    
         
            +
                        yield remote
         
     | 
| 
      
 93 
     | 
    
         
            +
                      end
         
     | 
| 
       85 
94 
     | 
    
         
             
                    end
         
     | 
| 
      
 95 
     | 
    
         
            +
                  else
         
     | 
| 
      
 96 
     | 
    
         
            +
                    yield remote
         
     | 
| 
       86 
97 
     | 
    
         
             
                  end
         
     | 
| 
       87 
98 
     | 
    
         
             
                  true
         
     | 
| 
       88 
99 
     | 
    
         
             
                end
         
     | 
    
        data/lib/ggsm/version.rb
    CHANGED