Rastgele konuşma: Kız arkadaşınıza Git ve GitHub'ın ne olduğunu nasıl açıklarsınız?

Bu makale, Ranhua Programming'den alınan yetkilendirme ile yeniden üretilmiştir (ID: mhcoding)

Hafta sonu evde "En Güçlü Beyin" i izliyordum ve kız arkadaşım telefonunu izliyordu ve biz iyiydik. Kim bilir, kısa bir süre sonra aniden bana sordu:

sürüm kontrolü

GitHub'ın ne olduğunu tanıtmak istiyorsanız Git'in ne olduğunu tanıtmalısınız.Git'in ne olduğunu tanıtmak istiyorsanız, sürüm kontrolünden bahsetmelisiniz.

Aynı yerel alan ağında birden fazla bilgisayar varsa, yerel alan ağı dosya paylaşımının mümkün olduğunu biliyoruz. Paylaşıcılar, ayarlarını okumak ve değiştirmek için dosyalarını başkalarıyla paylaşabilir.

Aynı paylaşılan dosya için birden fazla kişinin onu değiştirmesi gerekirse ne olur? Üç kişi olduğunu ve A'nın mhcoding1.png, mhcoding2.png, mhcoding3.png, B ve C'nin bu dosyayı değiştirmesi gereken üç dosyayı içeren mhcoding klasörünü paylaştığını varsayalım.

B ve C sırasıyla mhcoding klasörünü kendi bilgisayarlarına kopyalar ve sonra değiştirirler.Değişiklikten sonra, kendi değişikliklerini yüklemeleri gerekir. B değişiklik yapmayı bitirdikten sonra kendi dosyalarını yükler ve bu da A'nın paylaşımının üzerine yazar. Bundan sonra, C de değiştirildi ve kendi değişikliklerimi yükledim. Bu şekilde C, B'nin değişikliğinin üzerine yazacaktır.

Yukarıda bahsedilen sorunu çözmek için, C'ye bir dosya yüklemek istediğinde bunu hatırlatmanın, B'nin dosyayı değiştirdiğini düşünmesi gerektiğini söyleyen bir yol gereklidir.

Daha iyi yol, sürüm kontrolünden geçer.

Bir sürüm kontrol sistemi kullanılıyorsa, her ekip üyesi herhangi bir dosyayı herhangi bir endişe duymadan değiştirebilir.Sürüm kontrol sistemi bize dosya değişikliği çakışmalarını hatırlatabilir ve hatta birden fazla kişinin değişikliklerini otomatik olarak birleştirmemize yardımcı olabilir.

Sürüm kontrolü ile, önceki bir sürümdeki belirli dosyaların içeriğine de bakabilir ve belirli bir değişikliğin değişen içeriğini görüntüleyebiliriz. Takım çalışması için çok uygun.

Sürüm kontrol yöntemi

Yerel sürüm kontrol sistemi

Birçok kişi, farklı sürümleri kaydetmek için tüm proje dizinini kopyalamaya alışkındır, belki de farklılığı göstermek için yeniden adlandırılır ve yedekleme süresi eklenir. Bunun tek avantajı basitliktir. Ancak birçok dezavantaj vardır: bazen bulunduğu yerdeki çalışma dizinini karıştırır ve yanlış dosya kaybolduğunda veriler geri alınamaz.

Bu sorunu çözmek için, insanlar uzun zaman önce birçok yerel sürüm kontrol sistemi geliştirdiler; bunların çoğu, dosyaların önceki güncelleme farklılıklarını kaydetmek için bir tür basit veritabanı kullanıyor.

Merkezi versiyon kontrol sistemi

Sonra, insanlar başka bir sorunla karşılaştı, farklı sistemlerdeki geliştiricilerin birlikte çalışmasına nasıl izin verilir? Böylece merkezi bir sürüm kontrol sistemi ortaya çıktı.

Bu tür bir sistem, tüm dosyaların revizyonlarını kaydeden tek bir merkezi yönetim sunucusuna sahiptir ve birlikte çalışan kişiler, en son dosyaları almak veya güncellemeleri göndermek için istemci aracılığıyla bu sunucuya bağlanır.

Bu yaklaşım, özellikle eski yerel sürüme kıyasla birçok fayda sağlar. Artık herkes projedeki diğer insanların ne yaptığını bir dereceye kadar görebilir. Yönetici ayrıca her geliştiricinin izinlerini kolayca kontrol edebilir ve yönetimi çok daha kolaydır.

Dağıtılmış Sürüm Kontrol Sistemi

Merkezileştirmenin en belirgin dezavantajı, merkezi sunucunun tek nokta sorunudur. Merkezi sunucu bir saatliğine kapalıysa, o saat içinde hiç kimse güncelleme gönderemez ve birlikte çalışamazlar.

Merkezi sunucunun diski arızalanırsa, yedekleme yapılmazsa veya yedekleme yeterince zamanında yapılmazsa, veri kaybı riski vardır.

Böylece dağıtılmış sürüm kontrol sistemi ortaya çıktı. Bu tür bir sistemde, istemci yalnızca dosya anlık görüntüsünün en son sürümünü çıkarmakla kalmaz, aynı zamanda kod havuzunu tamamen yansıtır. Bu şekilde, ortak çalışma için kullanılan herhangi bir sunucu, daha sonra herhangi bir yansıtılmış yerel depo ile geri yüklenebilir. Çünkü her çıkarma işlemi aslında kod deposunun tam bir yedeğidir.

Git

Git aslında daha önce tanıttığımız dağıtılmış bir sürüm kontrol yazılımıdır. Git aşağıdaki özelliklere sahiptir:

  • Farklılıkları karşılaştırmayın, doğrudan anlık görüntüler kaydedin
  • Hemen hemen tüm işlemler yerel olarak gerçekleştirilir
  • Veri bütünlüğünü her zaman koruyun
  • Çoğu işlem yalnızca veri ekler

Programcılar, ekip çalışması gerektiren tipik bir meslektir.Çoğu durumda, birden fazla programcının bir Word belgesini aynı anda değiştirmek istediği gibi, aynı projeyi aynı anda geliştirmek için birden fazla programcının olması gerekir. Bu nedenle Git, birçok programcı için önemli bir araçtır.

GitHub

GitHub, açık kaynak ve özel yazılım projeleri için bir barındırma platformudur.Yalnızca Git'i barındırma için tek depo biçimi olarak desteklediğinden, GitHub olarak adlandırılır.

Sözde barındırma platformu, dosyaları depolamak için kullanılabileceği anlamına gelir. Sadece yukarıdaki dosyaların tümüne herkes tarafından erişilebilir.

GitHub, Git aracılığıyla sürüm kontrolü için bir yazılım kaynak kodu barındırma hizmetidir ve GitHub ayrıca bazı sosyal özellikler sunar. Dünyanın en büyük programcı (aynı cinsiyetten) tanışma sitesi olarak bilinir.

Basitçe söylemek gerekirse, GitHub'da kendi kodunuzu gönderebilir (Weibo gönderebilir), birini takip edebilir (hayran olabilirsiniz), bir öğeyi takip edebilir (beğenebilir), yorum ekleyebilir ve bir öğeyi kendi başınıza değiştirmek için çatal (iletebilir) yapabilirsiniz. Şikayetlerimizi çeşitli programlama dillerinde yazılmış kodlarla değiştirmemiz dışında, bu işlevler Weibo'dakilerle aynıdır. Genelde gördüğümüz açık kaynak kodların çoğu da üzerine asılır.

Son zamanlarda popüler 996icu projesinde 100.000'den fazla Yıldızı olduğunu söylemiştik, bu da 10W + kişinin bu projeyi takip ettiği anlamına geliyor.

GitHub'daki tuhaf "projeler"

Bayanlar için bir buluşma yeri giyin

Elbise adlı bu projede 129 katılımcı toplandı, binlerce kadın kıyafeti fotoğrafı yükledi ve 8.000'den fazla yıldız aldı.

Adres: https://github.com/komeiji-satori/Dress

Thanos-Thanos Komutu

Thanos.sh, bilgisayardaki dosyaların yarısını rastgele silebilen açık kaynaklı bir Thanos komutudur.

Adres: https://github.com/hotvulcan/Thanos.sh

kod yok-kod satırı yok

Bu, projeden daha heyecan verici bir konu, projede kod satırı yok, Issue'da her türlü iddia yok.

Star projesindeki 27.000 kişi ne kadar sıkıcı diye sormak istiyorum. ? ?

Adres: https://github.com/kelseyhightower/nocode

programcı-iş-kara liste programcı-iş-kara listesi

Adres: https://github.com/shengxinjing/programmer-job-blacklist

hangzhou_house_knowledge Hangzhou'da ev satın alma rehberi

Adres: https://github.com/houshanren/hangzhou_house_knowledge

kaç kişinin yakınlarda Wi-Fi sinyaliyle kaç kişinin yakınlarda olduğunu tahmin etme

Adres: https://github.com/schollz/howmanypeoplearearound

Referans malzemeleri:

https://git-scm.com/book/zh/v1/

https://www.jianshu.com/p/b2ad5d9daa23

https://www.zhihu.com/question/23498424

WeChat'te kırmızı zarf oynamanın yeni bir yolu! "Mayın tarama" kullanıcısı üç günde 10.000 kaybetti!
önceki
Mustang Bojun resmi olarak listelenmiş, fiyatı 5,78-8,98 milyon yuan, belki de "kara at"
Sonraki
Belirleyici Mark! 27 ücretsiz, düşük maliyetli Python öğrenme kaynağıyla başlayın!
DS 6, üç yıldan fazla bir süredir araba kullanıyor ve 47.000 kilometredir hiçbir sıkıntısı yok, sahibi açıkçası:
BMW'nin yeni X5 listeleme konfigürasyonu / ayrıntıları lüksle dolu: bu lüks bir otomobil!
Büyük Veri Yorumlama İstasyonu B, Cai Xukunun "hayalet hayvanlar" bölge devleri arasında popülerdir
Çukurlaşmaya dikkat edin! Operatörler tarafından başlatılan bu "Bahar Şenliği indirim paketlerinin" rutinleri var ...
Pekin, Donghua Caddesi'ndeki Lei Fengyue Faaliyetleri Yangın Güvenliği ile Elele
Liu Qiangdong, gece geç saatlerde şikayet etmek için yazdı; Huawei, Apple'a 5G çipleri satmayı reddetmedi | Geek Headlines
258.800'den! Mazda CX-8 piyasaya sürüldü: 7 standart koltuk Highlander'dan daha büyük
Neden daha fazla insan arkadaş çevresini kapatıyor? Belki WeChat Taifo departmanıdır!
Tarayıcının önbelleğe alma mekanizmasını iyice anlayın!
Bu hizmeti çözmek için Alipay'e gidin! Birisi açıklanamaz bir şekilde 700 yuan düşürüldü
NIO, NIO Power Charger süper şarj yığınını serbest bırakacak ve tek tıklamayla çalıştırmayı açacak
To Top