ניהול גרסאות, או לא להיות – זאת השאלה
היום נדבר על ניהול גרסאות באמצעות Git בתוך סביבת העבודה של Altium Designer.
Git היא מערכת ניהול גרסאות חינמית הבנויה על קוד פתוח אשר מיועדת להתמודד עם ניהול של פרויקטים באופן נוח ויעיל.
ניהול גרסאות הופך להיות חלק בלתי נפרד מכל תהליך פיתוח, בין אם מדובר בפיתוח של סביבה מכנית, אלקטרונית, תוכנתית ועוד.
אם נתמקד ספציפית באלקטרוניקה, סביר להניח שגם אתם מנהלים גרסאות שונות של קבצי השרטוט, העריכה, ייצור וכו', באופן מסוים. חלקנו עושים זאת באופן ידני (נניח מספור של קבצים בתוך תיקיה, עדיין קיים אך פחות מומלץ), חלק עושים זאת דרך מערכות ייעודיות שקיימות בחברה (לא תמיד מדובר על מערכת מותאמת לסביבה, לדוגמא מערכת PLM שמנהלת את קבצי האלקטרוניקה) ואחרים עושים זאת דרך מערכות מובנות שמתממשקות לסביבת העבודה – מאפשר מעקב נוח, השוואה לגרסאות אחרות וניהול יעיל יותר.
היום נדבר על ניהול גרסאות באמצעות Git בתוך סביבת העבודה של Altium Designer.
Git היא מערכת ניהול גרסאות חינמית הבנויה על קוד פתוח אשר מיועדת להתמודד עם ניהול של פרויקטים באופן נוח ויעיל.
בעבר הצגנו אפשרות של שימוש ומימוש של ניהול גרסאות בסביבת האלקטרוניקה בטכנלוגיית SVN (קישור לוובינר), שמובנית ב- Altium. SVN היא עדיין טכנלוגיה שימושית (שנחשבת מעט ישנה), אבל היום ניתן לראות עלייה בשימוש ב- Git בגלל שקהילת ה- SVN קטנה, מעבר לכך, ישנן לא מעט סביבות נוחות (עם GUI מתקדם) לעבודה עם Git.
נעבור על מספר שלבים הכוללים בנייה, חיבור ומימוש של Git בפרויקטים שלכם בסביבת Altium.
***חשוב לציין כי ניתן לנהל גרסאות ב- Git דרך פלטפורמת Altium 365 (קיימת גישה לכל לקוחות Altium) באמצעות הפעלה קלה ופשוטה. ההסבר הבא יציג כיצד ניתן להשתמש ב- Git ללא שימוש בפלטפורמת – Altium 365.
הרשמה, הקמה והתקנה של Git
אז ראשית, יש צורך להרשם באתר של GIT כמשתמש על מנת לייצר סביבה שאליה תוכלו להעלות את הפרויקטים שלכם. קישור להרשמה
לאחר שביצעתם הרשמה תוכלו לייצר Repository לאחסון הפרויקט שלכם (יש לבצע את תהליך הייצור של ה- Repository לכל פרויקט בנפרד)
לאחר ההרשמה, תועברו לעמוד נוסף, שם נלחץ על New
לאחר מכן נגדיר ל- Repository שם, נסמן אותו כפרטי (מאפשר לשלוט במי חשוף למידע) וניצור אותו.
כעת יצרנו את ה- Repository. אנחנו נחזור אליו במשך.
התקנה של מנוע GIT היא חלק נוסף שיש לבצע על מנת שוינדווס יתמוך בפקודות GIT וביכולת שלנו לקשר בין הפרויקט המקומי ל- Repository. קישור להורדה
הוספת פרויקט Altium קיים ל- Git
הוספה של פרויקט קיים לניהול ב- GIT כולל שלושה שלבים עיקריים שעלינו לעשות:
1. יצירת Repository (מאגר) בתוך תיקיית הפרויקט:
אז ראשית נבחר פרויקט שאותו אנו רוצים להכניס לניהול, נכנס אל הנתיב שלו, נלחץ על כפתור ימני בעכבר ובתפריט נבחר, "Git GUI Here"
לאחר מכן נייצר Repository חדש
נבחר את מיקום תיקיית הפרויקט ונראה כי בסיום תתווסף תיקיית .git לפרויקט.
כעת יפתח GUI לעבודה ראשונית עם GIT.
2. הוספת קבצי הפרויקט לבקרת הגרסאות של Git:
ניתן לראות כי לאחר יצירת ה- Repository נפתח חלון חדש המאפשר להגדיר את הקבצים השונים בניהול של GIT. נבחר את כלל הקבצים (ניתן כמובן לבחור אילו קבצים תרצו לנהל או לא) ולאחר מכן נעביר אותם ל- stage to commit.
במצב זה הקבצים יהיו מוכנים לפעולת commit.
המשמעות היא שאם נפתח אותם בAltium נראה אינדקציה לכך שהם מוכנים לפעולת Commit – יצירת גרסה.
3. הגדרת הקישור למאגר ה- Git המרוחק (והמשותף) באינטרנט:
השלב האחרון של חלק זה הוא חיבור אל מאגר ה- git על ידי הוספת לינק לחיבור. את הקישור ניתן להעתיק מתוך ה- Repository שיצרנו בלחיצה על כפתור ההעתקה כפי שמופיע בתמונה הבאה:
כעת ניתן להכנס לממשק של GIT ולהוסיף את הפרויקט
לאחר לחיצה על Add והמתנה של מספר שניות (תלוי בגודל הקבצים) נראה אינדיקציה לכך שפעולת הקישור נעשתה בהצלחה
היכרות עם כלי עבודה בסיסיים לניהול גרסאות Git בתוך Altium
על מנת לראות כי הקבצים הועלו ל- Repository נצטרך לבצע פעולה שנקראית Push.
בפועל כאשר נבצע Commit המערכת תשמור את השינויים ב- Repository המקומי שיצרנו תחת תיקיית הפרויקט. בעת לחיצה על Push השינויים יועלו לשרת\מאגר שיצרנו באינטרנט קודם לכן.
אז ראשית, נפתח את הפרויקט המנוהל ב- Altium ונבצע commit
יפתח חלון שבו נוכל לבצע Commit and Push. המידע יתעדכן באופן מקומי וגם באינטרנט.
ניתן גם לבצע Commit בלבד ואז תתבצע שמירה מקומית למאגר.
ביצוע Commit בלבד יכול להיות נוח כאשר אנחנו מנותקים מהאינטרנט ורוצים לשמור מספר גרסאות. בעצם פעולת ה- Commit תשמור את כל הגרסאות באופן מקומי וכאשר יהיה לנו חיבור לאינטרנט, נוכל לעשות Push לכל אותן גרסאות שיצרנו.
לאחר שנבצע Push נראה אינדיקציה לכך שהפרויקט מנוהל.
הטבלה הבאה מסבירה מה המשמעות של כל אייקון שמוצג לצד מסמכי הפרויקט השונים כאשר עובדים עם GIT בתוך Altium.
*כלים אלו מוצגים גם בוובינר שעשינו בעבר על ניהול גרסאות עם SVN.
לדוגמא, כאשר אעבוד על הפרויקט שלי ואבצע שמירה של הקובץ, המערכת תציג אייקון של עיגול אדום שמסמן שביצעתי שמירה מקומית אך לא העליתי אותה לשרת.
אני יכול להמשיך ולבצע שמירות מקומיות אבל כאשר ארצה לשמור גרסה בשרת ה- GIT, אצטרך לבצע Commit and Push לקובץ (או לכל הפרויקט).
Commit
Push
הוספת משתמש נוסף לעבודה משותפת על אותו הפרויקט
ישנם מספר שלבים קצרים על מנת להוסיף משתמש נוסף שיעבוד במקביל אלינו על אותו הפרויקט. ראשית על המשתמש הנוסף לבצע את הליך ההרשמה ו-ההתקנה של מנוע Git במחשב שלו. כעת על מנהל ה- Repository לתת לו גישה למשיכה ושינוי הקבצים. נעשה זאת בלחיצה על Settings, לאחר מכן Invite, נזין את המייל שלו ונשלח.
כעת כל שעל המשתמש הנוסף לעשות הוא לבצע Clone לאותו ה- Repository שכולל את הפרויקט.
ראשית, עליו להכנס לקישור ההזמנה שקיבל במייל. לאחר מכן יתחבר ל- Repository ויבצע העתקה של הכתובת כפי שמופיע בתמונה הבאה.
כעת הוא ילחץ על כפתור ימני בעכבר (בכל מקום במחשב) על מנת לפתוח את תפריט ה- GIT
יבחר באופציה של Clone
ויזין את הנתונים. לבסוף ילחץ על Clone
לאחר שהקבצים יורדו אל המחשב, נראה אינדיקציה לסיום התהליך. המשתמש יוכל להכנס לנתיב עם קבצי הפרויקט שלו, לפתוח אותם באלטים ולעבוד במקביל למשתמשים אחרים ששותפו.
בתחתית הפוסט מצורפים שני וובינרים הכוללים הסבר על תהליך הבנייה של GIT (כולל שימוש בתוך Altium) – ההגדרה שם מעט שונה מהצורה שהצגנו כאן, אך בפועל זה יביא לאותה תוצאה. בנוסף קיים וובינר שמציג הסבר ל- Altium 365, שגם מאפשר ניהול גרסאות נוח.
אז במה תבחרו, SVN ?GIT שהקמתם? GIT ב- Altium 365? בעיני כל אופציה שתבחרו תהיה טובה כל עוד אתם מנהלים את הקבצים עם מערכת ניהול גרסאות בצורה שמתאימה לכם ולארגון.
אם יש לכם שאלות בנושא מוזמנים לפנות אלינו.
קישור לוובינר של Robert Feranec שמסביר על מימוש GIT ב- Altium
קישור לוובינר בנושא Altium 365