Skip to content

YaliEkstein/TarGit

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

16 Commits
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

תרגיט – תרגיל גיט

Git

רקע

מה זה גיט?

איפה ללמוד גיט?

מה נעשה בתרגיט?

  • נלמד פקודות בסיסיות ב-command line ומה מטרתן במהלך עבודה שוטף.
  • נראה Best practices של גיט.
  • ניחשף למצבים בהם ניתקל אולי בעתיד ונראה כיצד לפתור אותם.

מה לא נעשה בתרגיט?

  • התרגיט לא מסביר את התיאוריה שמאחורי גיט, אלא בעיקר את הפרקטיקה.
  • נשתדל לא להגיד בדיוק איך לעשות כל דבר. תוכלו ללמוד מהקישורים שבסעיף ב', חיפוש בגוגל או להיעזר בקישורים שמסומנים ב-underline.


Git

שלב 0 –GitHub, clone & config

  • וודאו שיש לכם.ן git על המחשב.
  • תגדירו את השם והאימייל שלכם (global config)
  • פתחו חשבון GitHub.
  • מלאו את פרטי החשבון בטופס הבא.
  • אשרו את ההזמנה שתשלח לכם.ן במייל.
  • עשו clone לתיקייה לבחירתכם על המחשב.
  • כל הכבוד! עשיתם.ן clone, עכשיו תוכלו להריץ את הקובץ NextLevel.exe על ידי NextLevel.exe/.
  • בעיה שיכולה להיווצר היא שחסר לכם.ן במחשב Cygwin. רק אם חסר לכם.ן התקינו והוסיפו את C:\cygwin64\bin ל-environment variables

שלב 1 – status, add & commit

  • הריצו את הפקודה git status!
  • שימו לב לקובץ חדש שנוצר בתיקייה, השם שלו מופיע באדום (addom).
  • הוסיפו אותו לפרויקט עם הפקודה git add ושם הקובץ.
  • התעלמו מהערות של warning על CRLF.
  • הריצו את הפקודה git status!!
  • שימו לב לשינוי בהדפסה, השם שלו מופיע בירוק (yaroC).
  • שמרו את הגרסה (commit) הזו. תנו את ההערה / ההודעה הבאה:
    • Added new secrets file.
  • טיפ של אלופים: אם אתם.ן עובדים.ות ב-git bash ונפתח לכם.ן חלון חדש לעריכת טקסט (vim) תוכלו לסגור את החלון על ידי אסקייפ ואז x:
  • הריצו את הפקודה git status!!! שימו לב לשינוי בהדפסה.
  • הריצו את NextLevel.exe.

שלב 2 – log & diff

  • חזרו על התהליך משלב 1. עם הדגשים הבאים:
  1. הריצו כל הזמן את הפקודה git status!!!!
  2. דרך טובה לזכור את סדר הפעולות: אדום ← git add, ירוק ← git Commit
  3. חשוב לתת הערות אינפורמטיביות. עשו commit עם ההערה: Updated secrets file.
  • הסתכלו על הcommit-ים האחרונים שנעשו, זהו את הID, היוצר.ת והתאריך של ה-commit.
  • הסתכלו על השינוי בין ה-commit הראשון שעשיתם.ן למצב הנוכחי.
  • הריצו את NextLevel.exe.

שלב 3 – pull & push

  • במידה וקוד ה-remote (הקוד המשותף לכולם) השתנה, תצטרכו לעדכן את הקוד הלוקלי (שנמצא רק על המחשב שלכם.ן). עשו זאת על ידי git pull.
  • נסו לעדכן את קוד ה-remote על ידי git push. האם הצלחתם.ן?
  • אם לא הצלחתם.ן סימן שהתרגיל עובד! ננסה לפתור את הבעיה בשלב הבא.

שלב 4 – branch

  • בדקו באיזה branch (ענף) אתם.ן.
  • צרו branch חדש, תנו לו שם כלשהו.
  • עדכנו את הקוד הlocal ע"י הפקודה git pull origin ואז השם של ה-branch.
  • דחפו את הקוד ה-local ל-remote באופן דומה.
  • עברו ל-branch לאחר שיצרתם ועדכנתם אותו.
  • הריצו את NextLevel.exe.

שלב 5 – ignore

  • שימו לב לקובץ חדש שנוצר בתיקייה. האם אתם רואים אותו בהדפסה של git status?
  • נסו להבין מדוע זה קורה. תנו 3 דרכים לפחות לפתור את הבעיה.
  • הריצו את NextLevel.exe.

שלב 6 – revert & cherry-pick

  • הבינו הדמיון והשוני בין revert ל-cherry-pick.
  • עדכנו את הגרסה של ה-branch ב-remote.
  • שימו לב לשינוי שנעשה לקובץ NextLevel.exe ב-commits קודמים.
  • תזכורת לשני דברים שכדאי תמיד לעשות: git status בכל הזדמנות ו-pull לפני push.
  • הריצו את NextLevel.exe התקין. במידה ועולה שאלה לגבי Unlink, הקישו n ואנטר.

שלב 7 – merge conflict

  • בדקו שאתם על ה-branch שיצרתם.ן.
  • מישהו עשה שינויים לוקליים בmain branch. צפו בcommit-ים האחרונים.
  • הריצו את הפקודה git merge main, שעושה איחוד בין הbranch-ים הלוקליים.
  • הריצו git status!!!! קראו טוב את הפלט. מה השתנה? הסתכלו על הקובץ שהשתנה.
  • פתרו את הקונפליקט שנוצר, שימו לב להשאיר את הקבצים כפי שאתם רוצים אותם.
  • תנו לmerge commit את ההערה הבאה: Merge branch 'main' into ואז שם הbranch.
  • הריצו את NextLevel.exe.

שלב 8 – pull request

  • כנסו לGitHub ופתחו pull request מה-branch שלכם לmain branch.
  • לאחר שפתחתם, תוכלו לראות איזה בדיקות (checks) נעשו על ה-pull request.
  • היכנסו לdetails של הבדיקה ומצאו את ההודעה שמגלה איך לעבור לשלב הבא.
  • לאחר השינויים שעשיתם.ן הריצו את NextLevel.exe.

(מומלץ) שלב 9 – IDEs & GUI

  • הריצו את Reset.exe.
  • חזרו על התהליך של התרגיט, הפעם תעזרו ב-CodeEditor שלכם. ניתן לעשות את הפקודות בקלות ב PyCharm, CLion, VSCode ועוד.
  • (לא חובה) ניתן להוריד GUI חיצוני שמציג בצורה נוחה את הפקודות והמצב הנוכחי של הפרויקט.
  1. GitHub Desktop
  2. GitKraken
  3. SourceTree

כאן נגמר התרגיט

  • כעת אתם יכולים לחדד את התיאוריה מאחורי גיט, לנסות ללמוד עוד פקודות שימושיות או להתחיל להשתמש בגיט בפרויקט שלכם.ן.
  • Have fun gitting!

About

An exercise to practice git skills

Resources

Stars

Watchers

Forks