Ich versuche, "deploy: kalt" für meine App zu tun. Der Git Repo ist lokal zu mein Deployment-Server (d. H. Ich habe nur einen Server für alles und ich hosten nicht meinen Code auf Github).Capistrano + Git: Repository lokal für Produktionsserver
Hier das Transkript ist (ersetzt meinen App-Name mit "myapp" für die Privatsphäre)
* 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
Hier ist meine deploy.rb: http://pastie.org/831424
Ich habe auch versucht
set :repository, "[email protected]:/home/mrichman/git/myapp.git"
aber das gibt mir
ssh: connect to host localhost port 22: Connection refused
Irgendwelche Ideen werden geschätzt.
Ich habe jetzt die folgenden, die auch fehlschlägt: Satz: Repository, "file: ///var/git/myapp.git" Satz: local_repository "localhost: /var/git/myapp.git" lokal ausführen: "git ls-remote localhost: /var/git/hireexchange.git master" ssh: Verbindung zum Host herstellen localhost Port 22: Verbindung verweigert –
Entwickeln Sie auf derselben Box? Wenn Sie sind, würde ich mir vorstellen: local_repository, "file: //var/git/myapp.git" würde funktionieren. localhost sollte durch den Hostnamen ersetzt werden, mit dem Sie sich von Ihrer angenommenen fernen Workstation aus verbinden. Auch ich habe festgestellt, dass wenn Sie Submodule haben Sie mehr Probleme bei der Durchführung einer Bereitstellung wie folgt, weil die Module auf eine Remote-URL verweisen. Sehr ärgerlich, aber kann mit .ssh/config auf Ihrem Server unter dem Benutzer, den Sie bereitstellen, als gelöst werden. – pmarsh
Hallo Leute. Wenn es einen Unterschied macht, benötigt Git auf meinem lokalen und Remote-Rechner unterschiedliche Pfade, daher benötigte ich set: git_local/pfad/zu/remote/git und set: git/usr/bin/git (beachten sie, dass sie nicht den ssh benötigen der Anfang). – btelles