Projelerinizi sürüm kontrolü ile yönetin
Bir veri projesinin gelişimini yönetmek ve değişiklikleri takip etmek için sürüm kontrolünü kullanabilirsiniz.
Sürüm kontrolü ile çalışırken, tasarım sırasında projelerin sürümlerini gönderebilirsiniz. Bu, projenin iki sürümü arasındaki değişiklikleri görmenize olanak tanır. Veri projelerinizi bir dallandırma stratejisi kullanarak da geliştirebilirsiniz. Bu, her çalışma alanında veya dalda projenin izole bir sürümü üzerinde çalışmanıza olanak tanır. Çalışma alanı birkaç kullanıcı tarafından paylaşılabilir. Daha sonra değişikliklerinizi çalışma alanından üretime dağıtmak için ana dalla birleştirebilirsiniz.
GitHub, sürüm kontrolü için sağlayıcı olarak kullanılır.
Başlarken
-
GitHub'da kiracının GitHub'a erişmek için kullanabileceği bir kullanıcı oluşturun. Bu zaten bir yönetici tarafından sizin için oluşturulmuş olabilir.
Kullanıcı aşağıdaki kapsamlara sahip olmalıdır:
-
repo
-
read:org
-
read:user
-
read:project
-
-
Değiştirmeyi planladığınız depolarda yazma erişimine ihtiyacınız vardır.
-
Bir GitHub kişisel erişim belirteci (klasik) oluşturmanız gerekir. Ayrıntılı kişisel erişim belirteçleri desteklenmez.
Daha fazla bilgi için GitHub belgelerine bakın: Kişisel erişim belirteçlerinizi yönetme.
-
GitHub yapılandırmasında kuruluş zorunludur.
-
Sürüm kontrolü eylemlerini gerçekleştirmek için projenin bulunduğu alanda Düzenleyebilir rolüne ihtiyacınız vardır.
-
Sürüm kontrolünü kullanmaya başlamadan önce, oluşturduğunuz GitHub kullanıcısı ile GitHub'a bağlanmak için bir yapılandırma ayarlamanız gerekir.
-
GitHub ile bir bağlantı kurduğunuzda, bir projeyi bir depoya bağlayabilirsiniz.
GitHub yapılandırması ayarlama
Sürüm kontrolü ile çalışmak isteyen tüm kullanıcılar, bir GitHub kullanıcı hesabı kullanarak GitHub'a bağlanmak için bir yapılandırma ayarlamalıdır.
GitHub'ı Projeler'de yapılandırabilirsiniz. Başlarken uyarınca hazırladığınızdan emin olun.
-
ve ardından GitHub yapılandırması'na tıklayın.
-
Kuruluşunuzu ve Başlarken içinde açıklanan GitHub kişisel erişim belirtecini kullanarak kimlik doğrulaması ayarlayın.
-
OK düğmesine tıklayın.
Artık projelerinizi bir depoya bağlayabilirsiniz.
Bir projeyi bir depoya bağlama
Sürüm kontrolünü kullanmaya başlamadan önce bir projeyi bir depoya bağlamanız gerekir. GitHub ile bağlantı kurduğunuzdan emin olun.
-
Projeler bölümündeki bir projede ... simgesine tıklayın ve Sürüm kontrolüne bağla'yı seçin.
-
Projenin hangi depo ile ilişkilendirileceğini seçin.
-
Temel bir dizin yolu ekleyin.
GitHub'da mevcut bir projeyi bağlamak istiyorsanız aynı adı kullanmanız gerekir.
-
Projeyi göndermeyi ve bağlantıdan sonra projeyi uzak depoya bildirmeyi seçebilirsiniz. Gönderilecek bir mesaj girin.
Gönderip bildirmezseniz uzak depoda değil, çalışma alanında bir ana dal oluşturulacaktır.
-
Bağlan'a tıklayın.
Proje artık seçilen depoya bağlıdır. Bu, ile proje kartının altında, deponun adı ve geçerli dal ile gösterilir.
Projeyi açtığınızda başlık satırı artık sürüm kontrolü seçeneklerini içeren bir GitHub menüsü içerecektir. Proje adına geçerli dalın adı da eklenecektir.
Sürüm kontrolü ile proje geliştirme
Sürüm kontrolünü farklı yaklaşımlarla kullanabilirsiniz:
-
Doğrudan ana dal üzerinde çalışma. Bu, esas olarak bir projede değişiklikleri takip etmek isteyen tek bir geliştirici için uygundur, ancak senkronize çalışan bir grup geliştirici tarafından da kullanılabilir.
-
Birden fazla geliştiricinin katkıda bulunabileceği bir dallandırma stratejisi ile çalışma. Yeni özellikleri veya değişiklikleri birbirinden ayırmak için dallar da oluşturabilirsiniz.
Tek geliştiricili bir proje için basitleştirilmiş iş akışı
Doğrudan bir projenin ana dalı üzerinde çalışabilirsiniz. Bu yaklaşım daha basittir ve daha az işlem içerir, ancak yine de değişiklikleri takip etmenizi sağlar. Birden fazla geliştirici varsa senkronize olmaya dikkat etmeleri gerekir.
Projede uygulamak istediğiniz değişiklikleri yaptığınızda sadece bir Gönder ve Bildir işlemi yapın.
Çok geliştiricili bir proje için iş akışı
Bu iş akışı, bir proje üzerinde çalışan birden fazla geliştirici varsa veya değişiklikleri izole etmek istiyorsanız kullanılabilir. Bu, diğer kullanıcılarla paylaşabileceğiniz bir geliştirme dalı oluşturmayı içerir. Bu iş akışı sayesinde, geliştiriciler birbirlerinin değişikliklerini takip edebilir ve değişiklikleri ana dalla ne zaman birleştireceklerine karar verebilirler.
-
Yeni bir dal oluşturun
Ana daldan yeni bir geliştirme dalı oluşturun. Dalı daha fazla kullanıcıyla paylaşabilirsiniz.
-
Geliştirme
Projede gerekli tüm değişiklikleri yapın.
Bilgi notuVeritabanı şemaları ve bağlantıları sürüm kontrolünde tutulmaz. -
Uzaktan değişiklikleri uygula
Diğer dallardaki değişiklikler hakkında güncel bilgileri aldığınızdan emin olmak için başka bir daldan uzaktan değişiklikleri çalışma alanınıza uygulayın. Bu, çakışan değişiklikleri önlemek veya azaltmak için yararlıdır.
Çakışabilecek değişiklikler içeren iki dalınız varsa geçici çözüm şudur:
-
Değişiklikleri her iki çalışma alanına da gönderme.
-
Her iki dalı ana dal ile birleştirme.
-
Uzaktan değişiklikleri tekrar uygulama.
-
-
Gönder ve bildir
Değişikliklerinizi geliştirme dalına gönderin ve bildirin. Tüm nesneler bildirilecektir, bu nedenle projenizi göndermeden önce doğrulamak iyi bir fikirdir.
-
Bir çekme isteği aç ve birleştir
Geliştirmeye hazır olduğunuzda, çalışma alanındaki değişiklikleri ana dala birleştirme zamanı gelmiştir. Bir geliştirme dalının ana dalla birleştirilmesi, GitHub'da bir çekme isteği açılarak gerçekleştirilmelidir. Ana dal ile birleştirilecek dal için onay ayarlayabilirsiniz. Daha fazla bilgi için bkz. GitHub Çekme istekleri belgeleri.
Yeni bir dal oluşturma
-
Projeler'de, bir proje üzerinde ... simgesine tıklayın ve Yeni dal oluştur öğesini seçin.
Proje, sürüm kontrolüne bağlı olmalıdır.
-
Ana daldan bir dal oluşturmak için seçin.
-
Dal için bir ad girin.
-
Tüm şemalar için dal ön eki bölümünde projedeki tüm şemalara eklenecek bir ön ek ayarlayın. Bu, adlandırma çakışmalarını önlemek için tüm şemaların benzersiz bir şekilde adlandırılmasına olanak tanır.
-
Oluştur'a tıklayın.
Ana'dan yeni bir dal oluşturulur ve depodan kontrol edilir. Dal, projenin tüm görevlerin Yeni durumunda olduğu yeni bir sürümünü içerir. Yani, hazırlanmamışlardır ve herhangi bir veri içermezler.
Uzaktan değişiklikleri uygulama
Uzak depodaki değişiklikleri çalışma alanınıza uygulayabilirsiniz. Bu, Qlik Cloud entegre sürüm kontrolü dışında, örneğin GitHub'da veya diğer araçlar tarafından oluşturulan değişiklikler olabilir. Bu, değişikliklerinizi dala göndermek ve bildirmek istediğinizde çakışmaları önlemenize yardımcı olur.
-
Projeler'de, bir proje üzerinde ... simgesine tıklayın ve Uzaktan değişiklikleri uygula öğesini seçin.
Bulunan değişiklikler varsa Uzaktan değişiklikleri çalışma alanına uygula iletişim kutusu görüntülenir.
-
Artık hangi görevlere değişiklik uygulanacağını seçebilir ve değişiklikleri inceleyebilirsiniz. Her değişiklik için hangi sürümün kullanılacağını seçebilirsiniz: uzak sürüm veya çalışma alanınızdaki sürüm.
-
Uzaktan değişiklikleri uygula öğesine tıklayın.
Değişiklikler yeni veri görevleri içeriyorsa kaynak bağlantıları ve hedef bağlantıları eklemeniz gerekir.
Gönderme ve bildirme
Değişikliklerinizi dala gönderebilir ve bildirebilirsiniz. Çalışma alanınıza uygulanmayan uzak değişikliklerin üzerine yazılabileceğinden, göndermeden ve bildirmeden önce Uzaktan değişiklikleri uygula işlemini gerçekleştirmelisiniz.
-
Projeler'de, bir proje üzerinde ... simgesine tıklayın ve Gönder ve bildir öğesini seçin.
Bulunan değişiklikler varsa Gönder ve bildir iletişim kutusu görüntülenir.
-
Nelerin değiştiğini takip etmenize yardımcı olması için gönderilecek bir mesaj ekleyin.
-
Gönder ve bildir seçeneğine tıklayın.
Bir dalı silme
Değişikliklerinizi ana dalla birleştirdiğinizde bir dalı silebilirsiniz.
-
Projeler'de, silinecek dalın üzerindeki ... simgesine tıklayın ve Dalı sil öğesini seçin.
Sürüm kontrolünde uzak dalı silmeyi de seçebilirsiniz.
Gönderilmemiş değişiklikler varsa dalı silerken bu değişikliklerin kaybolacağını onaylamanız gerekecektir.
Bir proje için sürüm kontrolünü kaldırma
Projenizin sürüm kontrolü bağlantısını kesebilirsiniz. Mevcut dallar varsa projenin bağlantısını kesmeden önce bunların silinmesi gerekir.
-
Projeler'de, bağlantıyı kesmek için projenin üzerindeki ... simgesine tıklayın ve GitHub ile Bağlantıyı Kes'i seçin.
Bir projeyi diğer alanlar veya kiracılarla paylaşma
Bir projenin bir sürümünü aynı kiracıdaki veya başka bir kiracıdaki farklı bir alanla paylaşabilirsiniz. Bu, örneğin biri geliştirme diğeri üretim için olmak üzere iki ortam oluşturmak istediğinizde kullanışlıdır.
-
Orijinal proje ile aynı ada sahip yeni bir proje oluşturun.
Aynı kullanım durumunu ve platform türünü ayarlayın. Farklı bağlantılar kullanabilirsiniz.
-
Yeni projeyi orijinal proje ile aynı depoya ve temel dizin yoluna bağlayın.
Bilgi notuGönder ve bildir seçeneğini seçmeyin. -
Platform bağlantısı orijinal projeyle aynı hedefi işaret ediyorsa veri görevlerinin veritabanını veya şemalarını değiştirdiğinizden emin olun. Tüm görevlerin şemalarını değiştirmenin bir yolu, uzaktan değişiklikleri uygulamadan önce Meta Veri proje ayarlarında Tüm şemalar için ön ek'i değiştirmektir. Bu, tüm görevlerin bu ön ekle oluşturulmasını sağlar.
-
Tüm dosyaları seçerek uzaktan değişiklikleri uygulayın.
-
Tüm yerleştirme görevleri için eksik kaynak bağlantılarını ekleyin.
Yerleştirme görevinde Kaynak verileri seç'e tıklayın, bağlantıyı seçin ve Kaydet'e tıklayın.
Bilgi notuBağlantı aynı kaynak türünden olmalı ve orijinal projedekiyle aynı adlara sahip tablolara işaret etmelidir. -
Tüm yerleştirme görevleri için eksik ve hedef kaynak bağlantılarını ekleyin.
Bu, başka bir çalışma alanı yaratır. Çalışma alanlarından birinde projede değişiklikler yapabilir ve diğer çalışma alanını senkronize etmek için Uzaktan değişiklikleri uygula seçeneğini kullanabilirsiniz.
Güvenlikle ilgili noktalar
Qlik Talend Data Integration ile GitHub arasında senkronize güvenlik yapılandırmaları sağladığınızdan emin olun.
-
Qlik Talend Data Integration içinde izinler, birden fazla proje içerebilen alanlara dayanmaktadır. GitHub'da izinler, birden fazla proje içerebilen depolara dayanmaktadır. En iyi uygulama, bunları uyumlu hale getirmek ve bir alandaki tüm projeleri aynı depoya bağlamaktır.
-
Qlik Talend Data Integration ve GitHub'ın kullanıcılar için farklı izinler ve roller kullandığını unutmayın.
En iyi uygulamalar
Sürüm kontrolü kullanan projelerle çalışırken bazı en iyi uygulamaları burada bulabilirsiniz.
-
GitHub'daki depoyu açıklayan bir README dosyası ekleyin. Daha fazla bilgi için bkz. README dosyaları hakkında.
-
Çalıştırmak için yalnızca geçerli ve test edilmiş projeleri gönderin.
Hazırlanmamış veya dönüştürülmemiş Yerleştirme ya da Kayıtlı veri görevleri olan projeler eklerseniz kaynak sütunlar henüz dahil edilmez. Kaynak sütunları, görev hazırlandığında ve dönüştürüldüğünde eklenir.
-
Çoğaltma projeleri için bir dal oluşturduğunuzda dalların varsayılan olarak aynı hedefi kullandığını bilmelisiniz. Bu, dalda çalışan görevlerin ana sürümün verilerini geçersiz kılabileceği anlamına gelir. Veri kaybını önlemek için daldaki hedef ayarlarını ana sürümle çakışmayacak şekilde değiştirin.
-
Bir dal oluşturduğunuzda çalışma alanına henüz uygulanmamış uzaktan değişiklikler olabilir. Uzaktan değişiklikleri iptal etmek istemiyorsanız dal oluşturma işleminden önce veya sonra uzaktan değişiklikleri uygulayın.
-
Aynı veri kümesinde iki farklı dalda değişiklik yapmak, çözülmesi zor birleştirme çakışmalarına neden olabilir.
Sınırlamalar
-
Dallar varsa sürüm kontrolünü kullanarak bir projenin bağlantısını kesmek veya projeyi silmek mümkün değildir. Projenin bağlantısını kesmeden veya projeyi silmeden önce dalların silinmesi gerekir.
-
Sürüm kontrolü kullanarak bir projeyi yeniden adlandırmak mümkün değildir.
-
Bir kiracıyı sildiğinizde GitHub'da sürüm kontrolü ile depolanan nesneler silinmez. Bu nesneleri manuel olarak silmeniz gerekir.
-
bir depo çok sayıda proje tarafından kullanılıyorsa veya Qlik Talend Data Integration içinde saklanmayan çok sayıda dosya içeriyorsa performans düşebilir.
-
Veritabanı şemaları ve bağlantıları sürüm kontrolünde tutulmaz.
-
GitHub ayrıntılı kişisel erişim belirteçleri desteklenmez.
-
Bir dal (ana dal hariç), aynı depoda iki proje olsa bile depo başına yalnızca bir proje tarafından kullanılabilir.
-
Farklı bir hedef platform kullanan bir projeden uzaktan değişiklikleri uygulamak mümkün değildir. Örneğin, Snowflake üzerindeki bir projede değişiklik yaparsanız değişiklikleri bir Databricks projesine uygulayamazsınız.