Betikte Git komutlarını çalıştırma
Azure Pipelines | Azure DevOps Server 2020 | Azure DevOps Server 2019 | TFS 2018-TFS 2015
Not
Microsoft Team Foundation Server (TFS) 2018 ve önceki sürümlerde, derleme ve yayın işlem hatlarıtanımlarolarak adlandırılır, çalışmalaraderlemelerdenir, hizmet bağlantılarınahizmet uç noktalarıdenir, aşamalarortamlarolarak adlandırılır ve işleraşamalarolarak adlandırılır.
Bazı iş akışları için, git komutlarını çalıştırmak için derleme işlem hattınızı kullanmanız gerekir. Örneğin, bir özellik dalında bir CI oluşturma işlemi yapıldıktan sonra, takım dalı ana ile birleştirmek isteyebilir.
Git, Microsoft tarafından barındırılan aracılardan ve şirket içi aracılardabulunur.
Git komutlarını çalıştırmak için betikleri etkinleştir
Not
Başlamadan önce, hesabınızın varsayılan kimliğinin şu şekilde ayarlandığından emin olun:
git config --global user.email "you@example.com"
git config --global user.name "Your Name"
Yapı hizmeti için sürüm denetimi izinleri verme
kuruluş Ayarlargenelprojeler' de kuruluşunuzun proje ayarları sayfasına gidin.
Düzenlemek istediğiniz projeyi seçin.
Project Ayarlariçinde depolar' ı seçin. Git komutlarını çalıştırmak istediğiniz depoyu seçin.
Depo güvenlerinizi düzenlemek için güvenlik ' i seçin.
Project koleksiyonu derleme hizmetiaraması yapın. kimlik Project koleksiyon derleme hizmeti 'ni ({kuruluşunuz})seçin. Varsayılan olarak, bu kimlik depodan okuyabilir, ancak geri hiçbir değişiklik gönderemiyor. Çalıştırmak istediğiniz git komutları için gerekli izinleri verin. Genellikle şunları vermek isteyeceksiniz:
- Dal oluştur: Açılmasına
- Katkıda bulunma: Açılmasına
- Şunu okuyun: Açılmasına
- Etiket oluştur: Açılmasına
Sürüm denetimi denetim masası sekmesine git
- Azure Repos:
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ıya tıklayın:


sürüm denetimi sekmesinde, Git komutlarını çalıştırmak istediğiniz depoyu seçin ve sonra Project koleksiyonu derleme hizmeti' ni seçin. Varsayılan olarak, bu kimlik depodan okuyabilir, ancak geri hiçbir değişiklik gönderemiyor.

Çalıştırmak istediğiniz git komutları için gerekli izinleri verin. Genellikle şunları vermek isteyeceksiniz:
- Dal oluştur: Açılmasına
- Katkıda bulunma: Açılmasına
- Şunu okuyun: Açılmasına
- Etiket oluştur: Açılmasına
İzinleri verme işlemini tamamladığınızda Değişiklikleri Kaydet' e tıkladığınızdan emin olun.
Komut satırı git çalıştırmak için işlem hattınızı etkinleştirme
Değişkenler sekmesinde bu değişkeni ayarlayın:
| Name | Değer |
|---|---|
system.prefergit |
true |
Betiklerin sistem belirtecine erişmesine izin ver
Seçenekler sekmesindebetiklerin OAuth belirtecine erişmesine izin ver' i seçin.
Yerel depoyu temizlediğinizden emin olun
Yerel depodaki bazı değişiklik türleri, derleme işlem hattı tarafından otomatik olarak temizlenir. Bu nedenle şunları yaptığınızdan emin olun:
- Oluşturduğunuz yerel dalları silin.
- Git yapılandırma değişikliklerini geri al.
Şirket içi bir aracı kullanarak sorunlarla karşılaşırsanız, deponun temiz olduğundan emin olun:
Depo sekmesinde, temiz seçeneğini true olarak ayarlayın.
Değişkenler sekmesindedeğişkeni oluşturun veya değiştirin ve olarak ayarlayın
source
Örnekler
Deponuzdaki dosyaları listeleyin
Git 'i etkinleştirmekiçin yukarıdaki adımları izlediğinizden emin olun.
Oluştur sekmesinde şu görevi ekleyin:
| Görev | Bağımsız değişkenler |
|---|---|
Yardımcı program: komut satırı Git deposundaki dosyaları listeleyin. |
Araç: Bağımsız değişkenler: |
Özellik dalını ana ile birleştirme
Derleme başarılı olursa bir CI derlemesini Main ile birleştirmek istiyorsunuz.
Git 'i etkinleştirmekiçin yukarıdaki adımları izlediğinizden emin olun.
Tetikleyiciler sekmesinde, SÜREKLI Tümleştirme (CI) öğesini seçin ve derlemek istediğiniz dalları ekleyin.
merge.batDeponuzın kökünde oluşturun:
@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: |
SSS
uzak deponuz GitHub veya bitbucket bulutu gibi başka bir Git hizmeti mi yoksa git komutlarını çalıştırabilir miyim?
Yes
Git komutlarını çalıştırmak için hangi görevleri kullanabilirim?
Betik ne zaman gönderirken CI derlemesini tetiklemekten kaçının Nasıl yaparım??
işleme ***NO_CI*** iletinize ekleyin. Ö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***"
Commit [skip ci] iletinize veya açıklamanıza ekleyin. Ö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]"
Aşağıdaki çeşitlemelerden herhangi birini de kullanabilirsiniz. Bu, Git, Bitbucket Cloud, Azure Repos ve GitHub Server'a GitHub Enterprise için de kullanılabilir.
[skip ci]veya[ci skip]skip-checks: trueveyaskip-checks:true[skip azurepipelines]veya[azurepipelines skip][skip azpipelines]veya[azpipelines skip][skip azp]veya[azp skip]***NO_CI***
Betiklerin Git komutlarını çalıştırması, derleme işlem hattının derleme kaynaklarını nasıl etkilediğini nasıl etkiler?
olarak ayarlanmışsa derleme işlem hattı, kaynak dosyaları klonlamak veya getirmek için system.prefergittrue LibGit2Sharp yerine komut satırı Git kullanır.
Bir aracıya ihtiyacım var mı?
Derlemenizi veya yayınını çalıştırmak için en az bir aracı gerekir.
Sorunlarımız var. Bunları nasıl gidererim?
Bkz. Derleme ve Sürüm Sorunlarını Giderme.
Varsayılan aracı havuzunu seçe değilim ve derlememi veya sürümümi kuyruğa ala bilmiyorum. Nasıl yaparım? düzeltebilir misiniz?
Bkz. Aracı havuzları.
My NuGet görev şu hatayla başarısız oluyor: "Hata: yerel sertifikayı verdiremiyor". Bunu nasıl düzeltebilirim?
Bu, güvenilen bir kök sertifika ekerek düzeltilmiştir. Ortam değişkenini derleme NODE_EXTRA_CA_CERTS=file aracınıza ekleyebilir veya görev değişkenini işlem NODE.EXTRA.CA.CERTS=file hattınıza ebilirsiniz. Bu Node.js hakkında daha fazla bilgi için bkz.Node.js belgeleri. İşlem hattınıza değişken ayarlama hakkında yönergeler için bkz. İşlem hattında değişken ayarlama.
Şirket içi TFS'yi kullanıyor ve bu özelliklerden bazılarını göremiyorum. Neden olmasın?
Bu özelliklerden bazıları yalnızca şirket Azure Pipelines şirket içinde kullanılamaz. TFS'nin en son sürümüne yükseltme yaptıysanız bazı özellikler şirket içinde kullanılabilir.