ניהול גרסאות Source Control ופרויקטים בסביבת MATLAB
הצוות שלכם עובד על קבצים בתיקייה משותפת בכונן? יש לכם עשרות קבצים של אותה גרסה עם שמות שונים? אתם ממיינים את הקבצים לפי מועד השינוי שלהם כדי לחפש את הגרסה האחרונה? המאמר הזה בשבילכם!
עם מערכת לניהול גרסאות, כל הצוות יכול לעבוד באופן חופשי לחלוטין על כל קובץ בכל עת. לאחר מכן, המערכת מאפשרת למזג את כל השינויים לגרסה אחידה. בצורה זו, אין יותר ספק מה הגרסה האחרונה של קובץ או של הפרויקט כולו – כל הקבצים הרלוונטיים נמצאים במקום משותף ומרכזי – במערכת ניהול הגרסאות שלכם.
במאמר זה נסביר איך ניתן לעבוד עם מערכות לניהול גרסאות ב-MATLAB. מערכות אלו קיימות החל מגרסה R2014b והינן חלק מהמערכות השימושיות ביותר בעבודה השוטפת. MATLAB משתלבת עם שתי מערכות בקרה עיקריות: (Subversion (SVN ו-Git, וכן כוללת כלי שימושי לניהול פרויקטים.
מה זה Source Control ?
ניהול גרסאות מתייחס למעקב וניהול שינויים בקוד, דבר שמבטיח שהמפתחים עובדים תמיד על הגרסה הנכונה של קוד המקור. ניתן לשלב את היכולת הזו עם MATLAB על מנת לייעל את העבודה השוטפת שלכם. באפשרותכם לבצע פעולות כגון עדכון, מיזוג שינויים והצגת היסטוריית הגרסאות ישירות מהתיקייה הנוכחית.
מה זה Git ומה זה GitHub?
אחת ממערכות בקרת הגרסאות הפופולריות ביותר כיום היא Git. זוהי מערכת ששומרת "תמונות" (גרסאות) שונות של כל השינויים שביצעתם בקוד המקור לאורך זמן. דבר זה מאפשר "לחזור אחורה בזמן" אם יש צורך לשחזר קבצים או שינויים בקבצים שלכם, לדוגמה.
GitHub הינו שירות מבוסס אינטרנט לניהול גרסאות באמצעות Git. GitHub זו פלטפורמה שבה ניתן לארח ולשתף את הפרויקטים שלכם עם מפתחים אחרים. ניתן לשתף פעולה על שינויים בקוד של אותו פרויקט דרך ממשק משתמש מבוסס Web.
במאמר הזה נדגים איך ניתן לעבוד עם הפלטפורמות הנ"ל יחד עם MATLAB, אך כפי שצוין ניתן לעבוד גם עם פלטפורמות אחרות.
איך עובדים עם ניהול גרסאות ב-MATLAB?
לפני שתוכלו להתחיל לעבוד ב-MATLAB, אתם צריכים להתקין את מערכת ניהול הגרסאות על המחשב שלכם. ניתן למצוא את הוראות ההתקנה בלינק הזה.
התקנתם? אתם מוכנים להעביר את הקבצים תחת ניהול גרסאות!
לצורך כך, יש לפתוח את MATLAB, ללחוץ קליק ימני על התיקייה הנוכחית, לבחור באופציה “Source Control” ולאחר מכן “Manage files”.
לאחר הלחיצה, יופיע חלון עם 3 שדות:
- Source Control Integration – ניתן לבחור בין Git ל-SVN. ניתן לעבוד עם מערכות אחרות אך האינטגרציה תדרוש הגדרה ידנית – ניתן למצוא מידע בנושא בקישור הזה.
- Repository Path – בשדה הזה, יש לבחור איפה הקבצים שלכם נמצאים. אם אתם יודעים את מיקום התיקייה שלכם, פרטו את הנתיב בשדה הזה. אם לא, לחצו על “Change” ותוכלו לבחור בין לחפש את התיקייה (באמצעות לחיצה על אייקון של תיקייה), לבין יצירת Repository חדש (ע"י לחיצה על אייקון +) אם תרצו להתחיל לעבוד על פרויקט שאינו קיים כעת.
שימו לב! אם אתם משתמשים ב-GitHub, יש להכניס כתובת עם סיומת ".git".
- Sandbox – בשדה הזה אתם צריכים לבחור תיקייה ריקה אליה תרצו לייבא את הקבצים או את הפרויקט שלכם. כלומר, תיקייה במחשב שבה תוכלו לעבוד באופן מקומי על הקבצים.
מיד לאחר לחיצה על כפתור Retrieve, יתווספו לכם סימנים שונים:
- עיגול ירוק – הקובץ העדכני שמור במערכת ניהול גרסאות.
- ריבוע כחול – הקובץ נמצא במערכת ניהול גרסאות אך קיימים עדכונים מקומיים לקובץ שטרם נשמרו ב-Repository.
- עיגול לבן – הקובץ אינו תחת ניהול גרסאות.
כעת, ניתן לבצע כמה פעולות לאחר קליק ימני על התיקייה:
נעבור יחד על האופציות החשובות ביותר:
- View and Commit Changes – ניתן לצפות בשינויים ולעדכן אותם באמצעות Commit.
- Pull – ניתן למשוך את הגרסה האחרונה ששמורה ב-Repository. מומלץ תמיד לבצע את הפעולה הזאת לפני העבודה על הקבצים כדי לעבוד על הקבצים העדכניים ביותר.
- Push – ניתן "לדחוף" את השינויים המקומיים ל-Remote repository.
- Branches – ניתן לצפות ולשנות את הענף בו אנחנו עובדים.
MATLAB Projects
בגרסת R2019b, התווסף ל- MATLAB כלי נוסף שמשתלב עם ה-Source Control על מנת לייעל את העבודה בצוות – MATLAB Projects.
פרויקט ב-MATLAB הוא סביבה בה תוכלו לנהל קבצי MATLAB, קבצי נתונים, דרישות, דו"חות, גיליונות אלקטרוניים, בדיקות וקבצים שנוצרו יחד במקום אחד. פרויקטים מאפשרים לכם:
- למצוא את כל הקבצים ששייכים לפרויקט שלכם.
- ליצור דרכים סטנדרטיות להגדרה ולכיבוי של סביבת MATLAB בכל צוות.
- ליצור, לאחסן ולגשת בקלות לפעולות נפוצות באמצעות קיצורים.
- להציג ולתייג קבצים ששונו בתהליך של ביקורת עמיתים.
- לשתף פרויקטים באמצעות אינטגרציה מובנית עם (Git, Subversion (SVN, או באמצעות כלי ניהול גרסאות.
למידע נוסף על עבודה עם MATLAB Projects, אתם מוזמנים לצפות בוובינר בקישור הזה.