Sha256: 4cce3de82226f81bdbf62f932cb7e8e37747d3baa8693fe9fcb7134eeca4b6d5

Contents?: true

Size: 1.61 KB

Versions: 69

Compression:

Stored size: 1.61 KB

Contents

module Origen
  module RevisionControl
    require 'origen/revision_control/base'
    autoload :DesignSync, 'origen/revision_control/design_sync'
    autoload :Git,        'origen/revision_control/git'
    autoload :Subversion, 'origen/revision_control/subversion'
    autoload :Perforce,   'origen/revision_control/perforce'

    IGNORE_DIRS =  %w(
      .ws .lsf log output web coverage .ref .yardoc .collection .bin
      .session .bundle .tpc pkg tmp .git
    )

    IGNORE_FILES = %w(
      target/.default release_note.txt *.swp *.swo *~ .bin
      list/referenced.list tags .ref .pdm/pi_attributes.txt
      environment/.default
    )

    # Creates a new revision controller object based on the supplied :local and :remote
    # options.
    #
    # The revision control system will be worked out from the supplied remote value. This method
    # should therefore be used whenever the remote is a variable that could refer to many different
    # systems.
    #
    # @example
    #
    #   # I know that the remote refers to DesignSync
    #   rc = Origen::RevisionControl::DesignSync.new remote: "sync//....", local: "my/path"
    #
    #   # The remote is a variable and I don't know the type
    #   rc = Origen::RevisionControl.new remote: rc_url, local: "my/path"
    def self.new(options = {})
      case
      when options[:remote] =~ /^sync/
        DesignSync.new(options)
      when options[:remote] =~ /git/
        Git.new(options)
      when options[:remote] =~ /^p4/
        Perforce.new(options)
      else
        fail "Could not work out the revision control system for: #{options[:remote]}"
      end
    end
  end
end

Version data entries

69 entries across 69 versions & 1 rubygems

Version Path
origen-0.60.19 lib/origen/revision_control.rb
origen-0.60.18 lib/origen/revision_control.rb
origen-0.60.17 lib/origen/revision_control.rb
origen-0.60.16 lib/origen/revision_control.rb
origen-0.60.14 lib/origen/revision_control.rb
origen-0.60.13 lib/origen/revision_control.rb
origen-0.60.12 lib/origen/revision_control.rb
origen-0.60.11 lib/origen/revision_control.rb
origen-0.60.10 lib/origen/revision_control.rb
origen-0.60.9 lib/origen/revision_control.rb
origen-0.60.8 lib/origen/revision_control.rb
origen-0.60.7 lib/origen/revision_control.rb
origen-0.60.6 lib/origen/revision_control.rb
origen-0.60.5 lib/origen/revision_control.rb
origen-0.60.4 lib/origen/revision_control.rb
origen-0.60.3 lib/origen/revision_control.rb
origen-0.60.2 lib/origen/revision_control.rb
origen-0.60.1 lib/origen/revision_control.rb
origen-0.60.0 lib/origen/revision_control.rb
origen-0.59.8 lib/origen/revision_control.rb