Capistrano Deploy falla con git: 'info' no es un command git

Configuré un nuevo proyecto con Capistrano y aunque puedo ejecutar exitosamente la cap deploy:setup si bash implementar mi proyecto obtengo el siguiente error

 → cap deploy * executing `deploy' * executing `deploy:update' ** transaction: start * executing `deploy:update_code' updating the cached checkout on all servers executing locally: "git info git@github.com:foo/Baconalytics.git -rHEAD" git: 'info' is not a git command. See 'git --help'. Did you mean one of these? init mailinfo *** [deploy:update_code] rolling back 

Tengo varios otros proyectos que implementan bien desde la misma máquina, pero este no. Git está instalado en mi host y destino. ¿Alguien sabe los pasos de solución de problemas que puedo tomar?

Mi file deploy.rb:

 require "bundler/capistrano" set :application, "baconalyitcs" set :repository, "git@github.com:foo/Baconalytics.git" set :scm_command, "git" set :deploy_to, "/root/baconalytics" set :branch, "master" set :user, "root" set :use_sudo, false ssh_options[:forward_agent] = true set :deploy_via, :remote_cache set :ruby_prefix, "/usr/bin/ruby" set :deploy_user, "#{ENV['USER']}" role :worker, "xxx.compute-1.amazonaws.com", :primary => true role :namenode, "xxx.compute-1.amazonaws.com" after "deploy", "deploy:bundle_gems" after "deploy", "deploy:print_success_banner" namespace :deploy do task :print_success_banner do puts "---------------------------------------------------" puts "--------------- DEPLOY SUCCEEDED ------------------" puts "---------------------------------------------------" end task :bundle_gems, :roles => [:worker] do run "rm -rf /mnt/app/current/vendor/cache; true" run "if [ -f /mnt/app/current/Gemfile.lock ]; then rm /mnt/app/current/Gemfile.lock; fi;" cmd = [ "cd #{current_path}", "#{ruby_prefix}/bundle install", ].join(" && ") run cmd end end task :ssh do role = ARGV[1] servers = @roles[role.to_sym].servers rescue @roles[role.to_sym] puts instances = `rake ec2:din` unless server instances = instances.split("\n") unless server system "ssh -o StrictHostKeyChecking=no root@#{(server || instances[ssh_server.to_i].split("\t")[2])}" end 

Actualizar después de publicar el deploy.rb:

Tienes que usar set :scm, "git" para que reconozca que estás usando git. Espero que ayude.

Tenga en count que mi statement inicial sobre la confusión entre git y svn es correcta. Pensaba que era un repository de svn, pero como cambiaste el scm_command solo a git , estaba intentando la git info . scm_command Creo que debe usarse solo cuando el command scm no está en la ruta.


info no es un subcommand git como dice.

 git: 'info' is not a git command. See 'git --help'. Did you mean one of these? init mailinfo 

claramente, git está instalado y bien, pero la info no es un command git. (Pero svn lo tiene, ¿alguna confusión entre git y svn?)

Intente instalar git-info ?

Siguiendo la respuesta anterior:

 which git-info 

/ usr / bin / git-info

 rpm -qf /usr/bin/git-info 

git-extras-4.1.0-1.fc23.noarch

necesitamos instalar git-extras al less en Fedora Linux