Chcę móc to zrobić dla scenariusza. Zasadniczo odtwarzam całą historię wersji jakiegoś kodu w Git - obecnie używa on innego systemu kontroli wersji. Potrzebuję skryptu, aby móc dodawać zatwierdzenia do Git, zachowując pierwotnego autora (i datę) zatwierdzenia.
Zakładając, że znam autora zatwierdzenia i datę / godzinę wprowadzenia zmiany, czy istnieje polecenie Git, które pozwala mi to zrobić? Zakładam, że tak, ponieważ git-p4 robi coś podobnego. Po prostu proszę o najlepszy sposób na zrobienie tego.
git
command-line
commit
Carl
źródło
źródło
Odpowiedzi:
Sprawdź
--author
opcję dlagit commit
:Od strony man :
źródło
--date
opcja nadpisania daty.git commit -a --author="$user_details" --date="submit_date $submit_time" --file=/tmp/commit_msg
Wystarczy dodać do tak:
--author
opcja wymienionych w przyjętym odpowiedź zastąpi tylko autora , a nie committer Informacyjnym popełnić.W większości przypadków jest to poprawne zachowanie, ale jeśli z jakiegoś powodu musisz ręcznie nadpisać również informacje o inicjatorze, użyj zmiennych środowiskowych
GIT_COMMITTER_NAME
iGIT_COMMITTER_EMAIL
(jestGIT_COMMITTER_DATE
też). Zobacz Git-Internals-Environment-VariablesTo sprawi, że zatwierdzenie będzie wyglądało tak, jakby zostało utworzone i zatwierdzone przez określonego użytkownika.
źródło
git log --pretty=fuller
Edytuj swój plik ~ / .gitconfig i dołącz nowy alias, w którym możesz dostosować niestandardowego użytkownika i adres e-mail.
Sprawdź to
źródło