작성자 아바타
커밋 목록은 이름의 벽이고, 이름은 읽는 데 시간이 걸립니다. 각 이름 옆의 그림은 "이걸 누가 썼는가"를 한눈에 답할 수 있는 물음으로 바꿉니다. Gitcito는 표시하는 모든 작성자에게 그림을 붙입니다. 그래프의 작성자 열, 커밋 상세의 작성자와 각 공동 작성자 옆, 작성 중 공동 작성자 선택기, 프로필 전환기, 그리고 설정의 각 프로필 옆입니다.
그림은 어디서 오는가
두 가지 출처를 이 순서로 시도합니다.
| 출처 | 사용되는 때 |
|---|---|
| Gravatar | 커밋 이메일에 Gravatar 계정이 있음. 소문자로 바꾼 이메일의 SHA-256 해시를 사용해 HTTPS로 가져옵니다. |
| 생성 아바타 | 그 밖의 모든 경우 — Gravatar 없음, 네트워크 없음, 또는 조회를 끔. 이메일로 로컬에서 그리며 절대 내려받지 않습니다. |
생성 아바타는 색칠한 사각형이 아니라 작은 생물입니다. 같은 이메일은 항상 같은 형태와 같은 색을 만들어 내므로, 저장소를 옮겨도 재시작을 거쳐도 작성자를 알아볼 수 있습니다. 서로 다른 두 이메일이 겹치는 일은 사실상 없습니다. 그림은 blobatar(MIT)가 그리며 네트워크가 전혀 필요하지 않습니다. Gravatar가 없는 작성자로 가득한 저장소도 첫 그리기부터, 오프라인으로, 구별되는 얼굴 한 세트를 온전히 받습니다.
시드가 커밋 이메일이므로 두 주소로 커밋하는 작성자는 아바타를 두 개 갖습니다. 이는 의도한 것으로,
그래프의 작성자 열이 주는 것과 같은 신호이며, 보통 이렇게 머신 계정이나 잘못 설정된 user.email을
알아차립니다. 두 주소가 정말 같은 사람이라면 작성자 속성으로 바로잡으세요.
제목 표시줄의 표정
프로필 이름 옆 아바타는 Gitcito에서 이 저장소에서의, 지금의 당신을 뜻하는 유일한 아바타입니다.그 래서 저장소 상태에 반응하는 것도 이 하나뿐입니다. 무슨 일이 있으면 표정을 짓고, 그 밖에는 보통 얼굴 로 남습니다.
![]()
무엇에 반응하는가, 나쁜 것부터: 충돌인 채 남은 파일, git에게 끝내는 법을 알려주지 않은 병합·리베이스· 체리픽·되돌리기, 분리된 HEAD(아래에 커밋하지 않은 작업이 있으면 놀란 얼굴, 없으면 갸웃하는 얼굴), 푸시하지 않았거나 원격에서 받아오지 않은 채 쌓이는 커밋, 커밋하지 않은 채 쌓이는 변경, 아무도 열지 않는 스태시 서랍, 그리고 한 달 동안 아무것도 들어오지 않은 저장소입니다.
가장 나쁜 것이 이깁니다. 충돌이 있고 게다가 푸시하지 않은 커밋이 마흔 개인 저장소가 짓는 표정은 충돌 쪽입니다. 아바타에 포인터를 올리면 무엇이 그 표정을 만들었는지 툴팁이 정확히 알려줍니다. 이유를 밝히지 않은 채 바뀌는 그림은 신호가 아니라 수수께끼입니다. 읽어야 할 것은 툴팁이고, 표정은 그쪽을 보게 만드는 역할일 뿐입니다.
기준값은 의도적으로 높습니다. 푸시하지 않은 커밋 한 개에 걱정하는 얼굴은 영원히 걱정하고, 늘 켜져 있는 신호는 읽지 않게 되는 신호입니다. upstream이 없는 브랜치는 만족이 아니라 보통으로 남습니다. "동기 상태"는 아무도 푸시하지 않은 브랜치에 대해 할 수 있는 주장이 아니기 때문입니다.
이것은 장식이고 계측이 아닙니다. 실제 수치는 상태 표시줄이 지니고 있으며 믿어야 할 것은 그쪽입니다. 표정은 한눈에 무슨 일이 있다고만 말합니다.
움직임
제목 표시줄의 아바타는 스스로 숨 쉬고 눈을 깜빡입니다. 설정 → 테마 → 그래프 → 프로필 아바타 애니메이션에서 끄세요. 표정은 그대로 저장소를 따르고, 움직임만 멈춥니다. 시스템이 움직임 줄이기를 요청하면 움직임은 자동으로도 생략됩니다.
애니메이션되는 것은 이 아바타 하나뿐입니다. 움직이는 아바타는 캐시된 이미지가 아니라 살아 있는 SVG로 그려야 하는데, 하나라면 괜찮지만 스크롤하는 그래프가 그리는 수백 개에는 낭비입니다.
조회 끄기
설정 → 테마 → 그래프 → 아바타 표시.
꺼짐의 뜻은 이렇습니다.
gravatar.com으로 가는 요청이 전혀 없음 — 지연 전송도, 캐시 후 재시도도 없음.- 아바타는 그대로 나타나며, 모두 로컬에서 생성됩니다.
즉 이것은 개인정보 스위치이고 "그림 숨기기"가 아닙니다. 아바타를 완전히 없애는 설정은 없습니다.
한계
- Gravatar 조회는 그 이메일을 들여다봤다는 사실을 gravatar.com에 알립니다. 해시는 비밀이 아닙니다. 후보 이메일을 가진 사람은 누구나 해시를 만들어 비교할 수 있습니다. 저장소의 작성자 목록이 제3자에게 넘기고 싶지 않은 것이라면, 열기 전에 조회를 끄세요.
- Gravatar만. GitHub, GitLab, Bitbucket에 올린 아바타는 읽지 않습니다. 작성자마다 인증된 호스트 API 호출이 필요한데, 장식 하나에 쓰기엔 네트워크가 너무 많습니다.
- 재정의 없음. 작성자에게 원하는 그림을 고정할 수도, 생성 스타일을 바꿀 수도 없습니다. 아바타는 이메일만의 함수입니다.
- Gravatar 사진에는 표정이 없습니다. 프로필 이메일에 사진이 있으면 제목 표시줄은 사진을 보여주고 표정은 내지 않습니다. 사진은 당신에게 표정을 지을 수 없습니다. 표정 있는 블롭을 원한다면 조회를 끄세요.
- 표정은 활성 저장소만 따릅니다. 저장소가 아닌 탭에서는 반응할 대상이 없으므로 보통 얼굴로 남습니다.
- 한 번에 하나의 읽기. 표정은 찾아낸 것 중 가장 나쁜 하나만 보여 주므로, 저장소는 여러 방식으로 어질러져 있으면서도 표정 하나만 짓습니다. 상태 목록이 아닙니다 — 그것은 상태 표시줄과 툴팁의 일입니다.
- 작은 것은 작습니다. 그래프의 작성자 열에서 아바타는 16px이고, 색과 실루엣은 전하지만 세부는 전하지 못합니다. 커밋 상세는 작성자를 38px로 그리며, 얼굴이 정말 보이는 곳은 거기입니다.