איך בוחרים רישיון GitHub ומדוע חשוב לעשות את הבחירה הנכונה? GitHub הוא השירות הגדול ביותר לפיתוח משותף של פרויקטי IT ואירוחם לאחר מכן. בעזרת שירות האינטרנט הזה, מספר בלתי מוגבל של אנשים יכולים לעבוד על פרויקט בבת אחת, כמו גם מכל מקום בעולם. ל-GitHub יש גם מערכת ניהול או בקרה המאפשרת לך לצפות ולשלוט לחלוטין בכל השינויים שבוצעו על ידי מפתחים לאורך זמן, והיא גם מאפשרת לך לחזור למצב שהתרחש לפני השינויים.
אבל בפשטות, GitHub היא מה שנקרא הרשת החברתית למתכנתים ומפתחים, שבה אתה יכול למצוא, ובהמשך להתאמן על קודים ממפתחים אחרים. אתה יכול גם לאחסן את תיק העבודות שלך ב-GitHub. באופן כללי, GitHub הוא שירות שמתאים גם למפתחים מתחילים וגם למתכנתים מנוסים. עם זאת, למשתמשים בשירות זה עשויות להיות לפעמים כמה שאלות לגבי בחירת רישיון, מכיוון שהבחירה שלהם שם די מגוונת.
מהו רישיון GitHub
רישיון הוא מסמך מיוחד אשר הוקם על ידי טופס המדינה ומאפשר לעסוק בסוג מסוים של פעילות יזמית, אשר ללא תקלות דורשת התייחסות מיוחדת מצד המדינה. אבל, לרוב, בפועל, נעשה שימוש רק בהסכמי רישיון מקוצרים או בהסכמים הקובעים מתן רישיונות במשפט הפרטי. ככלל, הרישיון שואף רק למטרה אחת, אך המטרה החשובה ביותר היא הסכם חובות וזכויות בין נותן הרישיון לבעל הרישיון. החובות והזכויות הללו יכולות להיות כל דבר, אבל רק במסגרת החוק. דוגמה בולטת היא שמעניק הרישיון עשוי לדרוש את שמו של בעל זכויות היוצרים בעת השימוש ביצירה על ידי בעל הרישיון. או, למשל, לאפשר העתקת עבודה, אבל לאסור לחלוטין כל שינוי בו. או, כדי להוציא דרישות כאלה שהיצירה תצא באותם תנאים בדיוק כמו המקור, וכן הלאה, יש די הרבה דוגמאות של הצגת תנאים שונים.
אבל, כמו כן, אסור לשכוח שהרישיון מגן על זכויותיו של לא רק של נותן הרישיון, אלא גם של בעל הרישיון. מאחר ובו ניתן לראות ולקרוא בבירור את כל תנאי השימוש ביצירה, ועל כן אין לו צורך לחשוש מכך שמעניק הרישיון ידרוש לפתע ניכויים כלשהם או כל פיצוי אחר בגין השימוש ביצירתו.
אם אתה מסרב להשתמש ברישיון המשויך ליצירה, זכויות היוצרים עדיין חלות בהתאם לכללים המשפטיים התקפים במדינה מסוימת. במילים פשוטות, היעדר רישיון לא מרמז בשום אופן שמחברים אחרים יכולים להשתמש בפרויקט הזה בכל דרך שהם רוצים. הכל בדיוק הפוך, כי ללא שום רישיון ספציפי, המתכנת בשום מקרה לא מוותר על הזכויות שניתנו בחוק. כמו כן, חשוב לזכור תמיד שהרישיון חולש על כל הזכויות והחובות. זאת על מנת להגן על בעל היצירה מפני ציפיות המשתמש ומה שמשתמעת כל אחריות. אחרי הכל, אף אחד לא רוצה שהקוד שלו יגיע לבית המשפט בשום אופן.
מהי זכויות יוצרים
זכויות יוצרים מופיעות באדם רק כאשר כתוצאה מפעילות אינטלקטואלית הוא יוצר יצירה מסוימת שתהיה ייחודית, אך יחד עם זאת שימושית, למשל, אתה יכול לקחת את הכתיבה של אותה תוכנית. כאשר כל האמור לעיל נעשה, האדם הופך למחבר וכעת יש לו לחלוטין את כל זכויות היוצרים על יצירה זו. כמו כן יש לומר שזכויות יוצרים הן קניין ואינן קניין. ההבדל ביניהם הוא שניתן להעביר זכויות קניין לכל אחד, אך זכויות שאינן בקניין תמיד יישארו רק אצל היוצר בכל מצב. הרי להיות סופר זו זכות בלתי ניתנת להעברה ובלתי ניתנת להסרה.
לשם מה מיועד רישיון קוד פתוח?
זו גם שאלה די פופולרית בקרב מפתחים ומתכנתים מתחילים, מכיוון שהם פשוט לא מבינים למה צריך לצרף רישיון לפרויקטים שלהם, כי בלעדיו הפרויקט יכול להתקיים גם בשקט. עם זאת, זה לא לגמרי נכון, כי אם, למשל, מפתח מתחיל כלשהו כתב איזה קטע קוד חשוב ושימושי למדי, אבל לא הגן עליו ברישיון, אז למשתמשים אחרים יש שאלות. ובדיוק בגלל זה, כשלקוחות מגיעים אליו ורוצים להשתמש בקטע הקוד הזה למטרותיהם המסחריות, הם רואים שלקוד אין שום רישיון ופשוט מסרבים לו. זאת בשל העובדה שחברות פשוט לא ישתמשו בקוד ללא רישיון, כי הן לא צריכות בעיות עם החוק ועורכי הדין.
וזו הסיבה שאפילו הפרויקט הכי שימושי ונוח לעולם לא ייצא לפועל. והמפתח שרצה לקחת את קטע הקוד הזה יצטרך לחפש ולהשתמש באלטרנטיבה, או לשכתב לחלוטין את הקוד שכבר נכתב על ידי המפתח המתחיל קודם לכן. לכן עדיף לוודא מראש שהמתכנת משתמש ברישיון הנכון, והכי חשוב, המתאים. חקירת GitHub בסרטון הדרכה אחד תוך 15 דקות: https://youtu.be/JfpCicDUMKc
איזה רישיון GitHub מתאים בתנאים מסוימים – איך בוחרים?
לא יכולה להיות תשובה מדויקת לשאלה זו, שכן בחירת הרישיון תלויה רק במטרות הפרויקט ובהעדפות האישיות והרצונות של היזם עצמו. כפי שאתה יכול לראות, יש הרבה רישיונות שונים ב-GitHub, והכי חשוב, כולם חינמיים ונמצאים בנחלת הכלל, מה שאומר שכל מתכנת יכול למצוא את רישיון ה-
Open Source שבהחלט יתאים לפרויקט שלו. אבל, הכי חשוב, אסור לנו לשכוח שרישיון קוד פתוח הוא לא רק קוד ללא רישיון. עם קצת מחקר, אתה יכול לאסוף את כל רישיונות הקוד הפתוח ולחלק אותם לשלוש קבוצות עיקריות גדולות:
- מגן חזק.
- מגן חלש.
- מַתִיר.
מגן חזק
רישיונות הגנה חזקה הם לרוב וריאציות של GPL. רישיונות אלו מחייבים רישוי של הפרויקט וכן חשיפת קודי מקור, ללא קשר לאופן השימוש בקוד או בפרויקט כלשהו או שכבר נעשה בו שימוש.
מגן חלש
רישיונות הגנה חלשה הם לרוב וריאציות של Lesser GPL. שבו ההבדל העיקרי מרשיונות מתירניים הוא שכאן פשוט צריך לתת רישיון לתוכנית גם תחת רישיון GPL, כמו גם לספק את קודי המקור בלי להיכשל. יחד עם זאת, אם יש ספריה בפרויקט של המתכנת, כלומר קישור סטטי או קישור דינמי במסגרת רישיון LGPL, אז היא גם תהיה תואמת לכל אחד מהרישיונות של הפרויקט של מתכנת זה.
מַתִיר
יש מספר די גדול של רישיונות מתירניים, בשורותיהם הרישיונות הפופולריים ביותר הם MIT, Apache 2.0 ו-BSD. עם שינויים קלים, לרשיונות אלו יש את היכולת לאפשר שימוש בקוד הן בפרויקטים של קוד פתוח והן למטרות מסחריות ופרויקטים. אבל, במקרה זה, חשוב לזכור כי יש צורך לציין את המחבר של התוכנית המקורית.
רישיונות GitHub פופולריים אחרים
בנוסף לשלוש קבוצות הרישיונות הללו, יש גם אחרים, למשל, עוד אחד מהרישיונות השימושיים ביותר הוא GPLv2 עם הרחבות classpath. רישיון זה יכול לשמש גם לפרויקטים של קוד פתוח וגם לפרויקטים ולמטרות מסחריות. המראה הפופולרי ביותר שלו הוא ב-Oracle, המשתמשת ב-GPLv2 עם הרחבות classpath כדי לתת רישיון לפרויקטים ולפתרונות הקוד הפתוח שלה. רישיון זה הוא די חשוב ושימושי, שכן רישיונות GPL רגילים, למשל, לעולם לא יוכלו להתמודד עם bytecode. כלומר, יש להם תיאור מיוחד של תהליך ההידור והקישור, שהוא לחלוטין לא מתאים לשפות תכנות מפורשנות אחרות, שפת ג’אווה הפופולרית ביותר היא בין שפות כאלה. עבור מקרים כאלה שוחרר רישיון מיוחד GPLv2 עם הרחבות classpath. אחרי הכל, זה אומר בצורה מאוד ברורה וברורה שהספרייה שפורסמה ברישיון זה יכולה לשמש לפרויקטים מסחריים ולמטרות עם כל רישיון אחר לחלוטין.
מה עוד אתה צריך לדעת על
רישיונות GitHub .
הוספת רישיון
לאחר שהרישיון הסופי נבחר סופית, נותר רק להוסיף אותו לשורש הפרויקט עצמו. כדי לבצע פעולה זו, עליך פשוט להוסיף את הרישיון שנבחר מתחת לשורש הפרויקט במהלך יצירת הפרויקט עצמו או בכל זמן אחר. אבל גם בפעולה הזו, שירות האינטרנט GitHub הצליח לדאוג למשתמשים שלו והם עשו דרך נוחה למדי להוסיף את הרישיון הסופי גם בתחילת הפרויקט עצמו.
עם זאת, למרבה הצער, זה לא הכל, מכיוון שהמפתח או המתכנת צריכים לבדוק לחלוטין את כל התלות ששימשו ברעיון או בפרויקט שלו. כלומר, אם אפילו אחת מהתלות שמתפרסמת תחת רישיון GPL, אז בהחלט כל הפרויקט של המפתח חייב להיות תואם GPL. עבור אימות כזה, בדרך כלל נעשה שימוש בתוכנות או כלים שעוצבו בעבר. לדוגמה, יש כלי עבור זה https://github.com/pivotal/LicenseFinder:
אנו יכולים לומר כי רישוי הוא משימה די גוזלת זמן, אך יחד עם זאת פעולה הכרחית לכל חייו של פרויקט או כל רעיון של מתכנת. על מנת לבחור את הרישיון הנכון, למרבה הצער, צריך להשקיע לא מעט זמן, עם זאת, כדאי שהפרויקט יצליח. עדיף לשים את בחירת הרישיון במקום הראשון בעת כתיבת תוכנית כלשהי, שכן על ידי כך כבר בהתחלה, אתה יכול לכוון את כל המאמצים שלך בכיוון הנכון ולכתוב תוכנית שתהיה מוצלחת ונוחה לרוב משתמשים.