ווטסאפ - לינוקס, BSD, קוד פתוח ותוכנה חופשית בעברית. Whatsup - Linux, BSD, open source and free software in Hebrew

 
 
  כניסת חברים · רישום · שכחתי סיסמה  
tux the penguin

quick_linkמערכות ניהול גרסאות בלינוקס: סקירה השוואתית

published at 01/02/2004 - 12:23 · ‏פורסם dittigas · ‏tags פיתוח · שלח לחברידידותי למדפסת
פיתוח מערכת ניהול גרסאות חיונית בכל פרוייקט בו מעורבים יותר ממפתח יחיד. המערכת הנפוצה ביותר עבור לינוקס היא CVS, והיא מאפשרת אחסון קבצים במאגר מרכזי והוצאה ועדכון של קבצים במאגר מבלי שהמפתחים יהיו מוטרדים מקונפליקטים אשר עשויים להיווצר במהלך העדכון, לעיתים בו זמנית, שמבצעים מפתחים אחרים באותם קבצים. המערכת מסוגלת למזג את השינויים באופן שקוף והיא מאפשרת למפתחים שעובדים בסביבה מבוזרת באינטרנט (או ברשת הארגונית) לשתף פעולה בצורה יעילה למדי.

הסקירה ההשוואתית הבאה של שלומי פיש (The New Breed of Version Control Systems), באתר ONLamp.com של אוריילי, מרחיבה בנושא מערכות ניהול גרסאות (פתוחות וסגורות) בלינוקס כמו CVS, Subversion, Arch, OpenCM, BitKeeper ומתמקדת בעיקר ביתרונות ובמגבלות שלהם.

סקירה השוואתית כללית אפשר למצא גם במאמר: Better SCM Initiative : Comparison ורשימה של פתרונות CVS עבור לינוקס, כאן: Source Code Management on Linux. כמו כן, אתר הפינגווין מספק מדריך מבוא להקמת שרת ניהול גרסאות בשימוש ארגוני כללי.

הערה: תודה לליאור על הקישור
 

קישורים רלוונטיים

· עוד על פיתוח
· חדשות מאת dittigas


הסיפור הנקרא ביותר בנושא פיתוח:
הטבלה המחזורית של האופרטורים

מערכות ניהול גרסאות בלינוקס: סקירה השוואתית | כניסה / יצירת מנוי חדש | 11 תגובות
סף חסימה
  
ההערות הינן מטעם כותביהן. אין צוות האתר לוקח אחריות על תוכנן
Re: מערכות בקרת גרסאות בלינוקס: סקירה השוואתית (ניקוד: 1)
ע"י shlomif ב 01/02/2004 - 18:35

(מידע על משתמש | שלח הודעה) http://t2.technion.ac.il/~shlomif/

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

כמו-כן, ניתן למצוא תגובות נוספות למאמר ב הפניה שנעשתה באתר OSnews.


[ השב לזאת ]

Re: מערכות ניהול גרסאות בלינוקס: סקירה השוואתית (ניקוד: 1)
ע"י dittigas (dittigas@whatsup.org.il)
ב 02/02/2004 - 01:07
(מידע על משתמש | שלח הודעה) http://
אתה יכול להרחיב טיפה לגבי למה באמת הפיתוח של הקרנל נשאר עם BitKeeper, האם פונקציונאלית יש פתרון חליפי הולם מבוסס קוד פתוח? כמו כן, אם הבנתי נכון מניסיון הפריצה האחרון הקרנל בעצם מנוהל במערך כפול של מערכות ניהול גרסאות לא?

[ השב לזאת ]

Re: מערכות ניהול גרסאות בלינוקס: סקירה השוואתית(ניקוד: 1)
ע"י bombadil ב 02/02/2004 - 11:43
(מידע על משתמש | שלח הודעה) http://
לא בדיוק.
ממה שהבנתי, יש BitKeeper שהוא הניהול הגרסאות הרשמי, ויש CVS שהוא רק mirror שלו לטובת הציבור.
אשמח לשמוע תיקון אם אני טועה.

[ השב לזאת ]

Re: מערכות ניהול גרסאות בלינוקס: סקירה השוואתית(ניקוד: 1)
ע"י shlomif ב 02/02/2004 - 12:31
(מידע על משתמש | שלח הודעה) http://t2.technion.ac.il/~shlomif/

לא, אתה צודק. BitKeeper הוא מה שטורבלדס משתמש וכן אנשים אחרים בצוות שלו, והקוד כפי שהוא משוחרר לציבור נלקח משם. CVS הינו מירור שנעשה על-הסמך השינויים שנעשו במאגר ה-BitKeeper. יש בנוסף גם מראה של Subversion שמבוססת על המראה של CVS. (ובכך היא תת-אופטימלית משום שיש דברים שהולכים לאיבוד עקב כך).


[ השב לזאת ]

Re: מערכות ניהול גרסאות בלינוקס: סקירה השוואתית(ניקוד: 1)
ע"י shlomif ב 02/02/2004 - 12:22
(מידע על משתמש | שלח הודעה) http://t2.technion.ac.il/~shlomif/

הסיבה שניהול הגלעין של לינוקס נעשה ב-BitKeeper הוא משום שלינוס טורבלדס החליט להשתמש בו, מה שגרם למספר גדול של מפתחי קרנל נוספים להשתמש בו כדי שיוכלו לשתף איתו פעולה. הבעייה של טורבלדס הוא שהוא צנטרליסט ומוכן שרק הוא יוכל לאשר סופית את השינויים בקרנל. אי-לכך, מערכות ניהול גרסאות שאינן מבוזרות (לדוגמא CVS או Subversion) אינן מתאימות לפיתוח הקרנל.

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

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


[ השב לזאת ]

Re: מערכות ניהול גרסאות בלינוקס: סקירה השוואתית(ניקוד: 0)
ע"י פינגווין אנונימי ב 02/02/2004 - 21:22
אני לא יודע למה אני טורח, שלומי, אבל זו לא בעייה של לינוס, וגם לא של המודל. לינוס הוכיח שלינוס, והמודל שלו, _עובדים_. זה שגם מודלים אחרים לכאורה עובדים נחמד אבל לחלוטין לא רלוונטי.

[ השב לזאת ]

Re: מערכות ניהול גרסאות בלינוקס: סקירה השוואתית(ניקוד: 0)
ע"י פינגווין אנונימי ב 02/02/2004 - 21:22
שכחתי לחתום... מולי האנטי-אנונימי.

[ השב לזאת ]

Re: מערכות ניהול גרסאות בלינוקס: סקירה השוואתית(ניקוד: 1)
ע"י shlomif ב 03/02/2004 - 10:42
(מידע על משתמש | שלח הודעה) http://t2.technion.ac.il/~shlomif/

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

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

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

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


[ השב לזאת ]

Re: מערכות ניהול גרסאות בלינוקס: סקירה השוואתית(ניקוד: 0)
ע"י פינגווין אנונימי ב 03/02/2004 - 11:39
הראייה שלך של ההיסטורה פשוט לא נכונה, ונשאבה כנראה ממקורות משניים. אבל באמת שיש לי דברים יותר טובים לעשות מלהתווכח איתך. מי שרוצה לדעת מה באמת קרה, טוב יעשה אם יקרא את ה- archives של lkml.

ולגבי login - לא.

-- מולי.

[ השב לזאת ]

Re: מערכות ניהול גרסאות בלינוקס: סקירה השוואתית(ניקוד: 1)
ע"י shlomif ב 07/02/2004 - 16:31
(מידע על משתמש | שלח הודעה) http://t2.technion.ac.il/~shlomif/


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



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



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


[ השב לזאת ]

Re: מערכות ניהול גרסאות בלינוקס: סקירה השוואתית(ניקוד: 0)
ע"י פינגווין אנונימי ב 02/02/2004 - 21:17
הסיבה שלינוס משתמש ב- bitkeeper היא שאין לדעתו פיתרון מקביל מבוסס קוד פתוח. הוא פרגמטיסט, והוא מעדיף לעבוד עם כלי שעושה את העבודה. אפשר להתווכח על זה, אבל זו דעתו. באופן אישי, אני לא עובד עם bitkeeper בגלל הרישיון שלו, אבל אני גם לא לינוס.

-- מולי

[ השב לזאת ]