특정 작성자의 모든 커밋을 제거하려면 어떻게합니까? (실수로 커밋되었습니다. 작성자는 커밋 기록에 표시되어서는 안됩니다.)작성자 별 커밋 모두 제거
나는 몇 가지 코드가 이름을 발견했다 -
git filter-branch --env-filter '
OLD_EMAIL="[email protected]"
CORRECT_NAME="name"
CORRECT_EMAIL="[email protected]"
if [ "$GIT_COMMITTER_EMAIL" = "$OLD_EMAIL" ]
then
export GIT_COMMITTER_NAME="$CORRECT_NAME"
export GIT_COMMITTER_EMAIL="$CORRECT_EMAIL"
fi
if [ "$GIT_AUTHOR_EMAIL" = "$OLD_EMAIL" ]
then
export GIT_AUTHOR_NAME="$CORRECT_NAME"
export GIT_AUTHOR_EMAIL="$CORRECT_EMAIL"
fi
' --tag-name-filter cat -- --branches --tags
git push --force --tags origin 'refs/heads/*'
이름을 변경되지만, 커밋을 제거 할 수없는 몇 가지 필터가 있습니까?
커밋이 경우, 사용자 정의 형식을 사용? 그러면 이전 커밋으로 다음 커밋을'rebase '할 수 있습니까? 제거 된 커밋의 변경 사항을 유지하거나 롤백해야합니까? – CoryKramer
그런 커밋의 모든 변경 사항도 제거해야합니다. 이러한 커밋이 끝나면 커밋이 더 많이 수행됩니다. – Dancyg