You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
Web-Dev-For-Beginners/translations/he/1-getting-started-lessons/2-github-basics
Lee Stott 2daab5271b
Update Quiz Link
3 weeks ago
..
README.md Update Quiz Link 3 weeks ago

README.md

מבוא ל-GitHub

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

מבוא ל-GitHub

איור מאת Tomomi Imura

שאלון לפני השיעור

שאלון לפני השיעור

מבוא

בשיעור הזה נלמד:

  • איך לעקוב אחרי העבודה שאתה עושה במחשב שלך
  • איך לעבוד על פרויקטים עם אחרים
  • איך לתרום לתוכנה בקוד פתוח

דרישות מקדימות

לפני שמתחילים, יש לבדוק אם Git מותקן. בטרמינל הקלד: git --version

אם Git לא מותקן, הורד את Git. לאחר מכן, הגדר את הפרופיל המקומי שלך ב-Git דרך הטרמינל:

  • git config --global user.name "your-name"
  • git config --global user.email "your-email"

כדי לבדוק אם Git כבר מוגדר, ניתן להקליד: git config --list

תצטרך גם חשבון GitHub, עורך קוד (כמו Visual Studio Code), ותצטרך לפתוח את הטרמינל שלך (או: שורת הפקודה).

גש ל-github.com ופתח חשבון אם עדיין אין לך, או התחבר ומלא את הפרופיל שלך.

GitHub הוא לא מאגר הקוד היחיד בעולם; יש אחרים, אבל GitHub הוא המוכר ביותר.

הכנה

תצטרך תיקייה עם פרויקט קוד במחשב המקומי שלך (מחשב נייד או PC), וגם מאגר ציבורי ב-GitHub, שישמש כדוגמה לאיך לתרום לפרויקטים של אחרים.


ניהול קוד

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

משימה: צור מאגר ותחייב קוד

צפה בסרטון

סרטון יסודות Git ו-GitHub

  1. צור מאגר ב-GitHub. ב-GitHub.com, בלשונית המאגרים, או מהתפריט העליון בצד ימין, מצא את כפתור new repo.

    1. תן למאגר שלך (תיקייה) שם.
    2. בחר create repository.
  2. נווט לתיקיית העבודה שלך. בטרמינל שלך, עבור לתיקייה (המכונה גם ספרייה) שברצונך להתחיל לעקוב אחריה. הקלד:

    cd [name of your folder]
    
  3. אתחל מאגר git. בפרויקט שלך הקלד:

    git init
    
  4. בדוק סטטוס. כדי לבדוק את הסטטוס של המאגר שלך הקלד:

    git status
    

    הפלט יכול להיראות כך:

    Changes not staged for commit:
    (use "git add <file>..." to update what will be committed)
    (use "git checkout -- <file>..." to discard changes in working directory)
    
         modified:   file.txt
         modified:   file2.txt
    

    בדרך כלל פקודת git status תספר לך דברים כמו אילו קבצים מוכנים ל_שמירה_ במאגר או יש עליהם שינויים שתרצה לשמר.

  5. הוסף את כל הקבצים למעקב זה נקרא גם שלב הקבצים/ הוספת קבצים לאזור ההמתנה.

    git add .
    

    הפקודה git add עם הארגומנט . מציינת שכל הקבצים והשינויים שלך יתווספו למעקב.

  6. הוסף קבצים נבחרים למעקב

    git add [file or folder name]
    

    זה עוזר לנו להוסיף רק קבצים נבחרים לאזור ההמתנה כשאנחנו לא רוצים להתחייב על כל הקבצים בבת אחת.

  7. בטל שלב של כל הקבצים

    git reset
    

    הפקודה הזו עוזרת לנו לבטל שלב של כל הקבצים בבת אחת.

  8. בטל שלב של קובץ מסוים

    git reset [file or folder name]
    

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

  9. שמור את העבודה שלך. בשלב הזה הוספת את הקבצים לאזור שנקרא אזור ההמתנה. מקום שבו Git עוקב אחרי הקבצים שלך. כדי להפוך את השינוי לקבוע, עליך להתחייב לקבצים. כדי לעשות זאת, צור commit עם הפקודה git commit. ה-commit מייצג נקודת שמירה בהיסטוריה של המאגר שלך. הקלד את הפקודה הבאה כדי ליצור commit:

    git commit -m "first commit"
    

    זה מתחייב על כל הקבצים שלך, עם ההודעה "first commit". עבור הודעות התחייבות עתידיות תרצה להיות יותר תיאורי כדי להעביר איזה סוג שינוי ביצעת.

  10. חבר את מאגר Git המקומי שלך ל-GitHub. מאגר Git טוב במחשב שלך, אבל בשלב מסוים תרצה שיהיה לך גיבוי של הקבצים שלך איפשהו וגם להזמין אנשים אחרים לעבוד איתך על המאגר שלך. מקום נהדר לעשות זאת הוא GitHub. זוכר שכבר יצרת מאגר ב-GitHub? אז הדבר היחיד שצריך לעשות הוא לחבר את מאגר Git המקומי שלך ל-GitHub. הפקודה git remote add תעשה בדיוק את זה. הקלד את הפקודה הבאה:

    הערה, לפני שאתה מקליד את הפקודה, עבור לדף המאגר שלך ב-GitHub כדי למצוא את כתובת ה-URL של המאגר. תשתמש בה בפקודה למטה. החלף את https://github.com/username/repository_name.git בכתובת ה-URL של GitHub שלך.

    git remote add origin https://github.com/username/repository_name.git
    

    זה יוצר remote, או חיבור, בשם "origin" שמצביע על המאגר ב-GitHub שיצרת קודם.

  11. שלח קבצים מקומיים ל-GitHub. עד כה יצרת חיבור בין המאגר המקומי למאגר ב-GitHub. בוא נשלח את הקבצים האלה ל-GitHub עם הפקודה git push, כך:

    הערה, שם הענף שלך עשוי להיות שונה כברירת מחדל מ-main.

    git push -u origin main
    

    זה שולח את ההתחייבויות שלך בענף "main" ל-GitHub.

  12. הוסף עוד שינויים. אם תרצה להמשיך לבצע שינויים ולשלוח אותם ל-GitHub, תצטרך להשתמש בשלוש הפקודות הבאות:

    git add .
    git commit -m "type your commit message here"
    git push
    

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

הודעות התחייבות

שורת נושא מצוינת להודעת התחייבות ב-Git משלימה את המשפט הבא: אם ייושם, התחייבות זו תעשה <שורת הנושא שלך כאן>

לשורת הנושא השתמש בזמן הווה, ציווי: "שנה" ולא "שינה" או "משנה". כמו בשורת הנושא, גם בגוף ההודעה (אופציונלי) השתמש בזמן הווה, ציווי. הגוף צריך לכלול את המניע לשינוי ולהשוות זאת להתנהגות הקודמת. אתה מסביר את הלמה, לא את האיך.

הקדש כמה דקות לגלוש ב-GitHub. האם תוכל למצוא הודעת התחייבות ממש טובה? האם תוכל למצוא אחת מינימלית מאוד? איזה מידע לדעתך הכי חשוב ומועיל להעביר בהודעת התחייבות?

משימה: שתף פעולה

הסיבה העיקרית לשים דברים ב-GitHub הייתה לאפשר שיתוף פעולה עם מפתחים אחרים.

עבודה על פרויקטים עם אחרים

צפה בסרטון

סרטון יסודות Git ו-GitHub

במאגר שלך, נווט ל-Insights > Community כדי לראות איך הפרויקט שלך משווה לסטנדרטים קהילתיים מומלצים.

הנה כמה דברים שיכולים לשפר את המאגר שלך ב-GitHub:

  • תיאור. האם הוספת תיאור לפרויקט שלך?
  • README. האם הוספת README? GitHub מספק הנחיות לכתיבת README.
  • הנחיות לתרומה. האם לפרויקט שלך יש הנחיות לתורמים?
  • קוד התנהגות. האם יש לפרויקט קוד התנהגות?
  • רישיון. אולי הכי חשוב, האם יש לפרויקט רישיון?

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

קבצי README, למרות שהם דורשים זמן להכנה, לעיתים קרובות מוזנחים על ידי מנהלים עסוקים. האם תוכל למצוא דוגמה ל-README במיוחד תיאורי? הערה: ישנם כלים שיעזרו ליצור README טובים שאולי תרצה לנסות.

משימה: מיזוג קוד

מסמכי תרומה עוזרים לאנשים לתרום לפרויקט. הם מסבירים אילו סוגי תרומות אתה מחפש ואיך התהליך עובד. תורמים יצטרכו לעבור סדרת שלבים כדי להיות מסוגלים לתרום למאגר שלך ב-GitHub:

  1. פיצול המאגר שלך. סביר להניח שתרצה שאנשים יפצלו את הפרויקט שלך. פיצול פירושו יצירת עותק של המאגר שלך בפרופיל GitHub שלהם.
  2. שכפול. משם הם ישכפלו את הפרויקט למחשב המקומי שלהם.
  3. יצירת ענף. תרצה לבקש מהם ליצור ענף עבור העבודה שלהם.
  4. מיקוד השינוי באזור אחד. בקש מהתורמים להתרכז בתרומות שלהם בדבר אחד בכל פעם - כך הסיכויים שתוכל למזג את העבודה שלהם גבוהים יותר. דמיין שהם כותבים תיקון באג, מוסיפים תכונה חדשה ומעדכנים כמה בדיקות - מה אם אתה רוצה, או יכול ליישם רק 2 מתוך 3, או 1 מתוך 3 שינויים?

דמיין מצב שבו ענפים הם קריטיים במיוחד לכתיבה ושחרור קוד טוב. אילו מקרים שימושיים אתה יכול לחשוב עליהם?

הערה, היה השינוי שאתה רוצה לראות בעולם, ויצור ענפים גם עבור העבודה שלך. כל התחייבות שתבצע תתבצע על הענף שאתה כרגע "checked out" אליו. השתמש ב-git status כדי לראות באיזה ענף אתה נמצא.

בוא נעבור על תהליך העבודה של תורם. נניח שהתורם כבר פיצל ו_שכפל_ את המאגר כך שיש לו מאגר Git מוכן לעבודה במחשב המקומי שלו:

  1. יצירת ענף. השתמש בפקודה git branch כדי ליצור ענף שיכיל את השינויים שהם מתכוונים לתרום:

    git branch [branch-name]
    
  2. מעבר לענף העבודה. עבור לענף שצוין ועדכן את ספריית העבודה עם git switch:

    git switch [branch-name]
    
  3. בצע עבודה. בשלב הזה תרצה להוסיף את השינויים שלך. אל תשכח לספר ל-Git על כך עם הפקודות הבאות:

    git add .
    git commit -m "my changes"
    

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

  4. שלב את העבודה שלך עם הענף main. בשלב מסוים סיימת לעבוד ואתה רוצה לשלב את העבודה שלך עם זו של הענף main. הענף main עשוי להשתנות בינתיים, אז ודא שאתה קודם מעדכן אותו לגרסה האחרונה עם הפקודות הבאות:

    git switch main
    git pull
    

    בשלב הזה תרצה לוודא שכל קונפליקטים, מצבים שבהם Git לא יכול בקלות לשלב את השינויים, יקרו בענף העבודה שלך. לכן, הרץ את הפקודות הבאות:

    git switch [branch_name]
    git merge main
    

    זה יביא את כל השינויים מ-main לענף שלך, ובתקווה תוכל פשוט להמשיך. אם לא, VS Code יראה לך איפה Git מבולבל ואתה פשוט תשנה את הקבצים המושפעים כדי לציין איזה תוכן הוא המדויק ביותר.

  5. שלח את העבודה שלך ל-GitHub. שליחת העבודה שלך ל-GitHub פירושה שני דברים. דחיפת הענף שלך למאגר שלך ואז פתיחת PR, Pull Request.

    git push --set-upstream origin [branch-name]
    

    הפקודה לעיל יוצרת את הענף במאגר המפוצל שלך.

  6. פתח PR. לאחר מכן, תרצה לפתוח PR. תעשה זאת על ידי ניווט למאגר המפוצל ב-GitHub. תראה אינדיקציה ב-GitHub שבה הוא שואל אם אתה רוצה ליצור PR חדש, תלחץ על זה ותועבר לממשק שבו תוכל לשנות את כותרת הודעת ההתחייבות, לתת לה תיאור מתאים יותר. עכשיו מנהל המאגר שפיצלת יראה את ה-PR הזה ו_בתקווה_ יעריך ו_ימזג_ את ה-PR שלך. עכשיו אתה תורם, כל הכבוד :)

  7. נקה. נחשב לנוהג טוב לנקות אחרי שמיזגת בהצלחה PR. תרצה לנקות גם את הענף המקומי שלך וגם את הענף שדחפת ל-GitHub. קודם כל, בוא נמחק אותו מקומית עם הפקודה הבאה:

    git branch -d [branch-name]
    

ודא שאתה נכנס לדף GitHub של הריפו המפוצל הבא ומסיר את הענף המרוחק שדחפת אליו.

Pull request נראה כמו מונח מוזר, כי בעצם אתה רוצה לדחוף את השינויים שלך לפרויקט. אבל המתחזק (בעל הפרויקט) או צוות הליבה צריכים לשקול את השינויים שלך לפני שהם ממוזגים עם הענף "הראשי" של הפרויקט, כך שבעצם אתה מבקש החלטה על שינוי מהמתחזק.

Pull request הוא המקום להשוות ולדון בהבדלים שהוכנסו לענף עם ביקורות, הערות, בדיקות משולבות ועוד. Pull request טוב עוקב פחות או יותר אחרי אותם כללים כמו הודעת commit. ניתן להוסיף התייחסות לבעיה במעקב הבעיות, כאשר העבודה שלך למשל פותרת בעיה. זה נעשה באמצעות # ואחריו מספר הבעיה שלך. לדוגמה #97.

🤞מקווים שכל הבדיקות יעברו ובעלי הפרויקט ימזגו את השינויים שלך לפרויקט🤞

עדכן את הענף המקומי הנוכחי שלך עם כל ה-commit החדשים מהענף המרוחק המתאים ב-GitHub:

git pull

איך לתרום לקוד פתוח

ראשית, בוא נמצא ריפו ב-GitHub שמעניין אותך ושאליו תרצה לתרום שינוי. תרצה להעתיק את התוכן שלו למחשב שלך.

דרך טובה למצוא ריפואים ידידותיים למתחילים היא לחפש לפי התג 'good-first-issue'.

העתקת ריפו מקומית

יש כמה דרכים להעתיק קוד. אחת מהן היא "לשכפל" את התוכן של הריפו, באמצעות HTTPS, SSH, או באמצעות GitHub CLI (ממשק שורת הפקודה).

פתח את הטרמינל שלך ושכפל את הריפו כך: git clone https://github.com/ProjectURL

כדי לעבוד על הפרויקט, עבור לתיקייה הנכונה: cd ProjectURL

ניתן גם לפתוח את כל הפרויקט באמצעות Codespaces, עורך הקוד המובנה/סביבת הפיתוח בענן של GitHub, או GitHub Desktop.

לבסוף, ניתן להוריד את הקוד בתיקייה מכווצת.

כמה דברים מעניינים נוספים על GitHub

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

לפרויקטים יש מעקב בעיות, בדרך כלל ב-GitHub בלשונית "Issues" אלא אם צוין אחרת, שם אנשים דנים בבעיות הקשורות לפרויקט. ולשונית Pull Requests היא המקום שבו אנשים דנים ומבקרים שינויים שנמצאים בתהליך.

ייתכן שלפרויקטים יש גם דיונים בפורומים, רשימות תפוצה או ערוצי צ'אט כמו Slack, Discord או IRC.

הסתכל סביב הריפו החדש שלך ב-GitHub ונסה כמה דברים, כמו עריכת הגדרות, הוספת מידע לריפו שלך ויצירת פרויקט (כמו לוח Kanban). יש הרבה מה לעשות!


🚀 אתגר

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

חידון לאחר ההרצאה

חידון לאחר ההרצאה

סקירה ולימוד עצמי

קרא עוד על תרומה לתוכנה בקוד פתוח.

דף עזר של Git.

תרגל, תרגל, תרגל. ל-GitHub יש מסלולי לימוד מצוינים זמינים דרך skills.github.com:

תמצא גם קורסים מתקדמים יותר.

משימה

השלם את הקורס השבוע הראשון ב-GitHub


כתב ויתור:
מסמך זה תורגם באמצעות שירות תרגום מבוסס בינה מלאכותית Co-op Translator. למרות שאנו שואפים לדיוק, יש להיות מודעים לכך שתרגומים אוטומטיים עשויים להכיל שגיאות או אי דיוקים. המסמך המקורי בשפתו המקורית צריך להיחשב כמקור סמכותי. עבור מידע קריטי, מומלץ להשתמש בתרגום מקצועי על ידי אדם. איננו נושאים באחריות לאי הבנות או לפרשנויות שגויות הנובעות משימוש בתרגום זה.