2017-02-14 29 views
21

Uyarı: Hem git hem de GitHub için oldukça yeni.GitHub Çekme İstekleri ile Düzeltmeler Nasıl Yapılır

Bu nedenle, şu anki kurulumda, ekibim, iki dalda birleştirilmesi ve her iki yönde de yukarı yönde itilmesi gereken değişiklikleri yapmak için git akış Düzeltmeleri (genellikle GitKraken veya IntelliJ gibi bir grafik aracı tarafından başlatılan ve tamamlanan) kullanır. Yani, örneğin akış olacaktır:

  1. Başlat düzeltme
  2. hem mürşide yer değişimi
  3. Birleştirme düzeltme dalı Teslim ustadan son çekin ve geliştirmek ve hem memba

itmek Biz Şimdi kodumuzu GitHub'a taşımak istiyoruz ve birkaç nedenden dolayı Çekme Talepleri'ni kullanmaya başlamak istiyoruz:

  • CI kancalar sürekli son ana çekerek edilecek testler ve malzeme
  • herkese doğrudan ihtiyacını ortadan altında yatan "sorunu"
  • ilgili olmayan kod özel yorumları koymak için bir yer çalıştırmak için/kendi yerel etmek geliştirmek makine böylece değişiklikleri birleştirir

Ancak Düzeltmeler durumunda, ne yapacağımdan emin değilim, çünkü iki dalda birleşiyorum ama gerçekten bir "eylem" oluyor, bu yüzden elle iki çekme isteği oluşturuyor garip geliyor, özellikle 4. adımdan beri) mevcut akışımızdaki tek bir tıklama.

Bunu işlemenin akıllı bir yolu var mı? İdeal durum, Çekme İsteğindeki Birleştirme düğmesine basmanın her ikisine birden girmesi olurdu, ancak bu mevcut bir seçenek olarak görünmüyor. Eğer belirtildiği gibi

+1

Benzer bir soru http://softwareengineering.stackexchange.com/questions/187723/code-review-with-git-flow-and-github – Robbie

+0

@Robbie teşekkürler, ben de bunları inceleyeceğim. – Dan

cevap

16

, Çekme Talebi sadece bir hedef dalı vardır, bu nedenle tek bir çekin İsteği birleştirerek master ve develop hem düzeltmeyi itmek mümkün olmayacaktır.

Ayrıca, adım 4'den bahsetmene şaşırdım - düzeltme dalını hem master hem de develop ile birleştirmek ve yukarı aktarma - bir eylemdir. hotfix ile master arasındaki birleştirme, birleştirme çakışmalarıyla karşılaşmayacak kadar yüksek bir olasılık olsa da, üretim için son dağıtımdan bu yana çalışılmış olabileceğinden, hotfix ile develop arasındaki birleştirme için aynı şeyi söyleyemem.

  • master için hotfix itibaren bir PR oluşturma ve bunu master birleştirilecek oluyor kere birisi düzelt
  • doğrulamak üzere inceliyoruz var hotfix den develop başka PR oluşturun:

    Benim tavsiye sonra aşağıdaki olurdu ve birleştirme çakışmalarıyla karşılaşırsanız bkz.

    • Eğer durum buysa, birleştirme çakışmaları çözümlensin, böylece PR birleştirilmiş bir durumda sona erer ve bir başkasını devir hiçbir birleştirme çatışmaları varsa PR
    • iew, her iki kaldıraç olacaktır, gerçekten otomatik yolda gitmek istiyorum eğer birisi, alternatif bir çözüm PR

incelettirme GitHub webhooks ve API.

Web sayfası, notified when a PR is merged olmanıza izin verir. Temel dalı hotfix/ ile başladığından ve hedef dalın master olduğundan emin olmak için yükü inceleyebilirsiniz. Daha sonra bu olaya, API'sini develop'a kullanarak yanıtlayabilirsiniz. Bazı geliştirmeyi içerecek ve UI aracılığıyla bir PR oluşturulmasından bu yana bu çabaya değmeyecektir, bu da hala oldukça kolay ve hızlıdır.

İlgili konular