Betikte Git komutlarını çalıştırma
Azure DevOps Services | Azure DevOps Server 2022 - Azure DevOps Server 2019
Bazı iş akışlarında Git komutlarını çalıştırmak için derleme işlem hattınıza ihtiyaç duyarsınız. Örneğin, bir özellik dalı üzerinde CI derlemesi tamamlandıktan sonra, ekip bu dalı ana dal ile birleştirmek isteyebilir.
Git, Microsoft tarafından barındırılan aracılarda ve şirket içi aracılarda kullanılabilir.
Git komutlarını çalıştırmak için betikleri etkinleştirme
Not
Başlamadan önce hesabınızın varsayılan kimliğinin aşağıdaki kodla ayarlandığından emin olun. Bu, kodunuzu kullanıma aldıktan sonraki ilk adım olarak yapılmalıdır.
git config --global user.email "you@example.com"
git config --global user.name "Your Name"
Derleme hizmetine sürüm denetimi izinleri verme
Kuruluş Ayarlar> Genel>Projeler'de kuruluşunuzun proje ayarları sayfasına gidin.
Düzenlemek istediğiniz projeyi seçin.
Project Ayarlar içinde Depolar'ı seçin. Git komutlarını çalıştırmak istediğiniz depoyu seçin.
Depo güvenliğinizi düzenlemek için Güvenlik'i seçin.
Proje Koleksiyonu Derleme Hizmeti'ne bakın. {{proje adınız}} Derleme Hizmeti ({kuruluşunuz}) kimliğini seçin (Proje Koleksiyonu Derleme Hizmeti Hesapları ({kuruluşunuz}) grubunu seçin. Varsayılan olarak, bu kimlik depodan okuyabilir ancak herhangi bir değişikliği geri gönderemez. Çalıştırmak istediğiniz Git komutları için gereken izinleri verin. Genellikle şu izinleri vermek istersiniz:
- Dal oluşturma: İzin ver
- Katkıda Bulunma: İzin Ver
- Okuma: İzin Ver
- Etiket oluşturma: İzin ver
Sürüm Denetimi denetim masası sekmesine gidin
Azure Depoları:
https://dev.azure.com/{your-organization}/{your-project}/_admin/_versioncontrol
Şirket içi:
https://{your-server}:8080/tfs/DefaultCollection/{your-project}/_admin/_versioncontrol
Bu sayfayı görürseniz depoyu seçin ve ardından bağlantıyı seçin:
Sürüm Denetimi sekmesinde Git komutlarını çalıştırmak istediğiniz depoyu seçin ve ardından Proje Koleksiyonu Derleme Hizmeti'ni seçin. Varsayılan olarak, bu kimlik depodan okuyabilir ancak herhangi bir değişikliği geri gönderemez.
Çalıştırmak istediğiniz Git komutları için gereken izinleri verin. Genellikle şu izinleri vermek istersiniz:
- Dal oluşturma: İzin ver
- Katkıda Bulunma: İzin Ver
- Okuma: İzin Ver
- Etiket oluşturma: İzin ver
İzinleri verme işlemini tamamladığınızda Değişiklikleri kaydet'i seçtiğinizden emin olun.
Betiklerin sistem belirtecine erişmesine izin ver
Seçenekler sekmesinde, Betiklerin OAuth belirtecine erişmesine izin ver'i seçin.
Yerel depoyu temizlemeyi unutmayın
Yerel depodaki bazı değişiklik türleri derleme işlem hattı tarafından otomatik olarak temizlenmez. Bu nedenle, şu şekilde olduğundan emin olun:
- Oluşturduğunuz yerel dalları silin.
- Git yapılandırma değişikliklerini geri alma.
Şirket içi aracı kullanarak sorunlarla karşılaşırsanız deponun temiz olduğundan emin olun:
Depo sekmesinde Temizle'yi true olarak ayarlayın.
Değişkenler sekmesinde değişkeni oluşturun veya değiştirin
Build.Clean
ve olarak ayarlayınsource
Örnekler
Deponuzdaki dosyaları listeleme
Derleme sekmesinde şu görevi ekleyin:
Görev | Bağımsız değişkenler |
---|---|
Yardımcı Program: Komut Satırı Git deposundaki dosyaları listeleyin. |
Araç: git Bağımsız değişkenler: ls-files |
Özellik dallarını main ile birleştirme
Derleme başarılı olursa ci derlemesinin main ile birleştirilmesini istiyorsunuz.
Tetikleyiciler sekmesinde Sürekli tümleştirme (CI) öğesini seçin ve oluşturmak istediğiniz dalları ekleyin.
Deponuzun kökünde oluşturun merge.bat
:
@echo off
ECHO SOURCE BRANCH IS %BUILD_SOURCEBRANCH%
IF %BUILD_SOURCEBRANCH% == refs/heads/main (
ECHO Building main branch so no merge is needed.
EXIT
)
SET sourceBranch=origin/%BUILD_SOURCEBRANCH:refs/heads/=%
ECHO GIT CHECKOUT MAIN
git checkout main
ECHO GIT STATUS
git status
ECHO GIT MERGE
git merge %sourceBranch% -m "Merge to main"
ECHO GIT STATUS
git status
ECHO GIT PUSH
git push origin
ECHO GIT STATUS
git status
Derleme sekmesinde bunu son görev olarak ekleyin:
Görev | Bağımsız değişkenler |
---|---|
Yardımcı Program: Batch Betiği merge.bat çalıştırın. |
Yol: merge.bat |
SSS
Uzak depom GitHub'da veya Bitbucket Cloud gibi başka bir Git hizmetindeyse Git komutlarını çalıştırabilir miyim?
Yes
Git komutlarını çalıştırmak için hangi görevleri kullanabilirim?
Betik gönderildiğinde CI derlemesini tetiklemekten Nasıl yaparım? kaçının?
İşleme iletinize ekleyin ***NO_CI***
. Örnekler aşağıdadır:
git commit -m "This is a commit message ***NO_CI***"
git merge origin/features/hello-world -m "Merge to main ***NO_CI***"
İşleme iletinize veya açıklamanıza ekleyin [skip ci]
. Örnekler aşağıdadır:
git commit -m "This is a commit message [skip ci]"
git merge origin/features/hello-world -m "Merge to main [skip ci]"
Azure Repos Git, Bitbucket Cloud, GitHub ve GitHub Enterprise Server işlemeleri için bu çeşitlemelerden herhangi birini de kullanabilirsiniz.
[skip ci]
veya[ci skip]
skip-checks: true
veyaskip-checks:true
[skip azurepipelines]
veya[azurepipelines skip]
[skip azpipelines]
veya[azpipelines skip]
[skip azp]
veya[azp skip]
***NO_CI***
Bir temsilciye ihtiyacım var mı?
Derlemenizi veya yayınınızı çalıştırmak için en az bir aracıya ihtiyacınız vardır.
Sorun yaşıyorum. Nasıl sorun giderebilirim?
Bkz. Derleme ve Yayın Sorunlarını Giderme.
Varsayılan aracı havuzunu seçemiyorum ve derlememi veya sürümümü kuyruğa alamıyorum. Bunu nasıl düzeltirim?
Bkz. Aracı havuzları.
NuGet gönderme görevim şu hatayla başarısız oluyor: "Hata: yerel veren sertifikası alınamıyor". Bunu nasıl düzeltebilirim?
Bu, güvenilen bir kök sertifika eklenerek düzeltilebilir. Derleme aracınıza NODE_EXTRA_CA_CERTS=file
ortam değişkenini veya işlem hattınıza NODE.EXTRA.CA.CERTS=file
görev değişkenini ekleyebilirsiniz. Bu değişken hakkındaki diğer ayrıntılar için bkz. Node.js belgeleri. İşlem hattınızda değişken ayarlama yönergeleri için bkz. İşlem hattında değişkenleri ayarlama.
Şirket içinde TFS kullanıyorum ve bu özelliklerden bazılarını görmüyorum. Neden?
Bu özelliklerden bazıları yalnızca Azure Pipelines'da kullanılabilir ve henüz şirket içinde kullanılamaz. TFS'nin en son sürümüne yükselttiyseniz bazı özellikler şirket içinde kullanılabilir.
Geri Bildirim
https://aka.ms/ContentUserFeedback.
Çok yakında: 2024 boyunca, içerik için geri bildirim mekanizması olarak GitHub Sorunları’nı kullanımdan kaldıracak ve yeni bir geri bildirim sistemiyle değiştireceğiz. Daha fazla bilgi için bkz.Gönderin ve geri bildirimi görüntüleyin