Heroku'nun 'usta' hariç tüm dalları görmezden gelme politikası vardır.
Heroku'nun tasarımcılarının bu politika için mükemmel nedenleri olduğundan emin olmama rağmen (depolama ve performans optimizasyonu için tahmin ediyorum), geliştirici olarak sonuç, çalıştığım yerel konu dalı ne olursa olsun, kolay bir yol istiyorum Heroku'nun ustasını bu yerel konu dalına geçirmek ve Heroku'da ustayı aşırı yazmak için "git push heroku -f" yapmak.
Ne bir "Pushing Refspecs" bölümünü okuyarak aldığım http://progit.org/book/ch9-5.html olduğunu
git push -f heroku yerel-konu-şube: refs / kafaları / usta
Gerçekten istediğim, yapılandırma dosyasında bunu ayarlamanın bir yoludur, böylece "git push heroku" her zaman yukarıdakileri yapar, yerel konu dalını mevcut dalımın adı ne olursa olsun değiştirir. Bunu nasıl başaracağını bilen biri varsa, lütfen bana bildirin!
Bunun için uyarı, elbette, bunun sadece o Heroku uygulamasına / havuzuna itebilecek tek kişi olduğumda mantıklı olmasıdır. Bir test veya KG ekibi, farklı aday şubeleri denemek için böyle bir veri havuzunu yönetebilir, ancak belirli bir günde hangi şubeye ittikleri konusunda hemfikir olması için koordinasyon yapmaları gerekir.
Söylemeye gerek yok, her şeyi yedeklemek için bu kısıtlama olmadan ayrı bir uzak depoya (GitHub gibi) sahip olmak da çok iyi bir fikir olacaktır. Ona "orijin" diyorum ve Heroku için "heroku" kullanacağım, böylece "git push" her zaman orijin için her şeyi yedekler ve "git push heroku" şu anda hangi şubede olduğum dalı iter, üzerine yazar Eğer gerekliyse.
Bu işe yarar mı?
[uzak "heroku"] url = git@heroku.com: my-app.git push = + refs / kafalar / *: refs / kafalar / master
Denemeye başlamadan önce daha deneyimli birinden duymak isterim, ancak Heroku'da bir kukla uygulama oluşturabilir ve bununla deney yapabilirim.
Getirmeye gelince, Heroku deposunun salt yazılır olup olmadığı gerçekten umrumda değil. Tüm işlerimin yedeklenmesi ve kopyalanması için GitHub gibi ayrı bir havuzum var.
Dipnot: Bu soru, Heroku ile şube stratejisini kullanarak Good Git dağıtımına benzer, ancak tam olarak aynı değil mi?