Sha256: 016c480ae711ae0a0e2021eb6cb3de5ba18ea8ab75a8051ab13126ca24a2f794

Contents?: true

Size: 1.55 KB

Versions: 14

Compression:

Stored size: 1.55 KB

Contents

module Dev
class Scm
  attr_accessor :scm_type
  
  def initialize
    @scm_type="none"
    @scm_type="svn" if File.exists?(".svn")
    @scm_type="git" if File.exists?(".git")
  end
  
  def file_tracked?(file)
    if @scm_type=="git"
      call=Dev::SystemCall.new("git ls-files #{file} -error_unmatch")
      return true if call.status==0
    end
    false
  end
  
  def add_file(file)
    call=Dev::SystemCall.new("git add #{file}") if @scm_type=="git"
    
    if @scm_type=="svn"
	  afile=file
	  afile="#{file}@" if afile.include?('@')
      call=Dev::SystemCall.new("svn info \"#{afile}\"")
      if(call.status != 0)
        call=Dev::SystemCall.new("svn add \"#{afile}\" --parents")
        call.puts_summary
      end
    end
  end
  
  def add_file_glob(glob)
    Dir.glob(glob).each { |f|
	  if(!f.include?("/obj/") && 
	     !f.include?("/bin/") &&
		 f.index("obj/") != 0 &&
		 f.index("bin/") != 0 )
        add_file(f)
	  end
    }
  end
  
  def self.export(remote,local,scm)
    puts_debug "Scm.export, scm=#{scm}"
    if remote.include?("svn:") || scm=="svn"
      local_tmp=local.gsub('@','-')
      call=Dev::SystemCall.new("svn export \"#{remote}\" \"#{local_tmp}\"")
      call.puts_summary
      if(local_tmp != local)
        sleep 15
        File.rename(local_tmp,local) if File.exist?(local_tmp)
        sleep 15
      end
    end
    if scm=="git"
      call=Dev::SystemCall.new("git clone #{remote} #{local}")
    end
  end
  
  def self.update(local)
  end
  
end # class Scm
end # module Dev

Version data entries

14 entries across 14 versions & 1 rubygems

Version Path
dev-1.0.186 lib/dev/Scm.rb
dev-1.0.185 lib/dev/Scm.rb
dev-1.0.184 lib/dev/Scm.rb
dev-1.0.182 lib/dev/Scm.rb
dev-1.0.181 lib/dev/Scm.rb
dev-1.0.180 lib/dev/Scm.rb
dev-1.0.179 lib/dev/Scm.rb
dev-1.0.178 lib/dev/Scm.rb
dev-1.0.177 lib/dev/Scm.rb
dev-1.0.176 lib/dev/Scm.rb
dev-1.0.175 lib/dev/Scm.rb
dev-1.0.174 lib/dev/Scm.rb
dev-1.0.173 lib/dev/Scm.rb
dev-1.0.172 lib/dev/Scm.rb