module GitFastClone::UrlHelper
Helper methods for fastclone url operations
Public Class Methods
parse_update_info(line)
click to toggle source
# File lib/git-fastclone.rb, line 31 def parse_update_info(line) [line.strip.match(/'([^']*)'$/)[1], line.strip.match(/\(([^)]*)\)/)[1]] end
path_from_git_url(url)
click to toggle source
# File lib/git-fastclone.rb, line 26 def path_from_git_url(url) File.basename(url, '.git') end
reference_filename(filename)
click to toggle source
# File lib/git-fastclone.rb, line 50 def reference_filename(filename) separator = if RbConfig::CONFIG['host_os'] =~ /mswin|msys|mingw|cygwin|bccwin|wince|emc/ '__' else ':' end "#{separator}#{filename}" end
reference_repo_dir(url, reference_dir, using_local_repo)
click to toggle source
# File lib/git-fastclone.rb, line 41 def reference_repo_dir(url, reference_dir, using_local_repo) if using_local_repo File.join(reference_dir, "local#{reference_repo_name(url)}") else File.join(reference_dir, reference_repo_name(url)) end end
reference_repo_lock_file(url, reference_dir, using_local_repo)
click to toggle source
# File lib/git-fastclone.rb, line 65 def reference_repo_lock_file(url, reference_dir, using_local_repo) lock_file_name = "#{reference_repo_dir(url, reference_dir, using_local_repo)}#{reference_filename('lock')}" File.open(lock_file_name, File::RDWR | File::CREAT, 0o644) end
reference_repo_name(url)
click to toggle source
# File lib/git-fastclone.rb, line 36 def reference_repo_name(url) url.gsub(%r{^.*://}, '').gsub(/^[^@]*@/, '').tr('/', '-').tr(':', '-').to_s end
reference_repo_submodule_file(url, reference_dir, using_local_repo)
click to toggle source
# File lib/git-fastclone.rb, line 60 def reference_repo_submodule_file(url, reference_dir, using_local_repo) "#{reference_repo_dir(url, reference_dir, using_local_repo)}#{reference_filename('submodules.txt')}" end
Private Instance Methods
parse_update_info(line)
click to toggle source
# File lib/git-fastclone.rb, line 31 def parse_update_info(line) [line.strip.match(/'([^']*)'$/)[1], line.strip.match(/\(([^)]*)\)/)[1]] end
path_from_git_url(url)
click to toggle source
# File lib/git-fastclone.rb, line 26 def path_from_git_url(url) File.basename(url, '.git') end
reference_filename(filename)
click to toggle source
# File lib/git-fastclone.rb, line 50 def reference_filename(filename) separator = if RbConfig::CONFIG['host_os'] =~ /mswin|msys|mingw|cygwin|bccwin|wince|emc/ '__' else ':' end "#{separator}#{filename}" end
reference_repo_dir(url, reference_dir, using_local_repo)
click to toggle source
# File lib/git-fastclone.rb, line 41 def reference_repo_dir(url, reference_dir, using_local_repo) if using_local_repo File.join(reference_dir, "local#{reference_repo_name(url)}") else File.join(reference_dir, reference_repo_name(url)) end end
reference_repo_lock_file(url, reference_dir, using_local_repo)
click to toggle source
# File lib/git-fastclone.rb, line 65 def reference_repo_lock_file(url, reference_dir, using_local_repo) lock_file_name = "#{reference_repo_dir(url, reference_dir, using_local_repo)}#{reference_filename('lock')}" File.open(lock_file_name, File::RDWR | File::CREAT, 0o644) end
reference_repo_name(url)
click to toggle source
# File lib/git-fastclone.rb, line 36 def reference_repo_name(url) url.gsub(%r{^.*://}, '').gsub(/^[^@]*@/, '').tr('/', '-').tr(':', '-').to_s end
reference_repo_submodule_file(url, reference_dir, using_local_repo)
click to toggle source
# File lib/git-fastclone.rb, line 60 def reference_repo_submodule_file(url, reference_dir, using_local_repo) "#{reference_repo_dir(url, reference_dir, using_local_repo)}#{reference_filename('submodules.txt')}" end