2013-08-06 28 views
5

Niedawno przeniosłem się z Mecurial do TFS 2012, aby zająć się kontrolą źródła. Do tej pory bardzo to lubię, ale utknąłem w jednym aspekcie, więc miałem nadzieję, że ktoś tutaj pomoże mi.TFS 2012 sprawdzanie, czy oddział został scalony

Załóżmy, że mam gałąź o nazwie "Główna", a następnie rozgałęzam ją, nazywając ją "Cechą 1". Mogę pracować nad modyfikacjami w "Cechie 1", a wtedy w tym momencie Mecurial narysuje widelec na drodze.

Jeśli następnie scalę moje zmiany "Cechy 1" w "Główne", firma Mecurial ponownie optycznie połączy się z widelcem. Mógłbym wtedy wprowadzić kilka modyfikacji do "Cechy 1", co spowodowałoby kolejny podział, i po raz kolejny, Mecurial dałby mi wizualną reprezentację tego.

Próbowałem tego samego w TFS i chociaż faktyczne rozgałęzianie i łączenie jest bardzo łatwe, trudno jest wyliczyć, czy ostatnie zmiany w obrębie "Cechy 1" zostały połączone w "Główne", czy też są zaległe zmiany do scalenia.

Funkcja "Track Changeset" jest już blisko i da mi znać, że "Feature 1" został w pewnym momencie połączony z "Main", ale nie wyświetla się, jeśli "Feature 1" został zmodyfikowany od ostatniego łączyć.

Zasadniczo pytam w skrócie: "Jak mogę sprawdzić, czy oddział ma jakiekolwiek zmiany od czasu ostatniego połączenia z rodzicem?"

Być może utknąłem w sposobie, w jaki Mecurial zwykł robić różne rzeczy, ale naprawdę doceniam pomoc lub wskazówki dotyczące powyższego problemu.

Odpowiedz

3

Aktualizacja:

Nie ma wizualny wskaźnik ten w TFS, ale komenda „TF.exe Scala” jest najbliżej że można dostać się do danej funkcji. TF.exe Połączenia + Zestaw zmian trasy + Wyświetl historię pomoże Ci to osiągnąć.

Format: tf scala [źródło] miejsce docelowe [/ rekurencyjne] [/ rozszerzone] [/ format: (krótkie | usunięte)] [/ login: nazwa użytkownika, [hasło]] [/ showall]]] [/ collection : TeamProjectCollectionUrl]

Otwórz wiersz poleceń swojego programu Visual Studio i wpisz polecenie tf.exe merge /? po więcej szczegółów.

Przykład:

tf.exe scala/rekurencyjne C: \ Projects \ Main C: \ Projects \ Dev

Changeset Merged in Changeset Author  Date 
> -------------------------------------------------------- 
135   162     user1  4/13/2013 

146   162     User2  5/16/2013 

147  167     User1  6/18/2013 

Po uruchomieniu tego, dostaniesz ostatni changeset który został połączony z oddział MAIN do oddziału DEV. Zwróć uwagę na ostatni scalony numer zestawu zmian (w tym przypadku 147). Możesz wrócić do głównej gałęzi -> przejrzeć historię i sprawdzić, czy są jakieś nowe zestawy zmian dodane po 147 w Main. W takim przypadku będziesz musiał wykonać scalenie, inaczej nie.

Ma sens?

także jeszcze jedno, chciałbym zaproponować to, aby zmusić deweloperów, którzy robią scalanie do korzystania z konkretnego formatu komentarzach Zameldowanie w seryjnej, na przykład

"******MERGE****** Source branch name, the last changeset etc". 

to również pomóc, ale Nie licz na to, ponieważ ludzie nie mogą tego robić lub będą popełniać błędy.

MSDN LINK

+0

Dziękuję za odpowiedź - nadal nie widzę, jak mogę się upewnić, że od czasu scalenia nie wprowadzono żadnych zmian. Czy mógłbyś wyjaśnić, jak mogę sprawdzić z trochę więcej szczegółów za pomocą mojego przykładu powyżej? Dzięki –

+0

Mam zaktualizowaną odpowiedź, sprawdź to. – Isaiah4110

+0

Bardzo doceniane dzięki. –

0

O ile mi wiadomo, nie ma łatwego wizualnego wskaźnika, aby to pokazać (chociaż byłoby świetnie, gdyby było). Uważam, że "Track Changeset" lub tylko brutalne porównywanie są jedynymi opcjami.

+0

To wstyd. O ile widzę, jest to jedyna realna wada TFS. –