Bilmek istediğin her şeye ulaş

YÖNLENDİR GitHub

Ocak 2016

Omer Ayverdi, bir soruya yanıt verdi.

Github platformunun kullanım amacı nedir? Github'a benzer başka platformlar var mıdır? Varsa hangileridir?

Versiyon kontrolu, kaynak kod depolama, takim halinde calisma amaclari.

Svn,
Cvs,
Mercurial,
Bitbucket,
Sourceforge,
Code google(2016 da kapanacagi duyruldu)

Tabi git ve github biraz farkli aslinda github size git icin bir sunucu saglamaktadir. Siz bu isi localde de yapabilirsiniz baska alet edevatlarla.
Aralık 2015

Turan Karatuğ  yeni bir  gönderide  bulundu.

Şubat 2015

Enis Özgen, bir soruya yanıt verdi.

Github'ın sunduğu git programını konsoldan son sürüme nasıl güncellerim?

Sorduğun soru arkadaşın dediği üzere kullanmakta olduğun işletim sistemine kullanmakta paket sağlayıcısına göre değişmekle beraber ben Debian'da(Ubuntu, Linux Mint) kullanılan apt-get paket deposunu kullandığını varsayıcam bunun için.
1.apt-get update (Paket deposunda hangi programların yeni versiyonlarının çıkmış olduğunu kontrol etmeye yarar)
2.apt-get install --only-upgrade programın_adı (gerekli programı günceller)

ek bilgi olarakta apt-get upgrade yaparsan sistemindeki güncel olmayan bütün programların güncellenir :)

Kaynak :askubuntu.com/questions/44122/how-to-upg...
Ocak 2014

Eski Inploider, bir soruya yanıt verdi.

Github.com tam olarak nasıl kullanılmalıdır? Sistem nasıl çalışır? Açıklar mısınız?

GitHub.com 'un ücretli ve ücretsiz iki tür kullanımı var.
Ücretsiz açılan repositorylerin (proje kaynak kod deposu) tamamı public oluşturulur ve bu repositorylere erişim açık olur. Ücretli olanlar da private olur.

GitHub'ı anlamadan önce Git nedir bunun üzerinde biraz okumalar yapmanızı öneririm.

Şuradan Git ile ilgili yazılmış çok güzel bir makale var öneriyorum
atlassian.com/git/tutorial/git-basics

Windows işletim sistemi kullanıyorum dolayısıyla GitHub.com'da "GithHub for Windows" programı makinamda kurulu. GitHub programını çalıştırınca ekranda localde ve githubdaki repolar listelenir.

İnternet Girişimleri

Ben makinamda yeni bir repo oluşturabilirim. Bu repo içinde yapacağım değişiklikleri commit edebilirim. Burada Git'i güzel yapan özelliklerden biri offline olarak kaynak kodunuzu commit etmenizi sağlaması. Online olduğunuzda da publish yaparak sunucuya gönderiyorsunuz. SVN'den ayrılan farklarından biri bu.

Kısaca fikir vermesi için bir video hazırladım. Şu linkten izleyebilirsiniz

megaswf.com/s/2633548

Videoda GitHub hesabımda yeni bir repo oluşturuyorum.
Ardından Windows'da GitHub programı ile hesabıma bağlanıp bu repoyu bilgisayarıma çekiyorum ve fiziksel olarak o klasör üzerinde çalışıyorum. Ardından commit ediyorum. Commit işleminin sunucu ile bir ilgisi yok. Commit yaptığımda ilk versionlamamı da yapmış oluyorum. Sunucuya göndermek için publish yapıyorum.

Eğer size ait olmayan bir repo üzerinde çalışmak isterseniz bunu önce fork etmelisiniz. Fork ettiğinizde kendi GitHub hesabınız üzerinden bu kodlara erişip makinanıza clone alabilirsiniz. Ardından yapacağınız değişiklikleri commit edip publish yapabilirsiniz ve bu değişiklikleri "pull request" işlemi ile projeyi ilk oluşturan kişiye bildirip projenin gelişimine katkıda bulunmuş olursunuz.

Anlamadığınız yerleri sorabilirsiniz
Ocak 2014

Mehmet Köse, bir soruya yanıt verdi.

Github.com tam olarak nasıl kullanılmalıdır? Sistem nasıl çalışır? Açıklar mısınız?

Yaptığın projelerin sürümlerini tutuyorsun ya, "blog_son", "blog_son_enson", "blog_asil_bu_son" diye : D işte bu işi standartlaştırmak, versiyonlamak için kullanılabilir, birden fazla kişi proje gelişiriyorsanız ortak çalışma alanı sağlar aynı ofiste veya ayrı ülkelerde olsanız dahi. Kaynak kodlarını açık ve ücretsiz dağıtacaksan ücretsiz barındırma sağlar. Statik site alanı verir. Yazılımcı için bir sosyal ağdır. Yeni kodlar görüp kendini geliştirirsin, insanları takip edersin vs vs. Ayrıca köşe başındaki çöp şirket değil de, gerçekten kaliteli ve ne yaptığını bilen bir iş yerinde işe başlayacaksan sana soracakları ilk 3 sorudan biri github profilindir.
Ekim 2013

Ali Iybar  yeni bir  gönderide  bulundu.

Tecrubeli degil Yasli

Kendimi ilk defa bu statude gordugumden hizla aradaki farki kapatmak icin ugrasiyorum. XP yani Extreme Programming konusunda kendim ogrendikce, oncelikle kendime sonra o yoldan gececeklere kolaylik olsun diye bir blog tutmaya basladim. Bakmak isterseniz .

yazilimcinindefteri.blogspot.co.uk/
Bu blogda su basliklara yer verecegim

TDD - Test Driven Development
BDD - Behaviour Driven Development
SOLID - Extreme programlama prensipleri
GIT - Versiyon takip ve kod paylasimi
. NET

Konu cok buyuk oldugu icin ayrica baska blogda tuttugum bir de Ruby arsivim olacak
rubyogreniyorum.blogspot.co.uk/

Ozellikle her iki blogda da linkler bolumlerini inceleyin cunku kendim arastirip buldukca o sayfalara notlar dusuyorum size de faydasi dokunur umarim
Ekim 2013

Eski Inploider, bir soruya yanıt verdi.

Github platformuna dosya yüklemeyi nasıl yapıyoruz?

Birinci bölüm GitHub hesabınız ile giriş yapın ve bir repository oluşturun.
1- GitHub hesabınız ile github.com'a giriş yapın2- Sağ üst köşede kullanıcı adınıza tıklayın
3- Repositories sekmesine tıklayın
4- Yeşil renkli "New" butonuna tıklayın
5- Repository Name alanına yeni yazılım kaynak kodu deponuza vereceğiniz ismi yazın. Örneğin : TestProjem

İkinci bölüm Windows için GitHub yazılımını yükleyin ve yazılım kaynak depolarınıza bağlanın.
1- Windows için GitHub yüklemelisiniz. Bunun için aşağıdaki adresi kullanın ve "Download GitHub for Windows" butonuna tıklayarak yazılımı indirin ve kurun.
help. github.com/articles/set-up-git
2- Yazılımı çalıştırın. Giriş ekranında sizden GitHub hesabınız ile giriş yapmanızı isteyecektir. Bilgilerinizi yazın ve giriş yapın.
3- Yazılıma hesabınızı bağladıktan sonra sol alanda isminize tıklayın ve GitHub'da oluşturduğunuz TestProjem deposunu göreceksiniz. TestProjem alanının üzerine geldiğinizde Clone ifadesini göreceksiniz ve bu depoyu bilgisayarınıza aktaracaksınız.

4- Depoyu (repository) bilgisayarınıza kopyaladınız. Bilgisayaranızda nerede çalışma klasörü olarak açıldıysa bu klasöre gidip dilediğiniz gibi çalışın. Dosyalar ekleyin, düzenleyin.
5- GitHub yazılımına gelin ve Local repositories alanından TestProjem'e çift tıklayın. Açılan ekranda yapmış olduğunuz işlemler listelenir. Dilediğiniz yorumu/comment ekleyerek commit ediniz.
6- Commit işlemi Git sisteminde offline çalışır. Henüz GitHub'a aktarılmadı dosyalarınız. Bunun için aynı ekranda üst menüde sync veya publis butonlarını kullanınız.

Yalnızca GitHub'da oluşturulmuş bir repositorynin kendi bilgisayaranıza klonlanarak üzerinde çalışmanızı yaptıktan sonra nasıl commit ve publish yapılacağını tarif ettim.
Ekim 2013

Huseyin Uslu, bir soruya yanıt verdi.

Github platformuna dosya yüklemeyi nasıl yapıyoruz?

Bahsettiğiniz kaynak kodu dosyaları ise bir git istemcisine ihtiyacınız var demektir.
Ekim 2013

Uğur Çakmak, bir soruya yanıt verdi.

Github platformunun kullanım amacı nedir? Github'a benzer başka platformlar var mıdır? Varsa hangileridir?

Git; kaynak kodu yönetimi programıdır.
Github; Çok popüler olmuş git ile uyumlu bir kaynak kodu server'ıdır.

git'i kendi server'ınızada kurabilirsiniz. Biz öyle yaptık mesela. Bayağı uğraştırıyor ama tüm kod sizde oluyor. Örneğin github'a proje açtığınızda bu public oluyor, herkes tarafından görülebilir. Eğer private olmasını istiyorsanız ücret ödemeniz gerekiyor. Hem ücretsiz hemde private olsun diyorsanız Bigbucket en iyi seçenek. Zaten github'ın da en büyük rakibi. Yada bizim gibi kendi server'ınıza da kurabilirsiniz.
Eylül 2013

Huseyin Uslu, bir soruya yanıt verdi.

Github'daki fork ve branch nedir?

Öncelikle bir VCS olan git'le, git servisi veren github'ı birbirinden iyi ayırmak lazım.

Fork, github'da ki herhangi bir projeyi kendi github kullanıcı adınız altında çoğaltmaya yarar. Devamında bu projenin kaynak kodları üzerinde çalışma yapabilir, yaptığınız değişiklikleri son adımda proje yöneticisine Pull Request olarak gönderebilirsiniz.

Branch ise basitçe dallardır, bu sayede üzerinde çalıştığınız kaynak kodun farklı (versiyon demek istemiyorum) türlerine sahip olabilirsiniz.

Örnek vermek gerekirse, her git deposu ön tanımlı olarak master branch'ı ile gelir. Eğer isterseniz geliştirme adlı ekstra bir branch açabilir, kod üzerinde değişiklikleri burada yapabilir ve son olarak stabil olduğundan emin olduğunuz değişiklikleri master branch'e aktarabilirsiniz.

Branch kavramını içeren birçok VCS'de kullanılabilecek olsada github için oldukça tavsiye edilen bir branch modeli hakkında daha fazla bilgiyi (nvie.com/posts/a-successful-git-branching-model/) adresinde bulabilirsiniz.

Github

Biraz detaylandırmak gerekirse, bu modelde stabil ve yayınlanmış kod sürümleri master branch'ta tutulmakta ve taglanmaktadır. Aynı zamanda geliştirilen kodlar develop branch'ında tutulmakta ve yazılıma yeni eklenen özellikler önce feature branch'larında takip edilmekte ve develop'a aktarılmaktadır.

Yazılımın yeni bir sürümü yayınlanacağı zaman, develop branch'da ki kodun son hali, release-1.x.y.z gibi bir isme sahip branch'lara aktarılmakta, sürüm yayınlanmaya karar verilidiğinde, master branch'a taglanarak aktarılmaktır.

İlgi çekici diğer bir nokta ise hotfix branch'larıdır.

Özetlemek gerekirse bu modelin sunduğu avantaja basit bir örnek verelim;
bu model sayesinde bir yandan yazılımınıza yeni özellikler eklerken, diğer taraftan gelecek sürümün hazırlığını yapabilir ve hatta daha önce yayınladığınız bir sürüm için hotfix uygulayıp tekrar yayınlayabilirsiniz.

Yazılım geliştirme oldukça detaylı bir süreçtir ve özellikle hata düzeltme safhası oldukça zaman almaktadır. Özellikle onlarca yazılımcının üzerinde çalıştığı devasa projelerde, koda eklenen yeni bir özellik, basit bir değişiklik yahut hata düzeltmesi, kod içerisinde ki diğer kısımların çalışmasını engelleyebileceğinden, bu süreci en kolay ve acısız şekilde branch'lar ile yönetebiliriz.
Daha fazla

8 kişi

Konunun Takipçileri

Alt Konu Başlıkları

Henüz bu konu başlığı ile ilgili konular bulunmuyor.