2014-12-21 41 views
9

Mój główny oddział ma kilka plików, które mają różne kody z tego samego pliku gałęzi rozwojowej. Dział rozwoju to taki, który ma poprawną wersję tych plików, ale kiedy próbuję scalić go z główną gałęzią (docelową); Dostaję komunikat mówiącyScalanie oddziału rozwojowego do głównego: Nie było żadnych zmian w scalaniu

Nie było żadnych zmian do scalenia

Jak mogę rozwiązać ten problem tak, że główny oddział ma poprawną wersję tych plików?

+0

Zobacz także: http://stackoverflow.com/q/6190739/736079 – jessehouwing

Odpowiedz

10

Podczas scalania plików TFS analizuje nie tylko różnice między dwoma oddziałami, ale także śledzi, czy ignorujesz te zmiany w poprzedniej próbie połączenia. Podczas łączenia TFS oferuje 3 opcje, gdy istnieją konflikty:

  1. Merge
  2. Przechowywać Źródło
  3. Przechowywać docelowy

Kiedy wybrać Zachowaj cel lub podczas ręcznego scalania i odznacz pewne zmiany, TFS oznaczy te zmiany jako "rozwiązane" i nie zaoferuje ich ponownie, gdy spróbujesz połączyć się w przyszłości. Nazywa się to "kredytem scalającym".

Możesz również utworzyć te problemy za pomocą linii poleceń, gdy używasz tf merge /discard, która powie TFS, aby ignorował zmiany w tych plikach/zestawach zmian podczas rozważania scaleń.

Istnieją dwa sposoby, aby zmusić TFS do ponownego rozważenia tych zmian:

  1. użycia siły łączą. W linii poleceń możesz zainicjować scalanie, w którym TFS tymczasowo zignoruje jego rekordy i zaoferuje ci każdy inny plik do scalenia. Może to być dużo pracy, ale gdy to zrobisz, twoja historia łączenia się powróci. Aby wydać połączenie force run tf merge $/Source/Folder/File $/Target/Folder/File /force To prawie na pewno wywoła konflikt, który możesz rozwiązać, aby uzyskać odpowiednie zmiany w gałęzi docelowej.

  2. Cofanie poprzedniego scalenia przy użyciu funkcji Rollback. Jeśli ostatnio dokonałeś scalenia, w którym zestawy zmian zostały odrzucone. Znajdź go w historii, kliknij prawym przyciskiem myszy zestaw zmian i wybierz Cofnij i sprawdź kod, który został cofnięty. Spowoduje to usunięcie wszystkich zmian w tym zestawie zmian i zresetuje "kredyty scalające". Gdy to zrobisz, możesz ponownie scalić i zrobić to dobrze tym razem. Można to również zrobić z wiersza polecenia przy użyciu tf rollback

+1

starałem się wycofać, ale pojawia się komunikat błędu mówiąc mój plik ma niezgodną oczekująca zmiana – aidonsnous

+1

Najpierw cofnij oczekujące zmiany (lub odstawia istniejące zmiany) – jessehouwing

+0

Jeśli masz chwilę Jesse - http://stackoverflow.com/questions/33003274/revoking-tfs-merge-credits – RobVious