0

我想将我的示例项目从 ubuntu 部署到 windows 我已经成功地在 ubuntu 上创建了一个 ssh 密钥。现在我想通过仅将文件从 Windows 远程复制到 ubuntu 来做到这一点。当我执行“上限生产部署”时,我收到此错误“致命:没有远程配置来列出来自的引用。” 我来宾这是来自 git。我的问题是,如果我只将项目从 Windows 复制并粘贴到服务器,如何设置 inscm?

顺便说一下,这是我以下 rb 文件的代码:

部署者.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 :ssh_options, { auth_methods: %w(password), password: "embuscado29" # EDIT your ssh password

4

1 回答 1

1

set :deploy_via, :copy什么也没做; 这不是有效的 Capistrano 3 设置。

Capistrano 3 没有通过将文件从一台机器复制到另一台机器来进行部署的内置机制。您需要一个中央源代码存储库,例如服务器可以访问的远程 Git 存储库。

有第三方 Capistrano 插件可以提供您需要的复制行为(在 GitHub 中搜索capistrano 副本),但我不能保证它们的质量或有效性。我的建议是使用远程 Git 存储库。

于 2016-07-26T22:26:39.657 回答