Sha256: 39fb57f2177f41146148b5069e13607df90490149e138cd62cc23f1f34711314

Contents?: true

Size: 1.76 KB

Versions: 12

Compression:

Stored size: 1.76 KB

Contents

# -*- coding: UTF-8 -*-

require 'mj/tools/subprocess'
require 'build-tool/application'
require 'build-tool/commands'

module BuildTool; module Commands;

    class CtagsError < BuildTool::Error; end
    #
    # BuildCommand
    #
    class Rebase < ModuleBasedCommand

        include MJ::Tools::SubProcess

        name        "rebase"
        description "rebase local checkout against previously fetched remote changes."
        long_description [ "Invokes the rebase phase for the specified modules." ]

        # Log this command if $noop is not active
        def log?
            ! $noop
        end

        def applicable?
            BuildTool::Application.instance.has_recipe?
        end

        def initialize_options
            options.banner = "Usage: #{self.fullname} [OPTIONS]... MODULES..."
            options.separator( "" )
            options.separator( "Options" )

            @verbose_rebase = true
            options.on( nil, "--[no]-verbose-rebase", "Show the changes applied by rebase." ) { |t|
                @verbose_rebase = false
                }

            super
        end

        def is_module_ready?( mod )
            isready = true
            if !mod.checkedout?
                info( "#{mod.name}: Skipping: Not checked out." )
            else
                isready &= mod.ready_for_rebase
                if !mod.vcs.fetching_supported?
                    info( "#{mod.name}: Skipping: Rebasing not support by #{mod.vcs.name}" )
                end
            end
            return isready
        end


        def do_execute_module( mod )
            if mod.checkedout? and mod.vcs.fetching_supported?
                rebase( mod, @verbose_rebase )
            end
        end

    end # class Build

end; end # module BuildTool::Commands



Version data entries

12 entries across 12 versions & 1 rubygems

Version Path
build-tool-0.6.9 lib/build-tool/commands/rebase.rb
build-tool-0.6.8 lib/build-tool/commands/rebase.rb
build-tool-0.6.7 lib/build-tool/commands/rebase.rb
build-tool-0.6.6 lib/build-tool/commands/rebase.rb
build-tool-0.6.5 lib/build-tool/commands/rebase.rb
build-tool-0.6.4 lib/build-tool/commands/rebase.rb
build-tool-0.6.3 lib/build-tool/commands/rebase.rb
build-tool-0.6.2 lib/build-tool/commands/rebase.rb
build-tool-0.6.1 lib/build-tool/commands/rebase.rb
build-tool-0.6.0 lib/build-tool/commands/rebase.rb
build-tool-0.6.0.rc2 lib/build-tool/commands/rebase.rb
build-tool-0.6.0.rc1 lib/build-tool/commands/rebase.rb