Czasami stwierdzam, że mam plik, który z biegiem czasu wyrósł na więcej klas/funkcji/whatevers niż mi się podoba. Czas na refaktor! Zwykle znajduję w tym przypadku, że mój jeden plik staje się kilka: sam plus kilka innych plików, z których każdy zawiera odrębne segmenty pliku.Czy można "nadużywać" funkcji zmiany nazwy Mercurial do śledzenia ruchu bloków kodu?
Niestety, po prostu tworzenie tych nowych plików "pęka" trochę historii - ciężko powiedzieć, że te funkcje pierwotnie pochodziły z innego pliku. Jest jeszcze gorzej, jeśli podczas refaktoryzacji wprowadzono inne zmiany w kodzie.
Jeden z moich współpracowników wykazały, że mógłby „abuse” funkcjonalność zmiany nazwy robiąc coś takiego:
hg rename --after original_file new_file_1
hg rename --after original_file new_file_2
hg rename --after original_file new_file_3
hg add original_file
Rezultatem jest to, że każdy z nowych plików wygląda jak zmiany nazwy z resztą pliku usunięty, a oryginalny plik wygląda tak, jakby zgubił usunięte bloki. Jak dotąd wydaje się to idealne. Obawiam się jednak, że te wielokrotne zmiany będą powodowały pewne pomieszanie fuzji w dół.
Czy jest coś nie tak z tym podejściem "wielu nazw"?
Awesome! Dzięki za szczegółową odpowiedź! –