Git ve TFVC'nin ilk yapılandırmasını tanımlama

Azure DevOps Server 2020 | Azure DevOps Server 2019 | TFS 2018 - TFS 2013

Önemli

Bu makale, Şirket içi XML işlem modelleri için proje özelleştirmesi için geçerlidir. İşlem modellerini genel bakış için bkz. İş izleme deneyiminizi özelleştirme.

Not

TFS 2017.3 ve sonraki sürümler için, web portalında bu eklentiyi yoksayan projeler oluşturun. Bunun yerine, proje düzeyi ve koleksiyon düzeyi güvenlik grupları için varsayılan izinler ayarlanır. Proje oluşturduktan sonra TFVC iade ilkelerini veya izinlerini web portalında yönetebilirsiniz.

Sürüm denetimi eklentisini kullanarak projenin ilk güvenlik izinlerini, iade ilkelerini ve iade notlarını yapılandırabilirsiniz.

XML dosyasında, bir veya daha fazla görevi ve bunların bağımlılıklarını belirtirsiniz. Genellikle, sürüm denetimi ayarlarını yapılandırmak için yalnızca bir göreve ihtiyacınız vardır. Bu ayarları belirten bir görev örneği için, varsayılan VersionControl.xml şablonları için tanımlanan bir görev dosyasına bakın.

Varsayılan işlem şablonları için dosyanın, klasörün ve eklentinin adları aşağıdaki gibidir:

Dosya adı:VersionControl.xml
Klasör adı:Sürüm Denetimi
Eklenti adı:Microsoft.ProjectCreationWizard.VersionControl

XML dosyasının adını ve klasör adını değiştirebilirsiniz, ancak eklentinin adını değiştiremezsiniz. Sistem, istemci tarafı eklentilerin, ilkelerin veya diğer değişikliklerin dağıtımına yönelik bir mekanizmaya sahip değil. Bu tür işlevleri dağıtmak için kendi dağıtım ve yükleme programınızı kullansanız iyi olur.

Özel Kullanım

Bir dosyayı aynı anda birden çok kişinin kontrol edip e-postayla exclusive_checkout.

<exclusive_checkout required=""/>  

Gerekli öznitelik true olarak ayarlanırsa,aynı anda yalnızca bir kişi dosyayı kontrol edin. Bu öznitelik false olarak ayarlanırsa,birden çok kişi bir dosyayı aynı anda kullanabilir ve dosyayı iade etmek için değişiklikleri mu mutabakata varmaları gerekir.

Aşağıdaki örnekte, özel olarak kullanımdan çıkmanın nasıl gerekli olduğu gösterir:

<exclusive_checkout required="true"/>  

Check Out'ta En Son Sürümü Al

Kullanıcı bir get_latest_on_checkout için dosyayı kontrol etmek üzere varsayılan davranışı yapılandırmak için get_latest_on_checkout öğesini kullanır.

<get_latest_on_checkout required=""/>  

Gerekli öznitelik true olarak ayarlanırsa,bir kullanıcı bunu her kontrol edinken bir öğenin veya ipucun en son sürümü indirilir. Bu davranış, Visual SourceSafe'daki iade Visual SourceSafe.

Gerekli öznitelik false olarak ayarlanırsa,iade etme işlemi çalışma alanınız içinde yerel sürümü kontrol edin. Varsayılan olarak, bu öznitelik false olarak ayarlanır.

Aşağıdaki örnek, varsayılan iade davranışının, bir kullanıcı tarafından iade edilen bir öğenin en son sürümünü almak olduğunu belirtmeyi gösterir.

<get_latest_on_checkout required="true"/>  

Giriş Notları

Geliştirici, kodu iade edinca iade notları sağlar. Bu notlar, kod değişikliklerinin ekip işlemleriyle ilgili olup olmadığını ve varsa nasıl olduğunu açıklar. Örneğin, iade notu, değişikliğin bir güvenlik gözden geçirmesi nedeniyle olup olmadığını gösteriyor olabilir ve notta güvenlik gözden geçirmesi ile ilgili değişikliklerle ilgili ayrıntılar yer değiştirebilir.

Bir checkin_note öğesi için aşağıdaki sözdizimini kullanın

<checkin_note label="" required="" order=""/>  

Aşağıdaki tabloda, checkin_note öğesi öznitelikleri açık almaktadır.

Öznitelik Açıklama
etiket Iade notunu açıklayan etiket. Kullanıcı bir değişiklikte iade edinca etiket Bekleyen Iadeler iletişim kutusunda görünür.
gerekli Giriş notu değerinin olması için gerekli olup olmadığını belirtir. Bu öznitelik true olarak ayarlanırsa iade notun bir değeri olması gerekir. Bu öznitelik false olarak ayarlanırsa, bir değer isteğe bağlıdır.
sıra Iade notlarını görüntüleme sırasına göre belirtmek için bir sıra numarası belirtir. Bu öznitelik isteğe bağlıdır.

Aşağıdaki örnekte, bir değere sahip olması gerek olmayan "Belge Etkisi" etiketli ek bir iade notu oluşturma adımları açıklanmıştır.

<taskXml>  
   <checkin_note label="Code Reviewer" required="false" order="1"/>  
   <checkin_note label="Security Reviewer" required="false" order="2"/>  
   <checkin_note label="Performance Reviewer" required="false" order="3"/>   
   <checkin_note label="Documentation Impact" required="false"/>  
</taskXml>  

İzinler

Sürüm denetimi, bir işlem şablonu için yapılandırabilirsiniz belirli bir izin kümesine sahip. İzinleri belirterek, güvenlik gruplarının ve bireylerin sürüm denetimi altındaki öğelerde gerçekleştirecekleri eylemleri tanımlarsınız. Daha fazla bilgi için bkz. İşlevsel alanlara erişimi denetleme.

Tüm varsayılan işlem şablonlarına yapılan TFVC ve GIt izinleri için varsayılan atamalar gösterildiği gibi olur. Projeyi web kullanıcı arabiriminden oluşturduktan sonra bu izinleri kullanabilirsiniz. Bkz. Git deposu izinlerini ayarlama veya TFVC depo izinlerini ayarlama.

<?xml version="1.0" encoding="utf-8"?>
<tasks>
  <task id="VersionControlTask" name="Create Version Control area" plugin="Microsoft.ProjectCreationWizard.VersionControl" completionMessage="Version control Task completed.">
    <dependencies />
    <taskXml>
      <permission allow="Read, PendChange, Checkin, Label, Lock, ReviseOther, UnlockOther, UndoOther, LabelOther, AdminProjectRights, CheckinOther, Merge, ManageBranch" identity="[$$PROJECTNAME$$]\$$PROJECTADMINGROUP$$" />
      <permission allow="Read, PendChange, Checkin, Label, Lock, Merge" identity="[$$PROJECTNAME$$]\Contributors" />
      <permission allow="Read, PendChange, Checkin, Label, Lock, Merge" identity="[$$PROJECTNAME$$]\Build Administrators" />
      <permission allow="Read" identity="[$$PROJECTNAME$$]\Readers" />
      <exclusive_checkout required="false" />
      <get_latest_on_checkout required="false" />
      <git>
        <permission allow="GenericRead, GenericContribute, Administer, CreateBranch, CreateTag, ManageNote" identity="[$$PROJECTNAME$$]\$$PROJECTADMINGROUP$$" />
        <permission allow="GenericRead, GenericContribute, CreateBranch, CreateTag, ManageNote" identity="[$$PROJECTNAME$$]\Contributors" />
        <permission allow="GenericRead, GenericContribute, CreateBranch, CreateTag, ManageNote" identity="[$$PROJECTNAME$$]\Build Administrators" />
        <permission allow="GenericRead" identity="[$$PROJECTNAME$$]\Readers" />        
      </git>
    </taskXml>
  </task>
</tasks>