Github nedir?

Eğer bir Kodlayıcıysanız, ama Github'ı bilmiyorsanız, o zaman acemi düzeyinde bir Kodlayıcı olmadığınızı düşünüyorum, çünkü gerçek bir Kodlayıcı değilsiniz, sadece bir Kod hamalısınız.

Ancak bu makaleyi zaten okuyorsanız, Github'u zaten tanıdığınızı düşünüyorum.

Sosyal programlamayı gerçeğe dönüştüren Github'dur.

Github nedir?

Github git tabanlı bir kod barındırma platformudur. Ücretli kullanıcılar özel depolar kurabilir. Genel ücretsiz kullanıcılarımız yalnızca halka açık depoları kullanabilir, bu da kodun herkese açık hale getirilmesi gerektiği anlamına gelir.

Github, Nisan 2008'de üç geliştirici, Chris Wanstrath, PJ Hyett ve Tom Preston-Werner tarafından kuruldu. Şimdiye kadar 59 tam zamanlı çalışanı var ve çoğunlukla git tabanlı sürüm barındırma hizmetleri sağlıyor.

Görünüşe göre GitHub bu macerayı kazandı. Wikipedia'dan GitHub'ın açıklamasına göre GitHub'ın büyüme oranını görsel olarak görebiliriz:

Bugün GitHub:

  • 1,43 milyon geliştiriciden oluşan bir topluluk. Bunların arasında Linux'un mucidi Torvalds gibi en iyi hackerlar ve Rails'in kurucusu DHH gibi genç inekler var.
  • Gezegendeki en popüler açık kaynak barındırma hizmeti. Şu anda 4,31 milyon git projesi barındırılıyor ve Ruby on Rails, jQuery, Ruby, Erlang / OTP gibi sadece gittikçe daha iyi bilinen açık kaynak projeleri GitHub'a taşınmakla kalmadı; son üç yıldaki popüler açık kaynak kitaplıkları genellikle ilk olarak BootStrap, Node gibi GitHub'da yayınlanıyor .js, CoffeeScript vb.
  • alexa dünyada 414. sırada.

Bir hesap kaydedin ve bir depo oluşturun

Github'ı kullanmanın ilk adımı elbette bir github hesabı, resmi github web sitesi adresi: https://github.com/ kaydetmektir. Bundan sonra, bir depo oluşturabilir (ücretsiz kullanıcılar yalnızca bir genel depo oluşturabilir), Yeni Depo Oluşturabilir, adı doldurabilir ve oluşturabilir ve ardından bazı depo yapılandırma bilgileri görünecektir.Bu da basit bir git öğreticisidir.

Github kurulumu

  • Git OSX sürümünü indirin
  • Windows için git'i indirin
  • Git Linux sürümünü indirin

Git'i yapılandırın

Önce yerel olarak bir ssh anahtarı oluşturun;

$ ssh-keygen -t rsa -C "e-postanız@youremail.com"

Your_email@youremail.com, github'a kaydettiğiniz e-posta adresiyle değiştirildikten sonra, yolu onaylamanız ve şifreyi girmeniz istenecektir.Sadece varsayılan olanı kullanırız ve Enter tuşuna basın. Başarılı olursa, .ssh klasörü ~ / altında oluşturulur, girin, id_rsa.pub dosyasını açın ve içindeki anahtarı kopyalayın.

GitHub'a geri dönün, Hesap Ayarlarına girin, soldaki SSH Anahtarlarını seçin, SSH Anahtarı Ekle, başlığı girin ve bilgisayarınızda oluşturulan anahtarı yapıştırın.

Başarıyı doğrulamak için git bash yazın:

$ ssh -T git@github.com

İlk kez devam edip etmeyeceğiniz sorulacaksa, evet girin ve şunu göreceksiniz: Başarıyla doğruladınız, ancak GitHub kabuk erişimi sağlamıyor. Bu, github'a başarıyla bağlandığınız anlamına gelir.

Yapmamız gereken bir sonraki şey, yerel depoyu github'a yüklemek. Bundan önce, kullanıcı adını ve e-postayı ayarlamamız gerekiyor çünkü github her işlemişte kaydedecek.

$ git config --global user.name "adınız" $ git config --global user.email "your_email@youremail.com"

Yüklenecek depoyu girin, git bash'a sağ tıklayın ve uzak adresi ekleyin:

$ git uzaktan kaynak ekle git@github.com: adınız / reepo.gitiniz

Arkadaki yourName ve yourRepo, github kullanıcı adınızı ve yeni oluşturulan depoyu gösterir. Ekledikten sonra .git girin ve yapılandırmayı açın. Burada fazladan bir uzak "kaynak" içeriği olacaktır. Bu, yeni eklenen ve doğrudan da değiştirilebilen uzak adrestir. uzak adresi yapılandırmak için config.

Yeni bir klasör oluşturun, açın ve yeni bir git deposu oluşturmak için git init'i çalıştırın.

Depoyu kontrol edin

Yerel deponun klonlanmış bir sürümünü oluşturmak için aşağıdaki komutu yürütün:

git clone / path / to / repository

Uzak bir sunucudaki bir depo ise, komutunuz şöyle görünecektir:

git clone kullaniciadi @ ana bilgisayar: / yol / havuz

İş akışı

Yerel deponuz git tarafından yönetilen üç "ağaçtan" oluşur. Birincisi, gerçek dosyaları tutan çalışma dizininizdir; ikincisi, değişikliklerinizi geçici olarak kaydeden bir önbellek alanı gibi geçici depolama alanıdır (Dizin); sonuncusu, son gönderiminizin sonucunu gösteren HEAD'dir. .

Aşağıdaki komutu kullanarak değişiklikler önerebilirsiniz (bunları hazırlama alanına ekleyebilirsiniz):

git ekle < dosya adı >

git ekle *

Bu, temel git iş akışının ilk adımıdır; değişiklikleri gerçekten uygulamak için aşağıdaki komutu kullanın:

git commit -m "Kod gönderme bilgileri"

Şimdi, değişiklikleriniz adresine gönderildi KAFA , Ama henüz uzaktaki deponuza ulaşmadı.

Değişiklikleri itin

Değişiklikleriniz artık yerel depoda KAFA Bingo. Bu değişiklikleri uzak depoya göndermek için aşağıdaki komutları yürütün:

git itme kaynağı yöneticisi

Master'ı, itmek istediğiniz herhangi bir dal ile değiştirebilirsiniz.

Mevcut bir depoyu klonlamadıysanız ve deponuzu uzak bir sunucuya bağlamak istiyorsanız, aşağıdaki komutla ekleyebilirsiniz:

git uzaktan kaynak ekle < sunucu >

Böylece değişikliklerinizi eklenen sunucuya aktarabilirsiniz.

Şube

Dallar, özellik gelişimini yalıtmak için kullanılır. Bir depo oluşturduğunuzda, ana "varsayılan" daldır. Diğer dallarda geliştirin ve tamamlandıktan sonra bunları ana dalda birleştirin.

"Feature_x" adlı bir dal oluşturun ve ona geçin:

git checkout -b özellik_x

Ana şubeye geri dönün:

git ödeme yöneticisi

Ardından yeni oluşturulan dalı silin:

git şube -d özellik_x

Şubeyi uzak bir depoya itmedikçe, dal başkaları tarafından görünmez:

git itme kaynağı < şube >

Güncelle ve birleştir

Yerel deponuzu en son değişikliklere güncellemek için, şunu uygulayın:

git çekme

Çalışma dizininizdeki uzak değişiklikleri almak ve birleştirmek için.

Diğer dalları mevcut dalınızla birleştirmek için (örneğin, ana dal), yürütün:

git birleştirme < şube >

Her iki durumda da git değişiklikleri otomatik olarak birleştirmeye çalışacaktır. Maalesef bu her seferinde başarılı olmayabilir ve çatışmalar ortaya çıkabilir. Şu anda, bu çakışmaları (çakışmaları) manuel olarak birleştirmek için bu dosyaları değiştirmeniz gerekir. Değişiklikten sonra, başarılı bir şekilde birleştirilmiş olarak işaretlemek için aşağıdaki komutu uygulamanız gerekir:

git ekle < dosya adı >

Değişiklikleri birleştirmeden önce, aşağıdaki komutla farklılıkları önizleyebilirsiniz:

git fark < kaynak_şube > < target_branch >

etiket

Yazılım sürümleri için etiketlerin oluşturulması önerilir. Bu kavram zaten var ve SVN'de de var. 1.0.0 adında bir etiket oluşturmak için aşağıdaki komutu uygulayabilirsiniz:

git etiketi 1.0.01b2e1d63ff

1b2e1d63ff, işaretlemek istediğiniz kaydetme kimliğinin ilk 10 karakteridir. Kaydetme kimliğini almak için aşağıdaki komutu kullanabilirsiniz:

git günlüğü

İşaretinin benzersiz olması koşuluyla, gönderim kimliğinin daha az ilk birkaç hanesini de kullanabilirsiniz.

Yerel değişiklikleri değiştirin

Bir hata yaparsanız (elbette bu asla olmamalıdır), yerel değişiklikleri aşağıdaki komutla değiştirebilirsiniz:

git checkout - < dosya adı >

Bu komut, çalışma dizininizdeki dosyaları HEAD'deki en son içerikle değiştirir. Aşama alanına eklenen değişiklikler ve yeni dosyalar etkilenmeyecektir.

Tüm değişikliklerinizi ve taahhütlerinizi yerel olarak atmak istiyorsanız, sunucudaki en son sürüm geçmişini alabilir ve yerel ana şubenizi ona yönlendirebilirsiniz:

git getirme kaynağı

git reset - sabit kökeni / ana

Pratik ipuçları

Yerleşik grafik git:

gitk

Renkli git çıkışı:

git config color.ui true

Geçmişi görüntülerken, gönderilen her bilgi için yalnızca bir satır görüntülenir:

git config format.pretty oneline

Dosyaları etkileşimli olarak hazırlama alanına ekleyin:

git eklenti -i

"Ip Man", "A Great Master", "Crouching Tiger, Hidden Dragon" ve eşsiz dövüş sanatları bir arada, bu "Alita: Savaş Meleği" çok güçlü
önceki
Buz ve karda bir Porsche drift sürmek nasıl bir deneyim?
Sonraki
2017 Paris Haute Couture Moda Haftası, lüks bir cep telefonunun moda ürünü olduğu ortaya çıktı
Wang Caitao'nun yönettiği "Mavi Yaşam ve Ölüm" vizyona giriyor, Song Hye Kyo ve Song Seung Heon, Eun Hee Joon Hee'ye dikkat ediyor
Apple adlı "Halkın Günlüğü": Prensesin iyileştirilme zamanı
Jing Ke'nin beceri analizi yeniden düzenlendi, birlikte çalışalım!
Yeni kanat kaplanı neden iyi satabilir? Esas olarak ona güvenin!
Daha fazla ayrıntı birbiri ardına açıklanacak! Bu sefer yeni CdG x Air VaporMax ortak adı tehditkar
Ah Ke'nin becerilerinin analizi, şiddet geri dönüşü duyurdu, gizli suikastçı kanyonu kasıp kavurdu
Bir İskoçyalı satın almak için 300.000 mi? Doğrudan bu lüks arabalara gitmek daha iyi olmaz mıydı?
Şampiyon 2017 sonbahar ve kış yeni ürünleri resmi olarak piyasaya sürüldü! Fiyat, ortak seriye göre daha uygun!
Çinli bilgisayar korsanları Chrome'u 11 saniyede kırdı! Hacker Dünya Kupası'ndaki büyük oyuncular kimler?
Dünyayı etkileyen güç! 360 Security Brain Birleşmiş Milletler'e 5 büyük blockchain uluslararası güvenlik katkısı gönderdi
Saldırmak için binlerce mil, desteklemek için binlerce mil, saf etli savaşçı artık kanı bırakmayacak!
To Top