שתי פקודות גיט חדשות בשבילכם
הרבה מהפקודות ב git יכולות לעשות המון דברים שונים בהתאם למתגים שמעבירים אליהן, וזה אחד הדברים שהופכים את גיט לקשה להבנה. אתה חושב שאתה מבין מה checkout עושה ואז לומד על עוד 10 דברים אחרים לגמרי שהוא גם עושה.
בקיצור גם החברים ב git הבינו שחלק מהפקודות עושות יותר מדי ובגירסא האחרונה קיבלנו שתי פקודות חדשות שלוקחות התנהגות מ checkout. הפקודה git switch
שמחליפה בין ענפים, והפקודה git restore
שמחזירה קובץ מהמאגר. נראה איך הן עובדות.
קודם כל git switch
יכולה לעבור בין ענפים קיימים או ליצור ענפים חדשים. אתם נותנים לה שם של ענף כפרמטר והופ אתם שם. דוגמא? בטח. קודם ניצור מאגר:
$ git init
$ date > one.txt
$ git add .
$ git commit -m 'initial commit'
ועכשיו אפשר ליצור ענף חדש עם switch:
$ git switch -c dev
Switched to a new branch 'dev'
לחזור לענף master:
$ git switch master
Switched to branch 'master'
ולחזור שוב ל dev סתם בשביל המשחק:
$ git switch -
Switched to branch 'dev'
סוויצ' עושה עוד כמה דברים ובשביל זה ממליץ לכם לקרוא את התיעוד עליו עם man git-switch
.
הפקודה השניה restore
גם ממש פשוטה. באותו מאגר נקלקל את הקובץ שלנו:
$ rm one.txt
ועכשיו אפשר להחזיר אותו עם:
$ git restore one.txt
$ ls
one.txt
אפשר גם להחזיר מספר קבצים עם Pathspec כללי, כלומר:
$ rm *
$ git restore '*'
$ ls
one.txt
ויש עוד מלא אופציות בפנים של להחזיר קובץ מענף או קומיט מסוים, או לשמור את הקובץ ששחזרתם לתוך ה Staging במקום לתיקיית העבודה. בקיצור גם כאן כדאי להעיף מבט ב man git-restore
.
רשימה מלאה של כל הפינוקים והשינויים בגיט החדש אפשר למצוא בהודעת המערכת על שחרורו בקישור https://public-inbox.org/git/xmqqy2zszuz7.fsf@gitster-ct.c.googlers.com/