Heroku có chính sách bỏ qua tất cả các chi nhánh trừ 'chủ nhân'.
Mặc dù tôi chắc chắn rằng các nhà thiết kế của Heroku có lý do tuyệt vời cho chính sách này (tôi đoán là tối ưu hóa lưu trữ và hiệu suất), nhưng hậu quả đối với tôi là nhà phát triển là bất cứ ngành chủ đề địa phương nào tôi có thể làm việc, tôi muốn một cách dễ dàng để chuyển chủ nhân của Heroku sang nhánh chủ đề địa phương đó và thực hiện "git đẩy heroku -f" thành chủ nhân viết quá nhiều trên Heroku.
Những gì tôi nhận được từ việc đọc phần "Đẩy lùi" của http://progit.org/book/ch9-5.html là
git đẩy -f heroku local-topic-chi nhánh: refs / Heads / master
Điều tôi thực sự thích là một cách để thiết lập điều này trong tệp cấu hình sao cho "git push heroku" luôn làm như trên, thay thế nhánh chủ đề cục bộ bằng tên của bất cứ nhánh nào hiện tại của tôi. Nếu ai biết làm thế nào để thực hiện điều đó, xin vui lòng cho tôi biết!
Tất nhiên, điều cần lưu ý là điều này chỉ hợp lý nếu tôi là người duy nhất có thể đẩy vào ứng dụng / kho lưu trữ Heroku đó. Một nhóm thử nghiệm hoặc QA có thể quản lý một kho lưu trữ như vậy để thử các nhánh ứng cử viên khác nhau, nhưng họ sẽ phải phối hợp để tất cả họ đồng ý về nhánh nào họ sẽ đẩy vào đó vào bất kỳ ngày nào.
Không cần phải nói, nó cũng là một ý tưởng rất tốt để có một kho lưu trữ từ xa riêng biệt (như GitHub) mà không có hạn chế này để sao lưu mọi thứ lên đến. Tôi gọi đó là "nguồn gốc" và sử dụng "heroku" cho Heroku để "git đẩy" luôn sao lưu mọi thứ để xuất phát và "git đẩy heroku" đẩy bất cứ chi nhánh nào tôi hiện đang đến chi nhánh chính của Heroku, ghi đè lên nó Nếu cần.
Điều này sẽ làm việc?
[từ xa "heroku"] url = git@heroku.com: my-app.git đẩy = + refs / Heads / *: refs / Heads / master
Tôi muốn nghe từ một người có kinh nghiệm hơn trước khi tôi bắt đầu thử nghiệm, mặc dù tôi cho rằng tôi có thể tạo một ứng dụng giả trên Heroku và thử nghiệm điều đó.
Đối với tìm nạp, tôi không thực sự quan tâm nếu kho Heroku chỉ ghi. Tôi vẫn có một kho lưu trữ riêng, như GitHub, để sao lưu và nhân bản tất cả công việc của tôi.
Lưu ý: Câu hỏi này tương tự, nhưng không hoàn toàn giống như triển khai Good Git bằng chiến lược chi nhánh với Heroku?