我forked
一个repo
。已完成工作,然后提交了我的pull request
。但是,存储库所有者需要commits to be squashed
。在压缩提交时,我有很多merge conflicts
。压缩所有提交后,现在我的PR显示"user B committed with user A"
,其中user B
是other guy
,user A
是me
。我如何删除 "user A commited with user B"
?如何让PR只显示我的提交,而不是采取其他人并将其合并?我尝试了堆栈溢出的各种答案。这个Removing <user> committed with <user> on Github可能适用于本地提交。但我已经推动了一切。
请帮忙。
答案 0 :(得分:3)
使用git filter-branch
更改作者和提交者。
复制以下脚本并替换以下内容:
git filter-branch --env-filter \
'if test "$GIT_COMMIT" = "012345"; then
export GIT_AUTHOR_NAME="Name Here"
export GIT_COMMITTER_NAME="Name Here"
export GIT_AUTHOR_EMAIL="email@here.com"
export GIT_COMMITTER_EMAIL="email@here.com"
fi' && rm -fr "$(git rev-parse --git-dir)/refs/original/"
小心:它会重写历史记录,如果你已经按下了,你可能必须使用git push --force
。