나는 mercurial 용 HgGit 확장을 사용하여 GitHub에서 저장소의 사본을 갖기 시작했습니다. 거의 모든 것이 잘 작동하지만 GitHub의 정보를 보면 내 사용자 이름 대신 invalid-email-address (author)
이 표시됩니다. 이 경우 사용자 이름을 올바르게 표시 할 수있는 방법이 있습니까?HgGit : GitHub의 "invalid-email-address"
답변
의욕에있는 이름은 일반적으로 형식은 다음과 같습니다
Name <[email protected]>
힘내는 보통 이름과 사용자의 전자 메일 주소로 설정됩니다.
내 생각 엔 사용자 계정에 사용자 이름에 전자 메일 주소를 지정하여 커밋의 사용자 이름이 github에서 올바르게 작동하도록해야 할 것입니다.
이 사용자 이름은 특정 웹 사이트의 사용자 이름과 동일하지 않아도되며 커밋 정보 용입니다. 그것이 동일해야 할 필요가 있다면 어떻게 다른 사람이 변경 집합을 푸시 할 수 있습니까?
예를 들어, 내의 bitbucket 사용자 이름은 내 커밋 내 의욕 사용자 이름과 다른, 그리고 그 길을 내가 사용하는 REPO의 hgrc
가에서의 bitbucket 경로에서 나의의 bitbucket 사용자 이름과 암호를 계속 내 사용자의 [auth]
섹션 .hgrc
/Mercurial.ini
: 여기에 암호를 퍼팅은
[auth]
bb.prefix = bitbucket.org
bb.schemes = https
bb.username = myBBusername
bb.password = myBBpassword
(당신이하라는 메시지가 표시됩니다) 선택 사항이지만 같은 keyring 확장자로 저장하기위한 더 안전한 대안이있다.
그러나 기존 변경 집합의 사용자 이름을 변경하는 데는 조금 늦었습니다 (repo의 전체 기록을 다시 작성해야합니다).
"잘못된 전자 메일 주소"문제를 해결하려면 커밋에 이전의 "git author names"를 찾아서 커밋의 "작성자"와 "커미터"의 새 이름과 전자 메일 주소를 설정해야합니다. 새로 변환 된 저장소를 GutHub에 푸시합니다.
이 수정 (검색 및 바꾸기 ...)은 "git filter-branch"명령을 사용하여 수행됩니다. 여기에 사용할 준비가 된 예제가 있습니다. (지금 죽었습니까?) Mercurial to Git, solving "invalid-email-address"
[편집 됨] 위의 링크가 죽었으므로 필자는 "fix-user-email.sh"파일의 예를 제공합니다 이하. 요 볼 수있는 바와 같이, 여기에 저자 이름의 두 가지 변종은 동일한 유효 GIT 이름/이메일 쌍으로 변환되고있다 :
git filter-branch --env-filter '
an="$GIT_AUTHOR_NAME"
am="$GIT_AUTHOR_EMAIL"
cn="$GIT_COMMITTER_NAME"
cm="$GIT_COMMITTER_EMAIL"
if [ "$GIT_AUTHOR_NAME" = "peter.pen" ]
then
cn="peterpen"
cm="[email protected]"
an="peterpen"
am="[email protected]"
fi
if [ "$GIT_AUTHOR_NAME" = "peterpen" ]
then
cn="peterpen"
cm="[email protected]"
an="peterpen"
am="[email protected]"
fi
export GIT_AUTHOR_NAME="$an"
export GIT_AUTHOR_EMAIL="$am"
export GIT_COMMITTER_NAME="$cn"
export GIT_COMMITTER_EMAIL="$cm"
'
개인적으로 Cygwin에서 떠들썩한 파티 창에서 단계 (하여 위에서 언급 한 페이지의 단계에서 명령을 실행 실제로 나는 수정/코스 :-)의 내 인생을) 단순화하기 위해 스크립트를-실행 재와 GIT-GUI를 사용하여 결과를 확인 .../실행
당신은 GitHub의에 저장소를 테스트 할 준비가,
- GitHub에서 새 저장소를 만들고 아무 것도하지 않습니다!
- 변환 된 Repo를 Git 허브에 푸시합니다. GotHub에서 repo를 삭제하고 같은 이름의 repo를 다시 만드십시오 ...
해당 링크가 죽었습니다. –
GH_ACMITTER_NAME 및 GIT_COMMITTER_EMAIL (GIT_AUTHOR_NAME 및 GIT_AUTHOR_EMAIL 외에도)의 수은 저장소에서 코드 전송을 github 및 wihtout으로 업데이트했습니다. github의 커밋 페이지에서 모든 커밋에 대해 잘못된 이메일 주소를 수신합니다. –
- 1. GitHub의 이름
- 2. GitHub의 파일
- 3. 은 GitHub의
- 4. github의 개인 폴더
- 5. GitHub의 원본 디렉토리 이동
- 6. GitHub의 바탕 화면 알림
- 7. 번들러와 Github의 보석
- 8. github의 여러 저장소
- 9. GitHub의 분기 간 병합
- 10. GitHub의 PowerShell 스크립트
- 11. Capistrano와 Github의 웹 사이트 배포
- 12. Github의 레포 크기를 줄이는 방법
- 13. 로컬과 github의 차이점을 확인하는 방법
- 14. Github의 보석으로 주목할만한 제품으로 사용
- 15. 구성 - GitHub의 단일 디렉토리를 밀어/커밋
- 16. GitHub의 Clojure 라이브러리에 대한 Maven 종속성
- 17. github의 라인 주석 달기 기능과 같은 모델링
- 18. github의 공유 저장소에서 끌어 오기 요청을 관리하기위한 워크 플로
- 19. 로컬 변경 사항을 github의 저장소 변경 사항과 병합하려면 어떻게해야합니까?
- 20. 어떻게 github의 코드를 vendor/gems에서 안정적으로 사용할 수 있습니까?
- 21. 임베디드 웹킷 앱 (github의 테스트 앱)에서 HTML 클라이언트 측 SQL 데이터베이스를 활성화하는 방법
- 22. Git 버전 프로젝트의 일부 파일을 잃어버린 경우에만 복구 할 수 있습니다 ... Github의 포크
- 23. 내 웹 서버에있는 Git 및 Github의 위치를 이해하는 데 어려움이 있습니다.
- 24. 사용자가 "복사"버튼을 눌러 삽입 텍스트 필드 (Github의 것과 유사)에서 URL을 복사 할 수있게 해주는 스크립트가 있습니까?
- 25. GitHubs 프로세스 나는 (우리는 또한 직장에서 자식을 사용) 새 개인 프로젝트에 대한 GitHub의 이번 주말을 사용하기 시작
- 26. asp.net에는 전자 메일 주소의 유효성을 검사하는 기능이 있습니까?
- 27. 은 GitHub의에 저장소가 실패 업로드
- 28. 누군가 내게 풀 요청을 보냈습니다. 어떻게해야합니까?
- 29. github/visual 스튜디오에 문제 플러그인이 있습니까?
- 30. Node.js 배포를 자동화하려면 어떻게해야합니까?
'hgrc' /'Mercurial.ini'에서 사용자 이름의 형식은 무엇입니까? –
Google 코드 (기본 레포가 있음)에 필요한 "chersanya"입니다. – aplavin