lib/big_keeper/command/feature&hotfix/switch.rb
#!/usr/bin/rubyrequire 'big_stash/stash_operator'require 'big_keeper/util/logger'require 'big_keeper/util/pod_operator'require 'big_keeper/util/xcode_operator'require 'big_keeper/model/operate_type'require 'big_keeper/dependency/dep_service' module BigKeeperMethod `switch_to` has 5 arguments (exceeds 4 allowed). Consider refactoring. def self.switch_to(path, version, user, full_name, type) begin # Parse Bigkeeper file BigkeeperParser.parse("#{path}/Bigkeeper") version = BigkeeperParser.version if version == 'Version in Bigkeeper file' branch_name = "#{GitflowType.name(type)}/#{full_name}" GitService.new.verify_home_branch(path, branch_name, OperateType::SWITCH) stash_modules = ModuleCacheOperator.new(path).all_path_modules # Stash current branch StashService.new.stash_all(path, branch_name, user, stash_modules) # Switch to new feature GitOperator.new.checkout(path, branch_name) GitOperator.new.pull(path) # Apply home stash StashService.new.pop_stash(path, branch_name, 'Home') modules = ModuleCacheOperator.new(path).all_path_modules modules.each do |module_name| ModuleService.new.switch_to(path, user, module_name, branch_name, type) end # Install DepService.dep_operator(path, user).install(modules, OperateType::SWITCH, false) # Open home workspace DepService.dep_operator(path, user).open ensure end endend