Tfs kurulumu ilgili dökümanı adım adım uygulayarak yaptığınızda genelde bir sorun çıkmıyor, ancak bir şekilde kullanıcılarla ilgili gerekli ayarları yapamadığım için , tfs kurulumu tamamlanıp yeni bir proje oluşturmaya çalıştığım anda aşağıdaki hatayı alıyordum.
—begin Exception entry—
Time: 2009-11-22 13:39:02Z
Module: Initializer
Event Description: TF30207: Initialization for plugin “Microsoft.ProjectCreationWizard.Reporting” failed
Exception Type: Microsoft.TeamFoundation.Client.PcwException
Exception Message: Insufficient permissions to create a new SQL Server Reporting Services at TFSAPPSERVER.
Exception Details: The permissions granted your user name and ID on the SQL Server Reporting Services at TFSAPPSERVER
do not allow you create a new project. You must be granted specific permission
by the server administrator.
Stack Trace:
at Microsoft.VisualStudio.TeamFoundation.RosettaReportUploader.CheckForProjectFolder(PrivateData data, String projectName, ProjectCreationContext context)
at Microsoft.VisualStudio.TeamFoundation.RosettaReportUploader.Initialize(ProjectCreationContext context)
at Microsoft.VisualStudio.TeamFoundation.EngineStarter.InitializePlugins(MsfTemplate template, PcwPluginCollection pluginCollection)
– Inner Exception –
Exception Type: Microsoft.TeamFoundation.TeamFoundationServerUnauthorizedException
Exception Message: TF30063: You are not authorized to access TFSAPPSERVER.
Stack Trace:
at Microsoft.TeamFoundation.Client.TeamFoundationSoapProxy.ThrowIfUnauthorized(HttpWebResponse response)
at Microsoft.TeamFoundation.Client.TeamFoundationSoapProxy.GetWebResponse(WebRequest request)
at System.Web.Services.Protocols.SoapHttpClientProtocol.Invoke(String methodName, Object[] parameters)
at Microsoft.TeamFoundation.Proxy.Reporting.ReportingService.ListChildren(String Item, Boolean Recursive)
at Microsoft.VisualStudio.TeamFoundation.RosettaReportUploader.CheckForProjectFolder(PrivateData data, String projectName, ProjectCreationContext context)
– end Inner Exception –
— end Exception entry —
Hata nın SPN denilen birşeye benim reportservice kullanıcımın sahip olmaması neden oluyordu. Ancak bunu anlayana kadar domain admin olan kullanıcımı local tfs makinesi ve ilgili groupların tümüne yetki vermiştim. Olmamasının tek nedeni yetki eksikliği değil spn eksikliğiymiş
.
Bunuda şurdan anladım :
Using RSWindowsNegotiate will result in a Kerberos authentication error if you configured the Report Server service to run under a domain user account and you did not register a Service Principal Name (SPN) for the account. For more information, see Resolving Kerberos Authentication Errors When Connecting to a report server in this topic.
Daha sonra şurdaki çözümü uyguladım :
Use NTLM. NTLM will generally work in cases where Kerberos authentication fails. To use NTLM, remove RSWindowsNegotiate from the RSReportServer.config file and verify that only RSWindowsNTLM is specified. If you choose this approach, you can continue to use a domain user account for the Report Server service even if you do not define an SPN for it.
Gidip RSReportServer.config dosyasını bulup ordaki <RSWindowsNegotiate/> tag ini sildim. Ve sorun giderilmişti.
Kaynak : http://msdn.microsoft.com/en-us/library/cc281253.aspx#proxyfirewallRSWindowsNegotiate
Tags: microsoft sql server 2008 reporting services, RSWindowsNegotiate, sql reporting services, tfs
Posted by: Yılmaz Yavuz in Diğer
Öncelikle belirtmek isterim ki bu yazıdaki görüşler aynı proje üzerinde 7 ay yoğun bir şekilde sourcesafe kullanmış ve sonraki 6 ayı yine yoğun bir şekilde Tfs 2008 ile geçirmiş biri olarak kişisel görüşlerimdir.
- Sourcesafe veritabanı olarak file system kullandığı için yavaştır, Tfs ile çalışmaya başladığınızda check-in check-out ve get latest version süreleriniz inanılmaz kısalacaktır.
- Sourcesafe de bir version a geri dönmek çocuk oyuncağı iken, Tfs de bunun için msdn manyağı olmanız gerekmektedir.
- Tfs de sourcecontrol dışında task assign etme proje bugların toplanması build server in ayrı bir yerde olması gibi ek özellikler varken, sourcesafe için bu gibi şeyler söz konusu değildir.
- Tfs de Check-In policy uygulayıp gecenin geç saatinde check-in yapan dalgın bir yazılımcıyı, güzellik uykusundan uyandırabilirken. Sourcesafe de bu şekilde bir şey yapmak imkansız olmasada zordur.
- Tfs de branch lar kolay bir şekilde yönetilebilirken, sourcesafe de bunu yapmak sizin kabiliyetinize kalmıştır.
- Tfs in Vs eklentisinde herhangi bir kod sayfasında Annote dediğinizde üzerinde bulunduğunuz kodun en son kim tarafından kurcuklandığını, güzel bir arayüzle görebilirken. Sourcesafe de ancak olsada kullansak diyebilirsiniz.
- Tfs de yetkilendirme olayını çözmek için 1 hafta uğraşırken, sourcesafe de yetkilendirme olayı zaten ufacık bir pencereden ibaret olduğu için 10sn de çözersiniz.
- Tfs de Check-In ler Changeset bazında yapılırken, Sourcesafe de dosya bazında yapılır; buda sizin o check-in üzerinde başka hangi dosyalarla uğraşıldığını bulmanızı epey zorlaştırır.
- Sourcesafe de third party kullanımı esnasında oluşturulan licenses.licx dosyası sürekli baş ağrıtırken, tfs de multiple check-out olayının düzgün bir şekilde çalışıyor olmasına binaen dert olmaktan çıkar. *
- Sourcesafe ile JIRA entegre olabiliyorken , Tfs için şuanda çalışan bir JIRA plug-in i bulunmamaktadır.**
- Sourcesafe de dosyalar filesystem de tutulduğu için backup alması geceler boyu sürebilir, Tfs de ise dosyalar ve bilgilerin hepsi Sql database de tutulduğu için backup almak o kadar uzun sürmez.
- Sourcesafe file system kullandığı için dosyaların bozulma ihtimali daha yüksektir. ***
- Tfs power tools eklentisi ile size başkasının üzerinde bulunduğu dosyayı undo check-out yapma vb olayları kolay bir şekilde sağlarken. Sourcesafe de bu gibi şeyler zordur.
- Tfs de ille check-in yada undo check-out yapmak zorunda değilsinizdir, bunun yerine dosyalarınızı rafa kaldırabilir (shelve) çok fazla tozlanmadan tekrar geri raftan alabilirsiniz (unshelve), Sourcesafe için bu mümkün değildir.
- Tfs kolaylıkla birden fazla çalışma dizini (local working folder) kullanabilirken, sourcesafede bu bir hayli zordur.
- Son olarak Tfs i kurmak cesaret ve sabır ister, ancak sourcesafe i bilgisayarı yeni kullanmaya başlamış biri bile kurabilir.
*Sourcesafe de multiple check-out özelliği vardır ancak bizim projemizde kullanılmadığı için bu şekilde bir yorum belirttim.
**Atlassian sourcesafe için bir plug-in yazmıştır ancak beta aşamasından ileri gidememiştir, çokda düzgün çalışıyor denilmez aslında.
*** Bir çok kere proje üzerindeki bazı dosyaların voltaj değişimi server kilitlenmesi , ağ üzerinde oluşan problemlerden dolayı versionlarının kaybedildiğine bizzat şahit olmuşluğum vardır.
Tags: branch, check-in, check-out, get latest version, jira, shelve, sourcesafe, tfs
Posted by: Yılmaz Yavuz in Diğer
Workspace adındanda malumunuz çalışma ortamı anlamına gelir. TFS ile çalışırken Server tarafında tek olan dosya yada klasörler clientlarda çalıştırılabilmek için bir çalışma ortamı isterler. Genelde ilk projeyi getlatest dediğinizde size nerelere koyayım bunca dosyayı diyerekten sorar işte bu workspacedir.
Ancak sonraları siz çalışma ortamınız kirlendiğinde yeni bir çalışma ortamı oluşturmak isteyebilirsiniz. Bunun için Team Explorer üzerindeki Source control üzerine çift tıklayıp Source Control penceresine erişelim. Sonra üst kısımda bulunan “Workspace:” yazan yerden Manage workspace seçelim. Gelen ekranda yeni workspaceler ekleyebilir eskilerini düzenleyebilirsiniz.
Kullanım alanı için örnek olması açısından:
Bir workspace de çalışırken Tfs command prompt dan yanlış birşeyler yaptım ve geride alamadım Bir klasör ne kadar uğraştıysam source control üzerinden erişilemez hale geldi. sonuç olarak yeni bir workspace oluşturarak diğer workspace imden dosyalarımı check-in ledim ve yenisinde get latest dedim. Ve çalışmama kaldığım yerden tam hız devam edebildim.
Tags: tfs, workspace
Posted by: Yılmaz Yavuz in Diğer
Shelve adındanda belli olacağı üzere raf sistemidir. Ve Team System ile çalışırken üzerinde çalıştığınız dosyanın check-in yapılacak kadar olgunlaşmadığına inanıyorsanız ve bir şekilde check-in yapma yada lock unu kaldırma zorunluluğunuz doğmuş ise dosyaları Shelve e kaldırabilirsiniz.


Shelve e kaldırdığınız dosyaları daha sonra tekrar getirip çalışmanıza devam edebilirsiniz.
Tags: team system, tfs, Visual Studio