Tôi đang cố gắng thực hiện 'triển khai: lạnh' cho ứng dụng của mình. Git repo là địa phương để máy chủ triển khai của tôi (nghĩa là tôi chỉ có một máy chủ cho mọi thứ và tôi không lưu trữ mã của tôi trên github).Capistrano + Git: lưu trữ cục bộ vào máy chủ sản xuất
Dưới đây là bảng điểm (thay thế tên ứng dụng của tôi với "myapp" cho sự riêng tư)
* executing `deploy:cold'
* executing `deploy:update'
** transaction: start
* executing `deploy:update_code'
executing locally: "git ls-remote /home/mrichman/git/myapp.git master"
fatal: '/home/mrichman/git/myapp.git' does not appear to be a git repository
fatal: The remote end hung up unexpectedly
*** [deploy:update_code] rolling back
* executing "rm -rf /var/www/myapp.com/releases/20100218203108; true"
servers: ["myapp.com"]
Password:
[myapp.com] executing command
command finished
Command git ls-remote /home/mrichman/git/myapp.git master returned status code 32768
Đây là deploy.rb tôi: http://pastie.org/831424
Tôi cũng đã cố gắng
set :repository, "[email protected]:/home/mrichman/git/myapp.git"
nhưng điều đó mang lại cho tôi
ssh: connect to host localhost port 22: Connection refused
Bất kỳ ý tưởng nào được đánh giá cao.
Tôi hiện có các thông tin sau, cũng không thành công: thiết lập: kho lưu trữ, "tệp: ///var/git/myapp.git" bộ: local_repository, "localhost: /var/git/myapp.git" thực hiện cục bộ: "git ls-remote localhost: /var/git/hireexchange.git master" ssh: kết nối với host localhost port 22: Kết nối từ chối –
Bạn đang phát triển trên cùng một hộp? Nếu bạn muốn tưởng tượng: local_repository, "file: //var/git/myapp.git" sẽ hoạt động. localhost nên được thay thế bằng bất kỳ tên máy chủ nào mà bạn kết nối từ máy trạm từ xa giả định của bạn. Ngoài ra tôi đã thấy rằng nếu bạn có submodules bạn sẽ chạy vào nhiều vấn đề hơn làm một triển khai như thế này, bởi vì các mô-đun được thiết lập để trỏ đến một URL từ xa. Rất khó chịu, nhưng có thể được giải quyết bằng cách sử dụng .ssh/config trên máy chủ của bạn theo người dùng bạn triển khai dưới dạng. – pmarsh
Xin chào các bạn. Nếu nó làm cho bất kỳ sự khác biệt, git trên máy địa phương và từ xa của tôi yêu cầu các đường dẫn khác nhau, do đó tôi cần thiết lập: git_local/path/to/remote/git và thiết lập: git/usr/bin/git (lưu ý những điều này không yêu cầu ssh trong sự bắt đầu). – btelles