简体   繁体   English

scm设置,用于使用capistrano将项目从Windows复制到ubuntu

[英]scm setup for copying project from windows to ubuntu using capistrano

I want to deploy my sample project from ubuntu to windows I have succesfully make a ssh key on ubuntu. 我想将示例项目从ubuntu部署到Windows,我已经在ubuntu上成功创建了ssh密钥。 Now I want to do this via only copying files from the windows to the ubuntu remotely. 现在,我只想通过将文件从Windows远程复制到ubuntu来做到这一点。 When I execute 'cap production deploy', I got this error 'fatal: No remote configured to list refs from.' 当我执行“ cap生产部署”时,出现此错误“致命:没有配置列出参考的远程”。 I guest this is from the git. 我邀请这是来自git。 my question is, How can setup inscm if I had only copy and paste the project from windows to server? 我的问题是,如果仅将项目从Windows复制并粘贴到服务器,如何设置inscm?

by the way this are the codes of my follwing rb files: 顺便说一下,这是我下面的rb文件的代码:

Deployer.rb lock '3.5.0' --set :application, 'my_app_name' --set :repo_url, 'git@example.com:me/my_repo.git' set :application, "zemsoft" --set :deploy_to, "/var/www/my-app.com" set :deploy_to, "/var/www/e" set :domain, "zemsofterp2.com" Deployer.rb lock '3.5.0' --set :application, 'my_app_name' --set :repo_url, 'git@example.com:me/my_repo.git' set :application, "zemsoft" --set :deploy_to, "/var/www/my-app.com" set :deploy_to, "/var/www/e" set :domain, "zemsofterp2.com"

set :scm, "git" --set :repository, "file:/// Users/deployer/sites/my-app" set :repository, "C:/xampp/htdocs/vendor" set :deploy_via, :copy set :use_sudo, false set :keep_releases, 3 -- Default branch is :master -- ask :branch, git rev-parse --abbrev-ref HEAD .chomp -- Default deploy_to directory is /var/www/my_app_name -- set :deploy_to, '/var/www/my_app_name' -- Default value for :scm is :git -- set :scm, :git -- Default value for :format is :airbrussh. -- set :format, :airbrussh -- You can configure the Airbrussh format using :format_options. -- These are the defaults. -- set :format_options, command_output: true, log_file: 'log/capistrano.log', color: :auto, truncate: :auto -- Default value for :pty is false -- set :pty, true -- Default value for :linked_files is [] -- set :linked_files, fetch(:linked_files, []).push('config/database.yml', 'config/secrets.yml') -- Default value for linked_dirs is [] -- set :linked_dirs, fetch(:linked_dirs, []).push('log', 'tmp/pids', 'tmp/cache', 'tmp/sockets', 'public/system') -- Default value for default_env is {} -- set :default_env, { path: "/opt/ruby/bin:$PATH" } -- Default value for keep_releases is 5 -- set :keep_releases, 5 namespace :deploy do after :restart, :clear_cache do on roles(:web), in: :groups, limit: 3, wait: 10 do -- Here we can do anything such as: -- within release_path do -- execute :rake, 'cache:clear' end end end end Production.rb role :app, %w{ely029@192.168.1.241} # EDIT your ssh username and server ip address

set :scm, "git" --set :repository, "file:/// Users/deployer/sites/my-app" set :repository, "C:/xampp/htdocs/vendor" set :deploy_via, :copy set :use_sudo, false set :keep_releases, 3 -- Default branch is :master -- ask :branch, git rev-parse --abbrev-ref HEAD .chomp -- Default deploy_to directory is /var/www/my_app_name -- set :deploy_to, '/var/www/my_app_name' -- Default value for :scm is :git -- set :scm, :git -- Default value for :format is :airbrussh. -- set :format, :airbrussh -- You can configure the Airbrussh format using :format_options. -- These are the defaults. -- set :format_options, command_output: true, log_file: 'log/capistrano.log', color: :auto, truncate: :auto -- Default value for :pty is false -- set :pty, true -- Default value for :linked_files is [] -- set :linked_files, fetch(:linked_files, []).push('config/database.yml', 'config/secrets.yml') -- Default value for linked_dirs is [] -- set :linked_dirs, fetch(:linked_dirs, []).push('log', 'tmp/pids', 'tmp/cache', 'tmp/sockets', 'public/system') -- Default value for default_env is {} -- set :default_env, { path: "/opt/ruby/bin:$PATH" } -- Default value for keep_releases is 5 -- set :keep_releases, 5 namespace :deploy do after :restart, :clear_cache do on roles(:web), in: :groups, limit: 3, wait: 10 do -- Here we can do anything such as: -- within release_path do -- execute :rake, 'cache:clear' end end end end Production.rb role :app, %w{ely029@192.168.1.241} # EDIT your ssh username and server ip address

set :scm, "git" --set :repository, "file:/// Users/deployer/sites/my-app" set :repository, "C:/xampp/htdocs/vendor" set :deploy_via, :copy set :use_sudo, false set :keep_releases, 3 -- Default branch is :master -- ask :branch, git rev-parse --abbrev-ref HEAD .chomp -- Default deploy_to directory is /var/www/my_app_name -- set :deploy_to, '/var/www/my_app_name' -- Default value for :scm is :git -- set :scm, :git -- Default value for :format is :airbrussh. -- set :format, :airbrussh -- You can configure the Airbrussh format using :format_options. -- These are the defaults. -- set :format_options, command_output: true, log_file: 'log/capistrano.log', color: :auto, truncate: :auto -- Default value for :pty is false -- set :pty, true -- Default value for :linked_files is [] -- set :linked_files, fetch(:linked_files, []).push('config/database.yml', 'config/secrets.yml') -- Default value for linked_dirs is [] -- set :linked_dirs, fetch(:linked_dirs, []).push('log', 'tmp/pids', 'tmp/cache', 'tmp/sockets', 'public/system') -- Default value for default_env is {} -- set :default_env, { path: "/opt/ruby/bin:$PATH" } -- Default value for keep_releases is 5 -- set :keep_releases, 5 namespace :deploy do after :restart, :clear_cache do on roles(:web), in: :groups, limit: 3, wait: 10 do -- Here we can do anything such as: -- within release_path do -- execute :rake, 'cache:clear' end end end end Production.rb role :app, %w{ely029@192.168.1.241} # EDIT your ssh username and server ip address

set :scm, "git" --set :repository, "file:/// Users/deployer/sites/my-app" set :repository, "C:/xampp/htdocs/vendor" set :deploy_via, :copy set :use_sudo, false set :keep_releases, 3 -- Default branch is :master -- ask :branch, git rev-parse --abbrev-ref HEAD .chomp -- Default deploy_to directory is /var/www/my_app_name -- set :deploy_to, '/var/www/my_app_name' -- Default value for :scm is :git -- set :scm, :git -- Default value for :format is :airbrussh. -- set :format, :airbrussh -- You can configure the Airbrussh format using :format_options. -- These are the defaults. -- set :format_options, command_output: true, log_file: 'log/capistrano.log', color: :auto, truncate: :auto -- Default value for :pty is false -- set :pty, true -- Default value for :linked_files is [] -- set :linked_files, fetch(:linked_files, []).push('config/database.yml', 'config/secrets.yml') -- Default value for linked_dirs is [] -- set :linked_dirs, fetch(:linked_dirs, []).push('log', 'tmp/pids', 'tmp/cache', 'tmp/sockets', 'public/system') -- Default value for default_env is {} -- set :default_env, { path: "/opt/ruby/bin:$PATH" } -- Default value for keep_releases is 5 -- set :keep_releases, 5 namespace :deploy do after :restart, :clear_cache do on roles(:web), in: :groups, limit: 3, wait: 10 do -- Here we can do anything such as: -- within release_path do -- execute :rake, 'cache:clear' end end end end Production.rb role :app, %w{ely029@192.168.1.241} # EDIT your ssh username and server ip address

set :scm, "git" --set :repository, "file:/// Users/deployer/sites/my-app" set :repository, "C:/xampp/htdocs/vendor" set :deploy_via, :copy set :use_sudo, false set :keep_releases, 3 -- Default branch is :master -- ask :branch, git rev-parse --abbrev-ref HEAD .chomp -- Default deploy_to directory is /var/www/my_app_name -- set :deploy_to, '/var/www/my_app_name' -- Default value for :scm is :git -- set :scm, :git -- Default value for :format is :airbrussh. -- set :format, :airbrussh -- You can configure the Airbrussh format using :format_options. -- These are the defaults. -- set :format_options, command_output: true, log_file: 'log/capistrano.log', color: :auto, truncate: :auto -- Default value for :pty is false -- set :pty, true -- Default value for :linked_files is [] -- set :linked_files, fetch(:linked_files, []).push('config/database.yml', 'config/secrets.yml') -- Default value for linked_dirs is [] -- set :linked_dirs, fetch(:linked_dirs, []).push('log', 'tmp/pids', 'tmp/cache', 'tmp/sockets', 'public/system') -- Default value for default_env is {} -- set :default_env, { path: "/opt/ruby/bin:$PATH" } -- Default value for keep_releases is 5 -- set :keep_releases, 5 namespace :deploy do after :restart, :clear_cache do on roles(:web), in: :groups, limit: 3, wait: 10 do -- Here we can do anything such as: -- within release_path do -- execute :rake, 'cache:clear' end end end end Production.rb role :app, %w{ely029@192.168.1.241} # EDIT your ssh username and server ip address

set :scm, "git" --set :repository, "file:/// Users/deployer/sites/my-app" set :repository, "C:/xampp/htdocs/vendor" set :deploy_via, :copy set :use_sudo, false set :keep_releases, 3 -- Default branch is :master -- ask :branch, git rev-parse --abbrev-ref HEAD .chomp -- Default deploy_to directory is /var/www/my_app_name -- set :deploy_to, '/var/www/my_app_name' -- Default value for :scm is :git -- set :scm, :git -- Default value for :format is :airbrussh. -- set :format, :airbrussh -- You can configure the Airbrussh format using :format_options. -- These are the defaults. -- set :format_options, command_output: true, log_file: 'log/capistrano.log', color: :auto, truncate: :auto -- Default value for :pty is false -- set :pty, true -- Default value for :linked_files is [] -- set :linked_files, fetch(:linked_files, []).push('config/database.yml', 'config/secrets.yml') -- Default value for linked_dirs is [] -- set :linked_dirs, fetch(:linked_dirs, []).push('log', 'tmp/pids', 'tmp/cache', 'tmp/sockets', 'public/system') -- Default value for default_env is {} -- set :default_env, { path: "/opt/ruby/bin:$PATH" } -- Default value for keep_releases is 5 -- set :keep_releases, 5 namespace :deploy do after :restart, :clear_cache do on roles(:web), in: :groups, limit: 3, wait: 10 do -- Here we can do anything such as: -- within release_path do -- execute :rake, 'cache:clear' end end end end Production.rb role :app, %w{ely029@192.168.1.241} # EDIT your ssh username and server ip address

set :scm, "git" --set :repository, "file:/// Users/deployer/sites/my-app" set :repository, "C:/xampp/htdocs/vendor" set :deploy_via, :copy set :use_sudo, false set :keep_releases, 3 -- Default branch is :master -- ask :branch, git rev-parse --abbrev-ref HEAD .chomp -- Default deploy_to directory is /var/www/my_app_name -- set :deploy_to, '/var/www/my_app_name' -- Default value for :scm is :git -- set :scm, :git -- Default value for :format is :airbrussh. -- set :format, :airbrussh -- You can configure the Airbrussh format using :format_options. -- These are the defaults. -- set :format_options, command_output: true, log_file: 'log/capistrano.log', color: :auto, truncate: :auto -- Default value for :pty is false -- set :pty, true -- Default value for :linked_files is [] -- set :linked_files, fetch(:linked_files, []).push('config/database.yml', 'config/secrets.yml') -- Default value for linked_dirs is [] -- set :linked_dirs, fetch(:linked_dirs, []).push('log', 'tmp/pids', 'tmp/cache', 'tmp/sockets', 'public/system') -- Default value for default_env is {} -- set :default_env, { path: "/opt/ruby/bin:$PATH" } -- Default value for keep_releases is 5 -- set :keep_releases, 5 namespace :deploy do after :restart, :clear_cache do on roles(:web), in: :groups, limit: 3, wait: 10 do -- Here we can do anything such as: -- within release_path do -- execute :rake, 'cache:clear' end end end end Production.rb role :app, %w{ely029@192.168.1.241} # EDIT your ssh username and server ip address

set :scm, "git" --set :repository, "file:/// Users/deployer/sites/my-app" set :repository, "C:/xampp/htdocs/vendor" set :deploy_via, :copy set :use_sudo, false set :keep_releases, 3 -- Default branch is :master -- ask :branch, git rev-parse --abbrev-ref HEAD .chomp -- Default deploy_to directory is /var/www/my_app_name -- set :deploy_to, '/var/www/my_app_name' -- Default value for :scm is :git -- set :scm, :git -- Default value for :format is :airbrussh. -- set :format, :airbrussh -- You can configure the Airbrussh format using :format_options. -- These are the defaults. -- set :format_options, command_output: true, log_file: 'log/capistrano.log', color: :auto, truncate: :auto -- Default value for :pty is false -- set :pty, true -- Default value for :linked_files is [] -- set :linked_files, fetch(:linked_files, []).push('config/database.yml', 'config/secrets.yml') -- Default value for linked_dirs is [] -- set :linked_dirs, fetch(:linked_dirs, []).push('log', 'tmp/pids', 'tmp/cache', 'tmp/sockets', 'public/system') -- Default value for default_env is {} -- set :default_env, { path: "/opt/ruby/bin:$PATH" } -- Default value for keep_releases is 5 -- set :keep_releases, 5 namespace :deploy do after :restart, :clear_cache do on roles(:web), in: :groups, limit: 3, wait: 10 do -- Here we can do anything such as: -- within release_path do -- execute :rake, 'cache:clear' end end end end Production.rb role :app, %w{ely029@192.168.1.241} # EDIT your ssh username and server ip address

set :scm, "git" --set :repository, "file:/// Users/deployer/sites/my-app" set :repository, "C:/xampp/htdocs/vendor" set :deploy_via, :copy set :use_sudo, false set :keep_releases, 3 -- Default branch is :master -- ask :branch, git rev-parse --abbrev-ref HEAD .chomp -- Default deploy_to directory is /var/www/my_app_name -- set :deploy_to, '/var/www/my_app_name' -- Default value for :scm is :git -- set :scm, :git -- Default value for :format is :airbrussh. -- set :format, :airbrussh -- You can configure the Airbrussh format using :format_options. -- These are the defaults. -- set :format_options, command_output: true, log_file: 'log/capistrano.log', color: :auto, truncate: :auto -- Default value for :pty is false -- set :pty, true -- Default value for :linked_files is [] -- set :linked_files, fetch(:linked_files, []).push('config/database.yml', 'config/secrets.yml') -- Default value for linked_dirs is [] -- set :linked_dirs, fetch(:linked_dirs, []).push('log', 'tmp/pids', 'tmp/cache', 'tmp/sockets', 'public/system') -- Default value for default_env is {} -- set :default_env, { path: "/opt/ruby/bin:$PATH" } -- Default value for keep_releases is 5 -- set :keep_releases, 5 namespace :deploy do after :restart, :clear_cache do on roles(:web), in: :groups, limit: 3, wait: 10 do -- Here we can do anything such as: -- within release_path do -- execute :rake, 'cache:clear' end end end end Production.rb role :app, %w{ely029@192.168.1.241} # EDIT your ssh username and server ip address

set :scm, "git" --set :repository, "file:/// Users/deployer/sites/my-app" set :repository, "C:/xampp/htdocs/vendor" set :deploy_via, :copy set :use_sudo, false set :keep_releases, 3 -- Default branch is :master -- ask :branch, git rev-parse --abbrev-ref HEAD .chomp -- Default deploy_to directory is /var/www/my_app_name -- set :deploy_to, '/var/www/my_app_name' -- Default value for :scm is :git -- set :scm, :git -- Default value for :format is :airbrussh. -- set :format, :airbrussh -- You can configure the Airbrussh format using :format_options. -- These are the defaults. -- set :format_options, command_output: true, log_file: 'log/capistrano.log', color: :auto, truncate: :auto -- Default value for :pty is false -- set :pty, true -- Default value for :linked_files is [] -- set :linked_files, fetch(:linked_files, []).push('config/database.yml', 'config/secrets.yml') -- Default value for linked_dirs is [] -- set :linked_dirs, fetch(:linked_dirs, []).push('log', 'tmp/pids', 'tmp/cache', 'tmp/sockets', 'public/system') -- Default value for default_env is {} -- set :default_env, { path: "/opt/ruby/bin:$PATH" } -- Default value for keep_releases is 5 -- set :keep_releases, 5 namespace :deploy do after :restart, :clear_cache do on roles(:web), in: :groups, limit: 3, wait: 10 do -- Here we can do anything such as: -- within release_path do -- execute :rake, 'cache:clear' end end end end Production.rb role :app, %w{ely029@192.168.1.241} # EDIT your ssh username and server ip address

set :scm, "git" --set :repository, "file:/// Users/deployer/sites/my-app" set :repository, "C:/xampp/htdocs/vendor" set :deploy_via, :copy set :use_sudo, false set :keep_releases, 3 -- Default branch is :master -- ask :branch, git rev-parse --abbrev-ref HEAD .chomp -- Default deploy_to directory is /var/www/my_app_name -- set :deploy_to, '/var/www/my_app_name' -- Default value for :scm is :git -- set :scm, :git -- Default value for :format is :airbrussh. -- set :format, :airbrussh -- You can configure the Airbrussh format using :format_options. -- These are the defaults. -- set :format_options, command_output: true, log_file: 'log/capistrano.log', color: :auto, truncate: :auto -- Default value for :pty is false -- set :pty, true -- Default value for :linked_files is [] -- set :linked_files, fetch(:linked_files, []).push('config/database.yml', 'config/secrets.yml') -- Default value for linked_dirs is [] -- set :linked_dirs, fetch(:linked_dirs, []).push('log', 'tmp/pids', 'tmp/cache', 'tmp/sockets', 'public/system') -- Default value for default_env is {} -- set :default_env, { path: "/opt/ruby/bin:$PATH" } -- Default value for keep_releases is 5 -- set :keep_releases, 5 namespace :deploy do after :restart, :clear_cache do on roles(:web), in: :groups, limit: 3, wait: 10 do -- Here we can do anything such as: -- within release_path do -- execute :rake, 'cache:clear' end end end end Production.rb role :app, %w{ely029@192.168.1.241} # EDIT your ssh username and server ip address

set :scm, "git" --set :repository, "file:/// Users/deployer/sites/my-app" set :repository, "C:/xampp/htdocs/vendor" set :deploy_via, :copy set :use_sudo, false set :keep_releases, 3 -- Default branch is :master -- ask :branch, git rev-parse --abbrev-ref HEAD .chomp -- Default deploy_to directory is /var/www/my_app_name -- set :deploy_to, '/var/www/my_app_name' -- Default value for :scm is :git -- set :scm, :git -- Default value for :format is :airbrussh. -- set :format, :airbrussh -- You can configure the Airbrussh format using :format_options. -- These are the defaults. -- set :format_options, command_output: true, log_file: 'log/capistrano.log', color: :auto, truncate: :auto -- Default value for :pty is false -- set :pty, true -- Default value for :linked_files is [] -- set :linked_files, fetch(:linked_files, []).push('config/database.yml', 'config/secrets.yml') -- Default value for linked_dirs is [] -- set :linked_dirs, fetch(:linked_dirs, []).push('log', 'tmp/pids', 'tmp/cache', 'tmp/sockets', 'public/system') -- Default value for default_env is {} -- set :default_env, { path: "/opt/ruby/bin:$PATH" } -- Default value for keep_releases is 5 -- set :keep_releases, 5 namespace :deploy do after :restart, :clear_cache do on roles(:web), in: :groups, limit: 3, wait: 10 do -- Here we can do anything such as: -- within release_path do -- execute :rake, 'cache:clear' end end end end Production.rb role :app, %w{ely029@192.168.1.241} # EDIT your ssh username and server ip address

set :scm, "git" --set :repository, "file:/// Users/deployer/sites/my-app" set :repository, "C:/xampp/htdocs/vendor" set :deploy_via, :copy set :use_sudo, false set :keep_releases, 3 -- Default branch is :master -- ask :branch, git rev-parse --abbrev-ref HEAD .chomp -- Default deploy_to directory is /var/www/my_app_name -- set :deploy_to, '/var/www/my_app_name' -- Default value for :scm is :git -- set :scm, :git -- Default value for :format is :airbrussh. -- set :format, :airbrussh -- You can configure the Airbrussh format using :format_options. -- These are the defaults. -- set :format_options, command_output: true, log_file: 'log/capistrano.log', color: :auto, truncate: :auto -- Default value for :pty is false -- set :pty, true -- Default value for :linked_files is [] -- set :linked_files, fetch(:linked_files, []).push('config/database.yml', 'config/secrets.yml') -- Default value for linked_dirs is [] -- set :linked_dirs, fetch(:linked_dirs, []).push('log', 'tmp/pids', 'tmp/cache', 'tmp/sockets', 'public/system') -- Default value for default_env is {} -- set :default_env, { path: "/opt/ruby/bin:$PATH" } -- Default value for keep_releases is 5 -- set :keep_releases, 5 namespace :deploy do after :restart, :clear_cache do on roles(:web), in: :groups, limit: 3, wait: 10 do -- Here we can do anything such as: -- within release_path do -- execute :rake, 'cache:clear' end end end end Production.rb role :app, %w{ely029@192.168.1.241} # EDIT your ssh username and server ip address

set :scm, "git" --set :repository, "file:/// Users/deployer/sites/my-app" set :repository, "C:/xampp/htdocs/vendor" set :deploy_via, :copy set :use_sudo, false set :keep_releases, 3 -- Default branch is :master -- ask :branch, git rev-parse --abbrev-ref HEAD .chomp -- Default deploy_to directory is /var/www/my_app_name -- set :deploy_to, '/var/www/my_app_name' -- Default value for :scm is :git -- set :scm, :git -- Default value for :format is :airbrussh. -- set :format, :airbrussh -- You can configure the Airbrussh format using :format_options. -- These are the defaults. -- set :format_options, command_output: true, log_file: 'log/capistrano.log', color: :auto, truncate: :auto -- Default value for :pty is false -- set :pty, true -- Default value for :linked_files is [] -- set :linked_files, fetch(:linked_files, []).push('config/database.yml', 'config/secrets.yml') -- Default value for linked_dirs is [] -- set :linked_dirs, fetch(:linked_dirs, []).push('log', 'tmp/pids', 'tmp/cache', 'tmp/sockets', 'public/system') -- Default value for default_env is {} -- set :default_env, { path: "/opt/ruby/bin:$PATH" } -- Default value for keep_releases is 5 -- set :keep_releases, 5 namespace :deploy do after :restart, :clear_cache do on roles(:web), in: :groups, limit: 3, wait: 10 do -- Here we can do anything such as: -- within release_path do -- execute :rake, 'cache:clear' end end end end Production.rb role :app, %w{ely029@192.168.1.241} # EDIT your ssh username and server ip address

set :ssh_options, { auth_methods: %w(password), password: "embuscado29" # EDIT your ssh password

set :deploy_via, :copy does nothing; set :deploy_via, :copy不执行任何操作; this is not a valid Capistrano 3 setting. 这不是有效的Capistrano 3设置。

Capistrano 3 has no built-in mechanism for deploying by way of copying files from one machine to another. Capistrano 3没有内置的机制可以通过将文件从一台计算机复制到另一台计算机进行部署。 You need a central source code repository, such as a remote Git repository that the server can access. 您需要一个中央源代码存储库,例如服务器可以访问的远程Git存储库。

There are third-party Capistrano plugins that may provide the copying behavior you need (search GitHub for capistrano copy ), but I cannot vouch for their quality or effectiveness. 有第三方Capistrano插件可以提供您所需的复制行为(在GitHub上搜索capistrano copy ),但是我不能保证其质量或有效性。 My recommendation would be to use a remote Git repository. 我的建议是使用远程Git存储库。

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM