Git-Annex ile konumlar arasında dosya senkronizasyonu

Resim: iStock / chombosan

Git'i biliyorsun. GitHub ve git ile ilgili diğer birçok aracı biliyorsunuz. Ama git-ek'i biliyor musunuz?

Git-ek ile yerel bir makinede depolar oluşturabilirsiniz (bunlardan biri yerel olarak monte edilmiş bir Dropbox paylaşımı olabilir) ve daha sonra içinde bulunan dosyaları senkronize halde tutabilirsiniz. Bunu yapmanın en kolay yolu değil, ama oldukça büyük bir potansiyel sunan bir yöntem. Daha da iyisi, standart git'in aksine git-annex büyük dosyaları senkronize etmenizi sağlar.

İki konumu senkronize etmek için git-ek'i kurma ve kullanma adımlarında size yol göstermek istiyorum. Bunu yapmanın birkaç yolu vardır: GUI aracıyla ve komut satırından. Burada komut satırı sürümünü göstereceğim (ileride nasıl yapılacağı GUI yöntemini göstereceğim). Ubuntu Server 18.04'te göstereceğim ve yerel olarak monte edilmiş bir Dropbox klasörünü sunucudaki yerel bir klasöre senkronize edeceğim.

Açık Kaynak hakkında daha fazla bilgi

  • On yılın en kötü açık kaynak yeniliklerinden 8'i
  • 2020'de açık kaynak: Gelecek parlak görünüyor
  • Linus Torvalds: "Git, tek vuruşlu bir meraktan daha fazlası olabileceğimi kanıtladı."
  • Linux ağlarını kolaylaştırmak için 20 hızlı ipucu (ücretsiz PDF)

Bununla birlikte, işe başlayalım.

Kurulum

Git-annex'i tek bir komutla kurabilirsiniz. Ancak, öncelikle makinede git'in yüklü olduğundan emin olmak istersiniz. Her ikisini de kurmak için bir terminal açın ve aşağıdaki komutu verin:

 sudo apt install git git-ekx 

Git-ek kurulumu bazı 325 bağımlılıkları aşağı indirir (makinenize zaten ne yüklediğinize bağlı olarak), bu yüzden biraz zaman alabilir (ağınızın hızına göre belirlenir). Kurulum tamamlandığında, çalışmaya hazırsınız.

SEE: Linux ağlarını kolaylaştırmak için 20 hızlı ipucu (ücretsiz TechRepublic PDF)

Havuz oluşturma

Bahsettiğim gibi, yerel bir klasörü yerel olarak monte edilmiş bir Dropbox klasörü ile senkronize edeceğiz. Dropbox klasörünün ~ / Dropbox içinde olduğunu varsayacağım. İlk olarak, yerel bir dizin oluşturacağız. Bir terminal penceresi açın ve şu komutu verin:

 mkdir ~ / myrepo 

Cd ~ / myrepo komutuyla bu yeni klasöre geçin . Sonra depoyu şu komutla başlatmalıyız:

 git init 

Şimdi havuzu git-ek ile, sadece bir ad ekleyerek başlatırız. Bu UbuntuServer'ı adlandıracağım, bu yüzden başlatma komutu şöyle olurdu:

 git ek init "UbuntuServer" 

Sonra bazı dosyaları ~ / myrepo'ya taşıyacağız . Test amacıyla, touch test1 komutuyla boş bir dosya oluşturabilirsiniz. Test dosyasını oluşturduktan sonra şu komutu kullanarak git ek ile ekleyin:

 git ek test1 ekle 

Git'i kullandığımız için yeni dosyayı teslim etmelisiniz (aksi halde git dosyayı bilmeyecektir). Bunun için şu komutu verin:

 git commit -m "Bir test dosyası eklendi" 

İkinci konumun eklenmesi

~ / Dropbox klasörümüz zaten var, bu yüzden cd ~ / Dropbox komutuyla değiştirin. Bu klasörün de başlatılması gerektiğinden, büyük olasılıkla ~ / Dropbox klasörünün tüm içeriğini başlatmak istemiyoruz, bu yüzden şu komutla ek adında bir alt klasör oluşturalım:

 mkdir eki 

CD eki komutuyla bu yeni klasöre geçin . Klasörü şu komutla başlatın:

 git init 

Klasörü git-annex ile başlatın (ve Dropbox olarak adlandırın) komutuyla:

 git ek init "Dropbox" 

Onları haberdar et

Bir sonraki numaramız için, iki konumu birbirimizden haberdar etmeliyiz. Bunu yapmak için ~ / myrepo klasörüne geçin ve komutla Dropbox'tan haberdar edin:

 git uzaktan ekle Dropbox ~ / Dropbox / ek 

Ardından, ~ / Dropbox / annex klasörüne geçin ve şu komutla ~ / myrepo klasörü hakkında bilgi edinin :

 git remote add UbuntuServer ~ / myrepo 

Senkronize et

Her bir konum diğerinin farkında olduğunda, bunları senkronize edelim. ~ / Myrepo klasörüne değiştirin ve şu komutu verin:

 git ek senkronizasyonu 

Şimdi, ~ / Dropbox / annex klasörüne geçin ve aynı komutu verin:

 git ek senkronizasyonu 

Bu noktada, yaptığımız tek şey iki konum arasında semboller oluşturmak. İçeriği gerçekten senkronize etmek için komut şu şekilde olur (her konumda çalıştır):

 git ek senkronizasyonu --içerik 

Ve işte gidiyorsunuz: Her iki konum da senkronize. Tebrikler, git-annex'i yerel bir klasörü yerel olarak monte edilmiş bir bulut konumuna senkronize etmek için kullandınız.

Öğrenmeye devam et

Daha fazla bilgi için man git-annex komutunu verin. Kılavuz sayfası, bu inanılmaz güçlü aracı öğrenmeye devam etmeniz için bol miktarda bilgi sunar.

Hizmet Bülteni Olarak Bulut ve Her Şey

Bu AWS, Microsoft Azure, Google Cloud Platform, XaaS, bulut güvenliği ve çok daha fazlası için en yeni kaynakınızdır. Teslim Edilen Pazartesi

Bugün kayıt olun

© Copyright 2020 | mobilegn.com