גיט אליאסים לא יהפכו אתכם לפרודוקטיביים יותר (אולי אפילו הפוך)
אליאסים בגיט יכולים לעזור לנו להקליד פחות ולחסוך מאיתנו את הצורך לזכור רצפים מסובכים של פקודות, אבל רוב הזמן הגדרת אליאסים לא רק שלא תעזור לנו ללמוד גיט אלא אפילו תפריע. במקום להכיר את הכלים הבסיסיים ולקבל ידע שממשיך איתנו לכל מקום, אנחנו מתרגלים לקיצור דרך ולא מצליחים להתמצא כשהקיצור נעלם.
הנה כמה אליאסים שראיתי שנופלים למלכודת הזאת ולכן לא הייתי מוסיף אותם לקיצורים שלי, וכמה אליאסים שכן יכולים לעזור:
1. לא משתמש - הצגת כל הענפים
האליאס הזה מציג את כל הענפים עם מידע על כל ענף:
git config --global alias.bra "branch -a --format='%(HEAD) %(color:yellow)%(refname:short)%(color:reset) - %(contents:subject) %(color:blue)(%(committerdate:short)) [%(authorname)]' --sort=-committerdate"
זה נראה יפה אבל אני מעדיף את ההתנהגות הרגילה של git branch
. כשאני בודק ענפים אני כן רוצה לדעת ולהבדיל בין ענפים מקומיים למרוחקים ואני תמיד רוצה לדעת איזה סוג ענף אני מחפש.
2. לא משתמש - ביטול קומיט
האליאס הזה מבטל את הקומיט האחרון:
git config --global alias.uncommit 'reset --soft HEAD^'
לא הייתי משתמש בו כי הוא לא חוסך הקלדה (להקליד את ה reset זה לא הרבה יותר ארוך), אלא משנה מילים ומפריע לי להבין איך גיט עובד. במקום להסתכל על reset כפקודה שמזיזה את הבראנץ, אני רואה את המילה uncommit
וחושב שעשיתי משהו עם הקומיט.
3. לא משתמש - הוספה וקומיט באותו משפט
האליאס הזה מוסיף את כל הקבצים מתיקיית העבודה ל Staging Area וגם פותח את ה Editor כדי לעשות קומיט:
git config --global alias.ac '!git add -A && git commit
בעבודה שלי אני תמיד מפעיל status לפני ואחרי ה add כדי לראות מה בדיוק התווסף ולוודא שכל קומיט נשמר בדיוק עם הקבצים שמתאימים לו.
4. משתמש - קיצורי דרך
הסוג היחיד של אליאסים שכן שווה להשתמש בהם הוא קיצורי דרך, לדוגמה:
git config --global alias.st 'status -sb'
מציג סטטוס באמצעות כתיבת git s
במקום כל המילה status, וגם מציג גירסה מקוצרת שלו. או עוד אחד נחמד הוא:
git config --global alias.ll 'log --oneline --graph'
שמציג לוג מקוצר עם git ll
.
אליאסים טובים הם אלה שחוסכים לנו עבודה אבל לא משאירים אותנו עם מושגים שגויים לגבי מה שבאמת קורה בגיט ולא מפריעים לנו לזכור גם את הפקודה המקורית.