Projelerinizi Güvence Altına Alın: GitHub'da Lisans Ekleme Rehberi

GitHub Nedir?
GitHub, yazılım geliştiriciler için dijital dünyada yaratıcılığımızı ifade etme ve portfolyomuzu sergileme platformu olarak öne çıkıyor. Aynı zamanda projelerimizi birbirimizle ve dünyayla paylaşma ve diğer tutkulu geliştiricilerle işbirliği yapma fırsatı sunuyor. GitHub, sadece kod yazmakla kalmayıp aynı zamanda bir topluluk oluşturmanın ve birbirimizden öğrenmenin bir yolu olarak da görüyorum. Projelerimizi burada barındırarak, sadece geliştiricilerle değil, aynı zamanda farklı becerilere ve ilgi alanlarına sahip birçok kişiye ulaşma şansını elde ediyoruz. Kısacası, GitHub, dijital yolculuğumuzda yaratıcılığımıza rehberlik eden, güçlü bir topluluk platformu diyebilirim.
Eğer bu giriş ilginizi çektiyse, Git, GitHub Nedir? Nasıl Kullanılır? yazıma göz atmanızı öneririm.
Tabii ki araştırdığınız konu GitHub reponuza License eklemek olduğu için, GitHub'ın ne olduğunu zaten bildiğinizi düşünüyorum. Peki ya nedir bu lisans türleri ve lisans türlerinin kapsamı ve kısıtlamaları nelerdir?
Lisans Nedir?
Bir lisans, yazılımınızın kullanımı, paylaşımı ve dağıtımı ile ilgili kuralları belirleyen bir hukuki dokümandır. Yazılım geliştiricileri, projelerine bir lisans ekleyerek, kullanıcılarına ne tür haklar tanıdıklarını ve hangi koşullarda kullanılabileceğini açıkça belirler.
Popüler Lisans Türleri
MIT License
MIT Lisansı, yazılım projelerine geniş bir özgürlük ve esneklik sunan popüler bir lisans türüdür. Bu lisans altında, kullanıcılar, projeyi ticari veya kişisel kullanım için özgürce kullanabilir, değiştirebilir ve dağıtabilirler. Tek şart, orijinal yazılımın lisans ve telif hakkı bildiriminin korunmasıdır. Bu, projeyi kullanmak isteyenler için minimal kısıtlamalarla birlikte açık bir izin verme anlamına gelir.
GNU General Public License (GPL)
GPL, özgür yazılım hareketinin desteklediği bir lisans türüdür. Bu lisans altında yayımlanan bir yazılımın kaynak kodu her zaman açık olmalıdır. GPL, kullanıcılara, projeyi özgürce kullanma, değiştirme ve dağıtma hakkı verir, ancak bu haklar altındaki türev çalışmaların da aynı özgür lisans altında olmasını şart koşar. Bu, yazılımın özgür kalmasını ve topluluk tarafından sürekli olarak geliştirilmesini sağlar.
Apache License
Apache Lisansı, açık kaynak projeleri için kullanılan bir diğer önemli lisans türüdür. Bu lisans, projeyi ticari ve kapalı kaynaklı projelerde kullanma özgürlüğü tanır. Kullanıcılar, projeyi özgürce kullanabilir, değiştirebilir ve dağıtabilirler, ancak orijinal lisans ve telif hakkı bildirimini korumak zorundadırlar. Apache Lisansı, yazılımın patent hakları konusunda da detaylı düzenlemeler içerir, bu da projenin patent ihlali konusunda daha korunaklı olmasını sağlar.
Bu lisanslar en popüler lisanslar olarak kabul edilir, bunlar arasındaki farklar, projenizin doğası ve kullanım senaryolarına bağlı olarak değişiklik gösterebilir. Projenizin hedeflerini ve topluluğunuzun ihtiyaçlarını göz önünde bulundurarak en uygun lisansı seçmek önemlidir.
Diğer Önemli Lisans Türlerine Kısa Bir Genel Bakış
BSD License
BSD License, özellikle üniversiteler ve araştırma kurumları tarafından tercih edilen bir lisans türüdür. Projeyi ticari veya kapalı kaynaklı projelerde kullanma özgürlüğü tanır, ancak orijinal lisans ve telif hakkı bildirimini korumak şartıyla.
Mozilla Public License (MPL)
MPL, özellikle Mozilla Firefox gibi projelerde kullanılan bir lisans türüdür. Bu lisans altındaki yazılım türev projelerde kullanılabilir, ancak değişiklikler orijinal MPL altında yayımlanmalıdır.
Creative Commons Licenses
Creative Commons, sadece yazılım değil, aynı zamanda içerik (örneğin, belgeler, resimler, müzik) paylaşımı için de kullanılan bir lisans sistemidir. Bu lisanslar, içeriğin nasıl paylaşılacağını ve kullanılacağını belirler.
Eclipse Public License
Eclipse Public License, Eclipse IDE gibi projelerde kullanılan bir lisans türüdür. Bu lisans, projenin ticari kullanımına izin verir, ancak değişikliklerin orijinal projeye geri gönderilmesini şart koşar.

Projeye Lisans Ekleme
1. Yeni oluşturulan repoya lisans ekleme:
İlk olarak, yeni oluşturulan bir repoya lisans nasıl ekleyebileceğimize bakalım. Bu oldukça kolaydır, repo oluşturken "Choose a license" menüsünden projenize uygun olan lisansı seçiyoruz.

2. Mevcut repoya lisans ekleme:
Mevcut proje repository'mize herhangi bir zamanda lisans eklemek istiyorsak aşağıdaki yolu izliyoruz.
Add File -> Create new file

Dosyamızı "LICENSE" olarak adlandırdığımız zaman "Choose a license template" butonu ortaya çıkıyor, bu seçeneğe tıklıyoruz.

Sol tarafındaki bölümde, az önce de belirttiğimiz birçok farklı lisans türünü görüntüleyebiliriz. Bu örnekte ben proje repoma MIT License lisansı ekleyeceğim. MIT License seçiyorum, yıl ve isim bilgisini otomatik oluşturuyor, dilerseniz güncelleyebilirsiniz. Review and Submit butonuna tıklayarak son aşamaya geçiyorum.

Commit changes... butonuyla da değişiklikleri commitliyoruz.

Açılan pop-up ekranında da bir commit mesajı yazmamız isteniyor, olduğu gibi bırakıp Commit changes tıklıyoruz.

Ve işte sonuç, bu işlemleri uygulayarak repomuza MIT license tanımlamış olduk.

Sonuç
Projelerinize bir lisans eklemek, kullanıcılarınıza açık ve şeffaf bir şekilde hakları ve sorumlulukları belirleme konusunda yardımcı olur. Uygun bir lisans seçmek ve bunu adım adım uygulamak, projelerinizi güvence altına almanın etkili bir yoludur. Bu rehberi takip ederek, GitHub repository'nize lisans ekleyebilir ve projelerinizi daha geniş bir kullanıcı kitlesiyle paylaşabilirsiniz. Unutmayın ki her lisansın kendi özellikleri ve gereksinimleri vardır, bu nedenle projenizin ihtiyaçlarına en uygun lisansı seçmek önemlidir.
Referanslar

Yazılım Mühendisi — Dijital Zanaatkâr
Karmaşık sorunlara zarif çözümler üretmekten keyif alan, tutkulu bir yazılım mühendisi. Kodlamanın ötesinde, teknoloji, sanat ve insan bilincinin kesişim noktalarını keşfetmekle derinden ilgileniyor.