Niedawno zastąpił autor, committer i ich emaile we wszystkich moich lokalnych zatwierdzeń, stosując następujące polecenie:„git filter-branch” z powodzeniem stosowany do zmiany committer/autor, ale zmiany nie odzwierciedlają na github
git filter-branch -f --env-filter '
if [ "$GIT_COMMITTER_NAME" = "oldname" ];
then
GIT_COMMITTER_NAME="newname";
GIT_COMMITTER_EMAIL="newaddr";
GIT_AUTHOR_NAME="newname";
GIT_AUTHOR_EMAIL="newaddr";
fi
if [ "$GIT_AUTHOR_NAME" = "oldname" ];
then
GIT_COMMITTER_NAME="newname";
GIT_COMMITTER_EMAIL="newaddr";
GIT_AUTHOR_NAME="newname";
GIT_AUTHOR_EMAIL="newaddr";
fi
' -- --all
Aktualizacje są natychmiast widoczne lokalnie (np. W moim środowisku SourceTree). Jednak po siłę pchania zmodyfikowany repozytorium GitHub ...
git push -f origin master
... dwa poszczególne pozycje uparcie odmawiają mają committer i autor aktualizacja: plik Gemfile.lock i katalog Widoki.
Należy również pamiętać, że:
Jest to drugi raz, jestem wykonywania tego rodzaju pracy na tym repozytorium. Uważam, że nie spotkałem się z takimi problemami za pierwszym razem.
wyszukiwania dla mojej starej nazwy w repozytorium ...
$ find . "<oldname">
... ma uzyskując kilka wyników, co oznacza, że oldname wciąż czai się w wielu repozytorium plików - w tym pliki które pojawiają się zarówno w GitHub, jak i lokalnie.
Moje pytanie, a następnie: Jak mogę zmienić autora/autora dwóch "upartych" plików na GitHub?
Być może GitHub buforuje te informacje? Czy pchnięcie repo do nowej gałęzi lub nowego repo powoduje ten sam problem? –
Co masz na myśli, mówiąc, że Gemfile.lock i Widoki "odmawiają zaktualizowania swojego autora i autora"? Tylko commits mają autora i autora, a nie drzewa i bloby. Również gałąź filtru, którą uruchomiłeś, nie zrobiłaby nic na temat plików o nazwie "oldname". Ponadto może pomóc opublikować adres URL Github. –
Powiązane: [Jak zmienić autora zatwierdzenia w git?] (Http://stackoverflow.com/q/750172/456814). –