2016-04-07 27 views
0

Git geçmişini yeniden yazmamın nedeni, adımın çoğaltılması ve uzaktaki iki geliştiricinin sayılmasıdır.git rewrite: Yazar adı değiştirmiyor

Ayrıca eklediğim ekibim, bilinmeyen yazar isimlerini reddeden bir ön alım kancası ekledi.

Sorunu hemen düzeltmem gerekiyor, bu yüzden https://help.github.com/articles/changing-author-info/ ve yazar adlarının yeniden yazımlarını yeniden yazmayı denemek için diğer birkaç kılavuza göz attım.

Bu

şu anda kullanıyorum biridir:

#!/bin/sh 

git filter-branch --env-filter ' 

OLD_EMAIL="[email protected]" 
CORRECT_NAME="Tomas Prado" 
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 

Sorun Bu bir o Görüyorsunuz

commit 355ee6adb0540d3e2eed7163dfe36087f85feb78 
Author: tomasp <[email protected]> 
Date: Wed Apr 6 13:35:25 2016 +0200 

    Fix hashed 

değiştirmeli işlemek, benim adım gerektiği

"Tomas Prado" olmak ama "tomasp".

Github komut dosyasının yürütülmesinden sonra aynı kalır. Ne yapacağımı bilmiyorum.

cevap

0

Neden --commit-filter kullanıyorsunuz?

git filter-branch --commit-filter ' 
    if [ "$GIT_AUTHOR_EMAIL" = "[email protected]" ]; 
    then 
      GIT_AUTHOR_NAME="Tomas Prado"; 
      GIT_AUTHOR_EMAIL="[email protected]"; 
      if [ "$GIT_COMMITTER_EMAIL" = "[email protected]" ]; 
      then 
       GIT_COMMITTER_NAME="Tomas Prado"; 
       GIT_COMMITTER_EMAIL="[email protected]"; 
       git commit-tree "[email protected]"; 
      else 
       git commit-tree "[email protected]"; 
      fi 
    else 
      if [ "$GIT_COMMITTER_EMAIL" = "[email protected]" ]; 
      then 
       GIT_COMMITTER_NAME="Tomas Prado"; 
       GIT_COMMITTER_EMAIL="[email protected]"; 
       git commit-tree "[email protected]"; 
      else 
       git commit-tree "[email protected]"; 
      fi 
    fi' HEAD