lib/git_bundle/cli.rb in git-bundle-1.0.1 vs lib/git_bundle/cli.rb in git-bundle-1.0.2

- old
+ new

@@ -10,42 +10,23 @@ def invoke(args) case args[0] when nil, '--help', 'help' puts `git #{args.join(' ')}`.gsub('git', 'gitb') when 'push' - push = GitBundle::Push.new(@repositories, args[1..-1]) - push.invoke if push.prompt_confirm + GitBundle::Commands::Push.new(@repositories, args[1..-1]).invoke else - exec_all(args) + GitBundle::Commands::Generic.new(@repositories, args).invoke end - - puts_error @errors.join('\n') unless @errors.empty? end - def exec_all(*argv) - exec_errors = [] - @repositories.each do |repo| - puts_repo_heading(repo) - puts repo.execute_git(argv.join(' ')) - exec_errors << repo.name unless $?.exitstatus == 0 - end - - @errors << "Command failed in #{exec_errors.join(', ')}." unless exec_errors.empty? - end - private def load_repositories @repositories = [] - begin - lockfile_content = Bundler.read_file(Bundler.default_lockfile) - all_specs = Bundler::LockfileParser.new(lockfile_content).specs + if Bundler.locked_gems Bundler.settings.local_overrides.each do |name, path| - spec = all_specs.find { |s| s.name == name } + spec = Bundler.locked_gems.specs.find { |s| s.name == name } @repositories << GitBundle::Repository.new_dependant(spec.name, path, spec.source.branch, spec.source.revision) if spec end - - rescue Bundler::LockfileError - @errors << "Error reading #{Bundler.default_lockfile}: \n\t#{error.message}." end @repositories << GitBundle::Repository.new_main(File.basename(Dir.getwd), Dir.getwd) end end