התאמה אישית

אווטרים של מחברים

רשימת קומיטים היא קיר של שמות, ושמות נקראים לאט. תמונה לצד כל אחד הופכת את «מי כתב את זה» למשהו שעונים עליו במבט אחד. Gitcito מצמיד תמונה לכל מחבר שהוא מציג: בעמודת המחבר בגרף, בפרטי הקומיט לצד המחבר וכל שותף כתיבה, בבוחר שותפי הכתיבה בזמן ניסוח, במחליף הפרופילים, ולצד כל פרופיל בהגדרות.

מאיפה מגיעה התמונה

שני מקורות, נבדקים בסדר הזה:

מקור מתי משתמשים בו
Gravatar לאימייל של הקומיט יש חשבון Gravatar. נשלף ב-HTTPS לפי גיבוב SHA-256 של האימייל באותיות קטנות.
אווטר מחושב כל השאר — אין Gravatar, אין רשת, או שהשליפה כבויה. משורטט מקומית מהאימייל, ואינו נשלף אף פעם.

האווטר המחושב הוא יצור קטן, לא ריבוע צבעוני: אותו אימייל מפיק תמיד את אותה צורה ואותם צבעים, כך שמחבר נשאר מזוהה בין מאגרים ובין הפעלות. שני אימיילים שונים כמעט לעולם לא מתנגשים. הוא משורטט על ידי blobatar (MIT) ואינו זקוק לרשת בכלל — מאגר מלא במחברים שאין להם Gravatar מקבל בכל זאת מערך שלם של פנים מובחנות, לא מקוון, כבר בציור הראשון.

מכיוון שהזרע הוא האימייל של הקומיט, מחבר שמבצע קומיטים משתי כתובות מקבל שני אווטרים. זה מכוון — זהו אותו סימן שעמודת המחבר בגרף נותנת, וכך בדרך כלל מבחינים בחשבון מכונה או ב-user.email שהוגדר שגוי. תקנו זאת עם מאפייני מחבר אם שתי הכתובות הן באמת אותו אדם.

הפנים בשורת הכותרת

האווטר שלצד שם הפרופיל שלכם הוא האווטר היחיד ב-Gitcito שמייצג אותכם, במאגר הזה, עכשיו — ולכן היחיד שמגיב למצב המאגר. הוא עוטה הבעה כשמשהו קורה, ונשאר ניטרלי בשאר הזמן.

האווטר בשורת הכותרת עם הפנים הכועסות

למה הוא מגיב, מהגרוע ומטה: קבצים שנשארו בהתנגשות; מיזוג, ריבייס, צ׳רי-פיק או ריוורט ש-git מעולם לא נאמר לו איך לסיים; HEAD מנותק — מבוהל כשיש תחתיו עבודה ללא קומיט, ורק מהוסס כשאין; קומיטים שנערמים בלי דחיפה, או בלי משיכה מהמרוחק; שינויים שנערמים בלי קומיט; מגירת סטאשים שאיש אינו פותח; ומאגר שדבר לא נחת בו כבר חודש.

הגרוע מנצח: מאגר עם התנגשויות וגם ארבעים קומיטים שלא נדחפו עוטה את ההתנגשויות. העבירו את הסמן על האווטר והחלונית תגיד בדיוק מה גרם להבעה — תמונה שמשתנה בלי סיבה מוצהרת היא חידה, לא סימן. את החלונית קוראים; ההבעה רק גורמת להסתכל.

הרמות נקבעו גבוה במכוון. פנים שמודאגות מקומיט אחד שלא נדחף מודאגות לנצח, וסימן קבוע הוא סימן שלומדים לא לקרוא. ענף בלי upstream נשאר ניטרלי ולא מרוצה: «מסונכרן» אינה טענה שאפשר לומר על ענף שאף אחד לא דחף.

זו קישוטיות, לא מדידה. שורת המצב נושאת את המספרים האמיתיים, ולה צריך להאמין. ההבעה אומרת רק משהו קורה, במבט אחד.

תנועה

האווטר בשורת הכותרת נושם ומצמץ מעצמו. כבו זאת ב־ הגדרות → ערכות נושא → גרף → הנפשת אווטר הפרופיל — ההבעה ממשיכה לעקוב אחרי המאגר, היא פשוט מפסיקה לזוז. התנועה גם מדולגת אוטומטית כשהמערכת מבקשת תנועה מופחתת.

רק האווטר הזה מונפש. אווטר מונפש חייב להיות משורטט כ-SVG חי ולא כתמונה במטמון, וזה בסדר עבור אחד ובזבוז עבור כמה מאות שגרף נגלל משרטט.

כיבוי השליפה

הגדרות → ערכות נושא → גרף → הצגת אווטרים.

כבוי אומר:

  • אף בקשה ל-gravatar.com, אף פעם — לא נדחית ולא נשמרת-ומנוסה-שוב;
  • האווטרים ממשיכים להופיע, כולם מחושבים מקומית.

כלומר זה מפסק פרטיות, לא «הסתר את התמונות». אין הגדרה שמסירה אווטרים לגמרי.

המגבלות

  • שליפת Gravatar מודיעה ל-gravatar.com שהאימייל הזה נבדק. הגיבוב אינו סוד: כל מי שיש בידו אימייל מועמד יכול לגבב ולהשוות. אם רשימת המחברים של מאגר היא משהו שאתם מעדיפים לא למסור לצד שלישי, כבו את השליפה לפני שאתם פותחים אותו.
  • רק Gravatar. אווטרים שהעליתם ל-GitHub, ל-GitLab או ל-Bitbucket אינם נקראים — לכך נדרשת קריאת API מאומתת אל המארח לכל מחבר, והיא רשת רבה מדי בשביל קישוט.
  • אין דריסות. אי אפשר להצמיד תמונה נבחרת למחבר, ואי אפשר להחליף את הסגנון המחושב. האווטר הוא פונקציה של האימייל ושל שום דבר אחר.
  • לתמונת Gravatar אין הבעה. אם לאימייל של הפרופיל שלכם יש תמונה, שורת הכותרת מציגה את התמונה ולא פנים — צילום לא יכול לעשות לכם פרצוף. כבו את השליפה אם אתם מעדיפים את היצור המביע.
  • הפנים עוקבות רק אחרי המאגר הפעיל. בלשונית שאינה מאגר אין למה להגיב, ולכן היא נשארת ניטרלית.
  • קריאה אחת בכל פעם. ההבעה מציגה רק את הדבר הגרוע ביותר שנמצא, כך שמאגר יכול להיות מבולגן בכמה אופנים ועדיין לעטות הבעה אחת. זו אינה רשימת מצב — זה תפקידם של שורת המצב והחלונית.
  • קטן הוא קטן. בעמודת המחבר בגרף האווטר הוא 16px, שנושא צבע וצללית אבל לא פרטים. פרטי הקומיט משרטטים את המחבר ב-38px, ושם באמת רואים את הפנים.

ראו גם: ערכות נושא ומראה · גרף הקומיטים · מאפייני מחבר · פרופילים

שיפור התרגום הזה ב־GitHub