2013-07-20 9 views
9

Czy jest możliwa rekonstrukcja historii słowo po słowie w kontroli wersji? Idealnie chciałbym zrobić to coś w rodzaju 1) Wskazuję zakres linii zainteresowania, 2) program wykreśla odpowiednie numery linii w poprzednich wersjach, ponieważ kod często przesuwał się w górę lub w dół między wersjami (potencjalnie ograniczając zakres wersji, powiedzmy od wersji 19 lub od tygodnia), 3) wydrukować historię słowo po słowie, albo wersje, w których grupy słów zostały ostatnio zmienione, albo autorzy, według których zmieniono grupy słów. Więc jest to trochę jak svn blame lub git blame w poziomie słowo po słowie.Słowo-przy-słowo obwiniać/opisywać w kontroli wersji?

Jeśli to nie możliwe, czy są narzędzia, które mogą wykonać powyższe czynności 1 i 2? Oznacza to: 1) wskazuję zakres linii, 2) każę programowi wykreślić odpowiednie numery linii w poprzednich wersjach, 3) program wydrukuje historię tych linii (gdy były zmiany).

Albo svn, albo git byłoby naprawdę pomocne dla mnie.

+1

słowo po słowie! Nie sądzę, git śledzi zmiany linii po linii. Próbujesz użyć git dla pisarzy? dla programistów nie sądzę, że ten poziom winy nie jest wymagany. –

+0

Tak, próbuję to zrobić w dokumencie LaTex, przynajmniej w tej chwili. Nie musi to być jednak coś wbudowanego, żeby git. Wyobrażam sobie program poza gitem, który potrafi czytać historię git, może to również zrobić. –

+3

@JeslyVarghese: Git śledzi zmiany migawki przez migawkę. Format liniowy jest obliczany "w locie", możliwe jest również sformułowanie oparte na słowie. – nosid

Odpowiedz

1

Szukałem czegoś takiego, a skończyło się na włamaniu do mojego własnego rozwiązania. Można go znaleźć tutaj:

https://github.com/d33tah/wordblame

Zasadniczo, tworzy nowy katalog repozytorium, w którym wszystkie pomieszczenia są zastąpione przez nową linią oraz unikalny ciąg znaków sygnalizując, że nie było miejsca. Następnie następuje "git blame", a wynik jest reinterpretowany.

Powiązane problemy