2012-01-27 16 views
13

TFS sunucusunda yerleşik bir çözüm var. Bu çözüm, özel MSBuild görevlerine sahip çeşitli projeler içerir. Tezler, aslında bazı zip arşivleri oluşturur.TFS değişkeni projenin bir MSBuild görevine nasıl geçirilir

Bir şekilde TFS yapısından gelen $ (Rev) makrolarını ayıklamak ve görevlere iletmem gerekiyor. Ben yapı tanımının süreç sekmede MSBuildArguments kullanmaya çalıştı ve ben gibi basit dize değeri ayarladığınızda çalışır:

/p: Sürüm = "5"

ama çalışmaz makrolar :

/p: Sürüm = "$ (Rev: r)"

enter image description here

Eğer herhangi bir fikir var mı?

Düzenleme: Aslında BuildDetail.BuildNumber'e ihtiyacım vardı.

+0

Bunların makro olduğunu düşündüğünüzü sorabilir miyim? –

+0

Hm, sadece makrolar denir diye düşündüm. Yapı numarası formatını kontrol edin - bu makrolarla oluşturulmuştur. Yanlış mıyım? Ben TFS'de yeni biriyim. –

+0

Evet, genel değiller. Yapı numarası formatı, yapı numarasına özgüdür. –

cevap

14

Bunu gerçekleştirmek için derleme süreci şablonunuzu biraz değiştirebilirsiniz.
enter image description here
Bu böyle bir şey içine genişletilmiş olabilir: MSBuild ile ilgilidir bölümü varsayılan olarak
şöyle
enter image description here

artık (resminizin benzer) bir şey gibi yapı tanımının "MSBuild argümanlar" in girerseniz /p:Version=RePlAcE, ihtiyacınız olanı almalısınız.

Buna ihtiyacınız olmayan başka bir yapı tanımında, girişi boş bırakın. Bu yaklaşım, here numaralı bağlantıya bir alternatiftir ve bu sürüm ekleme, onu tüketen tüm yapı tanımları için açıkça istenmediyse seçilmelidir.

+0

evet, teşekkürler. Zaten aynısını yaptım –