Heroku memiliki kebijakan mengabaikan semua cabang kecuali 'tuan'.
Meskipun saya yakin desainer Heroku memiliki alasan yang sangat baik untuk kebijakan ini (saya menduga untuk penyimpanan dan optimalisasi kinerja), konsekuensinya bagi saya sebagai pengembang adalah bahwa apa pun cabang topik lokal yang sedang saya kerjakan, saya ingin cara mudah untuk mengalihkan master Heroku ke cabang topik lokal dan melakukan "git push heroku -f" untuk menulis master yang berlebihan pada Heroku.
Apa yang saya dapat dari membaca bagian "Mendorong Refspecs" di http://progit.org/book/ch9-5.html adalah
git push -f heroku cabang-topik-lokal: ref / kepala / master
Apa yang saya benar-benar suka adalah cara untuk mengatur ini di file konfigurasi sehingga "git push heroku" selalu melakukan hal di atas, mengganti cabang topik-lokal dengan nama apa pun cabang saya saat ini. Jika ada yang tahu bagaimana mencapainya, beri tahu saya!
Peringatan untuk ini, tentu saja, adalah bahwa ini hanya masuk akal jika saya adalah satu-satunya yang dapat mendorong ke aplikasi / repositori Heroku itu. Tim uji atau QA mungkin mengelola repositori seperti itu untuk mencoba cabang-cabang kandidat yang berbeda, tetapi mereka harus berkoordinasi sehingga mereka semua sepakat tentang cabang apa yang mereka dorong pada hari tertentu.
Tak perlu dikatakan, itu juga akan menjadi ide yang sangat bagus untuk memiliki repositori jarak jauh yang terpisah (seperti GitHub) tanpa batasan ini untuk mendukung semuanya. Saya akan menyebutnya "asal" dan menggunakan "heroku" untuk Heroku sehingga "git push" selalu mencadangkan segalanya untuk asal, dan "git push heroku" mendorong cabang apa pun yang saya gunakan saat ini ke cabang utama Heroku, menimpanya jika diperlukan.
Apakah ini akan berhasil?
[remote "heroku"] url = git@heroku.com: my-app.git push = + referensi / kepala / *: referensi / kepala / master
Saya ingin mendengar dari seseorang yang lebih berpengalaman sebelum saya mulai bereksperimen, meskipun saya kira saya bisa membuat aplikasi tiruan di Heroku dan bereksperimen dengan itu.
Sedangkan untuk mengambil, saya tidak terlalu peduli apakah repositori Heroku hanya untuk penulisan. Saya masih memiliki repositori terpisah, seperti GitHub, untuk cadangan dan kloning semua pekerjaan saya.
Catatan Kaki: Pertanyaan ini mirip dengan, tetapi tidak sama dengan penyebaran Good Git menggunakan strategi cabang dengan Heroku?