Próbowałem pobrać autentyczne repozytorium git na Heroku i napotkałem kilka problemów.Wyciąganie uwierzytelnionych repozytoriów git na Heroku
Najlepiej byłoby, gdyby można było używać rozwiązania token solution heregit pull https://<token>@github.com/username/bar.git
lub nawet git pull https://username:[email protected]/username/bar.git
, jeśli rozwiązanie tokena nie jest możliwe.
Jednak wydaje wersję Heroku git (v1.7.0) zmaga się od https uwierzytelnionych klonów:
$ heroku run bash
$ git --version
git version 1.7.0
$ git clone https://username:[email protected]/username/bar.git
Initialized empty Git repository in /app/bevry-website/.git/
error: The requested URL returned error: 401 while accessing https://username:[email protected]/username/bar.git/info/refs
fatal: HTTP request failed
Instalacja nowszej wersji git (v1.7.12) na przykład Heroku i stosując że działa dobrze :
$ heroku run bash
$ curl --silent --location http://git-core.googlecode.com/files/git-1.7.12.tar.gz | tar xz; cd git-1.7.12; make NO_TCLTK=YesPlease NO_PERL=YesPlease NO_GETTEXT=YesPlease NO_SVN_TESTS=YesPlease NO_MSGFMT=YesPlease NO_MSGFMT_EXTENDED_OPTIONS=YesPlease prefix=$HOME install; cd ..; rm -Rf git-1.7.12
$ ./bin/git --version
git version 1.7.12
$ ./bin/git clone https://username:[email protected]/username/bar.git
works fine :)
Jednak zainstalowanie naszej własnej wersji git na instancji nie jest idealne, ponieważ kompilacja i instalacja trwa bardzo długo.
Wygląda na to, że Heroku nie oferuje żadnego bezpłatnego wsparcia, co jest niefortunne, ponieważ po prostu muszę im powiedzieć, żeby uaktualnili swoją wersję git i wszystko jest w porządku. Jednakże, ponieważ nie jest to możliwe, czy ktoś ma jakieś sugestie dotyczące robienia autentycznych klonów git https na heroku? (Udało mi się uwierzytelnić ssh, ładując specjalny repozytorium z katalogu .ssh
, jednak nie jest to idealne rozwiązanie dla naszej sytuacji, ponieważ wolimy używać tylko https i tokenów).
Dzięki :) Może uda mi się zgarnąć trochę pracowników Heroku na Twittera, aby zaktualizować git :) – balupton