Jak mogę programowo określić, do której gałęzi należy ten plik? Spędziłem 3 godziny, próbując to zrozumieć bez rezultatów. Znalazłem ten temat, ale nie jest to, co chcę: How to programmatically get information about branches in TFS?TFS 2010 programowo określający gałąź artykułu
5
A
Odpowiedz
2
Jedynym sposobem, w jaki znalazłem informacje o filii dla konkretnego pliku, jest użycie obiektu VersionControlServer.QueryBranchObjects do wysłania zapytania o każdą możliwą gałąź w strukturze folderów do końca. do korzenia.
Można jednak dokonać kilku założeń i zrobić to dość sprawnie - ponieważ oddział nie może znajdować się w innej gałęzi w tfs 2010. Znajdź wspólny podzbiór ścieżek wszystkich plików, które są sprawdzane i przetestuj je, jeśli żadna nie jest gałęzią nie należą do tej samej gałęzi.
4
Miałem bardzo podobny problem. Znalazłem rozwiązanie z nim, oto kod:
...
// get all branches
VersionControlServer vcs = tfs.GetService(typeof(VersionControlServer));
BranchObject[] allBranches = vcs.QueryRootBranchObjects(RecursionType.Full);
string myItem = "$/My Project/some Path including the branch/myFile.txt";
foreach(BranchObject branch in allBranches)
{
if(myItem.Contains(branch.Properties.RootItem.Item))
{
// branch is the branch to which the item belongs! :)
}
}
...
Mam nadzieję, że ktoś pomoże z tym problemem, myślę, że PO już rozwiązany (minęło trochę czasu odkąd on zadał pytanie).
Powiązane problemy
- 1. określający gałąź git zdalnego
- 2. Jak mogę przenieść błędnie umieszczoną gałąź TFS?
- 3. Przywróć gałąź TFS do oryginalnej
- 4. Nowe funkcje TFS 2010
- 5. Automatyczne wdrażanie TFS 2010
- 6. Dostosuj podsumowanie kompilacji TFS 2010
- 7. Jak programowo scalić zestawy zmian TFS?
- 8. Konwersja kopii folderów do oddziałów w TFS 2010
- 9. Przeniesienie zbiorów z TFS 2010 do TFS 2012
- 10. Programowy dostęp do TFS 2010 spoza domeny
- 11. Programowo uzyskaj dane dotyczące winy TFS (opis)
- 12. Serwer zautomatyzowanego budowania programu TFS 2010
- 13. Visual Studio 2010 i TFS niechciane wymeldowanie
- 14. TFS 2012 do obsługi kontrolera testowego 2010
- 15. Podłącz Visual Studio 2010 Professional do TFS
- 16. TFS 2010: historia utracona po przeniesieniu folderu
- 17. Sortowanie TFS 2010 DOZWOLONE WARTOŚCI desc
- 18. IBM RTC i Microsoft TFS 2010
- 19. Udostępnianie kodu pomiędzy projektami w tfs 2010
- 20. aktualizacja TFS 2010 i TFS 2012 RC do TFS 2012 końcowy
- 21. Git usuń gałąź zdalną w repozytorium git TFS
- 22. Integracja Araxis Merge 2010 z Visual Studio 2010 i TFS 2010
- 23. Parametr określający funkcję predict()
- 24. Jak programowo zaktualizować niestandardowe pole TFS?
- 25. Programowo otwórz plik w Visual Studio (2010)
- 26. Jak programowo dodać NewLines do pola tekstowego elementu roboczego TFS?
- 27. Jak wymusić usunięcie obszaru roboczego TFS 2010 na kliencie, gdy serwer TFS już nie istnieje?
- 28. Dowiedz się, kto wprowadził zmiany w VS 2010 z TFS
- 29. Jak cofnąć wycofanie zestawu zmian w TFS 2010?
- 30. TFS 2010 - linia poleceń do konwersji do oddziału
Czy odwołujesz się do pliku w obszarze roboczym lub pliku w ścieżce kontroli źródła? –
Może opiszę mój prblem bardziej szczegółowo, chcę tylko mieć niestandardową regułę, która określa, czy wszystkie pliki w zestawie zmian pochodzą z pojedynczego oddziału, więc odpowiadając na Twoje pytanie, nie sądzę, że to naprawdę ma znaczenie, ponieważ PendingChange ma ścieżki dla botów , LocalItem - ścieżka obszaru roboczego, ServerItem - ścieżka kontroli źródła. – Krzysiek
Dzięki. Dodaj ten opis do swojego pytania. Im więcej informacji podasz, tym lepiej. Obawiam się jednak, że chcesz, aby wszystkie pliki w zestawie zmian pochodziły z punktu rozgałęzienia wyższego w drzewie kontroli źródła niż wszystkie z nich. Czy kontrola twojego źródła zaczyna się od "$/Main" i od tego oddziału? –