גיטהאב Codespaces וזה

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

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

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

על Codespaces וכאלה

Codespaces היא סביבת פיתוח מקוונת, אשר נמצאת בפלטפורמה של GitHub ומופעלת על ידי Visual Studio Code, ומכאן מאפשרת לפתח ולכתוב קוד בענן.

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

Codespaces כולל את כל מה שצריך לטובת פיתוח החל מפיתוח מול מאגר ספציפי, וכולל עורך טקסט עם הדגשת תחביר, השלמה אוטומטית,  כלי ניפוי באגים, עבודה עם פקודות Git, טעינת שפות הפיתוח המועדפות, ובנוסף לכך ניתן גם לעבוד עם סיומות קוד של Visual Studio וסיומות צד שלישי בכדי להוסיף פונקציונליות נוספת.

טיפ: Codespaces זמין עבור חשבונות משתמשים המבוססים על החשבונות הבאים: GitHub Free או GitHub Pro

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

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

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

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

ddc01 screenshot 67

דגשים נוספים של Codespaces

העבודה עם codespaces היא למעשה שילוב של VSCode יחד עם גיטהאב ולכן ההבדלים בין עבודה מקומית של VSCode לבין codespace אינם גדולים.

  • כל מפתח יכול ליצור codespace אחד או יותר לכל מאגר ציבורי, או לכל מאגר פרטי שנמצא בחשבון המשתמש שלו
  • במהלך גרסת הבטא, מאגרים פרטיים מסוג Enterprise או כל מאגרים בבעלות ארגון הדורש כניסה יחידה של SAML אינם נתמכים
  • כל codespace שנוצר הוא זמין רק עבור אותו משתמש, ואף משתמש אחר אינו יכול לעבוד על אותו codespace
  • כל codespace משויך לענף ספציפי של מאגר, ולכן ניתן ליצור codespace אחד או יותר בכל מאגר או אפילו לכל Branch
  • לכל חשבון משתמש יש מגבלה של שני codespace במהלך תקופה הבטא, ולכן אם הגעת למגבלה וברצונך ליצור codespace חדש, תחילה יש למחוק codespace ישן יותר
  • לאחר פתיחת codespace ניתן לפתח באמצעות התכונות המוכרות של VSCode, כגון עריכת טקסט, איתור באגים ופקודות Git למינהם.
  • ישנה אפשרות להתחבר אל codespace ישירות מתוך VSCode מקומי
  • ניתן ליצור תצורת ברירת מחדל של codespace עבור המאגר שלך שקובעת את הסביבה של כל codespace חדש שכל חשבון יוצר עבור מאגר זה, כלומר תצורה אחת לכלל המאגרים וללא הצורך בפעולות נוספות
  • סביבת העבודה מאפשרת תצורת פיתוח עם container שיכול לכלול מסגרות, כלים, הרחבות והעברת יציאות
  • ניתן לבצע התאמה אישית סביבת codespace לכל codespace אשר יוצרים בחשבון גיטהאב, והתאמה אישית יכולה לכלול העדפות של מעטפת, הרחבות וכלים נוספים
  • ניתן לעבוד עם Visual Studio מקומי מול Codespaces
  • ניתן למגרץ סביבות עבודה מקומיות של VSCode או של Visual Studio

טיפ: בנוסף לשך ישנה אפשרות לשמור תצורה ברמת גיטהאב ולסנכרן כל מאגר חדש או קיים תוך דקות ולקבל את התצורה הנדרשת

חשוב להדגיש כי במהלך הבטא ישנם מגבלות מסוימות:

  • לקבלת החוויה הטובה ביותר עם Codespaces, מומלץ להשתמש בדפדפן מבוסס כרום, כמו Google Chrome או Microsoft Edge.
  • רק גודל יחיד של codespace זמין.
  • ישנה תמיכה של לינוקס conainer בלבד.
  • codespace אינו ניתן לחידוש מלא.
  • תהליכים שהופעלו בזמן עצירת codespace לא יופעלו מחדש.

יצירת Codespace

ישנם מספר דרכים ליצירת והגדרת Codespaces והיצירה של Codespaces יכולה להיעשות ע”י יצירה מול Branch ספציפי לטובת פיתוח בענן בלבד.

ניתן ליצור Codespaces לכל מאגר ציבורי או פרטי אשר מכיל תוכן כלשהוא, למשל קובץ Readme, והיצירה נעשית ע”י חשבון המשתמש שהוא OWNER של המאגר, וחשבון אחר לא יכול לעבוד באותו Codespaces.

לאחר יצירת Codespaces ישנו שיוך לענף ספציפי של מאגר, וניתן ליצור Codespaces אחד בכל מאגר או אפילו לכל Branch, ולכן הסביבה של Codespaces מתבססת על תצורת המאגר.

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

יצירת Codespaces היא פעולה פשוטה ויכולה להיעשות לפי מספר אפשרויות ושלבים שונים ופשוטים:

אפשרות ראשונה היא יצירת Codespaces מתוך ממשק Codespaces עצמו ובחירת מאגר ספציפי

Codespace

Codespace

אפשרות שניה היא יצירת Codespaces מתוך המאגר עצמו ע”י בחירת המאגר, בחירת Branch ספציפי, בחירת Open with Codespaces מתוך אפשרות Code.

6592d screenshot 68

לאחר יצירת codespace ממשיכים אל הממשק קוד עצמו ומשם מתחילים ליצור או לסנכרן את הפרופיל עם ההגדרות הקיימות.

כך נראה סנכרון של פרופיל קיים בממשק codespaces

6ce1f screenshot 65 988a3 screenshot 64

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

מאמרים נוספים על Codespaces יעלו בקרוב.

מאמרים נוספים בנושא GitHub או VSCode

You may also like...

1 Response

  1. 25/11/2020

    […] גיטהאב Codespaces מאיפה מתחילים התמקד באפשרויות המגוונות של גיטהאב Codespaces, הבנה מהו […]

השאר תגובה

%d בלוגרים אהבו את זה: