GIT — Git
GIT Bir Git deposu klasör gibi gezilir: değişen dosyalar, dallar, geçmiş.
Bir depo açma
Çubuktaki GIT düğmesi sık kullanılan projeye atlar; sağ tıklaması listeyi verir: bilinen depolar, “Commit”, “Geçmiş…”, dallar, “Stash…” ve “Kenara alınanlar”, “Etiketler…”, “Uzak depolar”. Henüz depo olmayan bir disk klasörü orada “Buraya bir depo klonla…” önerir. Projeler içine girildikçe kendiliğinden eklenir ve klasörü kaybolmuş bir proje unutulur — eksik olan diski ise değilse: çıkarılmış bir USB bellek hiçbir şeyi unutturmaz.
Bir klasörün durumu
Her satır kendi rengini taşır: çakışmalı, izlenmeyen, değiştirilmiş, hazırlanmış, yoksayılan. Bir dosya git tarafından iki eksende tanımlanır — dizin ve çalışma kopyası — ve bir satır ikisini birden gösterecek yere sahip değildir: rengi belirleyen yapılması kalan şeydir. Yol çubuğu geçerli dalı söyler.
Hazırlama ve commit etme
“Commit” değişiklikler görünümünü açar: satır başına bir dosya, git'in onun hakkında bildiğini söyleyen İzlenen sütunu. Satırlar her yerdeki gibi seçilir — tıklama, Ctrl+tıklama, Shift+tıklama —, ileti altına yazılır ve Commit seçili olanla gider. Hiçbir şey seçili değilse hiçbir şey gitmez: düğme bunu söyler.
Commit çubuğundaki İzlenmeyen düğmesi, git’in izlemediklerini gizliyor: atılacak dosyalarla dolu bir klasör, commit etmek istediğiniz iki dosyayı artık boğmuyor ve Ctrl+A onları artık almıyor. İşareti kaldırılınca kaç tanesini gizlediğini söylüyor.

Farkları göster
“Farkları göster”, çalışma kopyası, dizin (hazırlanmış) ve bir commit arasında diff'i blok blok açar — önce ve sonra orada adlandırılır. İkili bir dosya, gürültü göstermek yerine bunu söyler.
Hareketler
- İletisiyle Commit.
- Yoksay: dosya
.gitignoredosyasına katılır. - Rollback: kutu kaç yeni dosyanın diskten gideceğini ve kaçının deponun durumuna döneceğini söyler. Commit edilmemiş çalışma yitirilir — yazılıdır.
- Kopyala › pano: değişiklikler satırı bir disk dosyasının kendisidir ve öyle kopyalanır — başka yere, Meneaufile dışına da yapıştırmak için. Ne kesme ne yapıştırma: liste git tarafından yeniden oluşturulur, ondan bir satır çıkarılmaz ve içine hiçbir şey yazılmaz.
- Bulunduğu yerde aç: dosya satırından başka yerdedir — satır listede yaşar, dosya düzenlendiği yerde, çalışma kopyasında. Girdi oraya götürür.
Dallar ve geçmiş
Bir dal oluşturma, ona geçme, birleştirme — girdi dalın adını taşır ve birleştirilecek bir şey yok: zaten güncel ya da birleştirme kesildi: dosyalar çakışıyor yanıtını verir. “Geçmiş…” commit'leri listeler: kısa parmak izleri, konuları, yazarları, tarihleri. Soldaki oluk grafiği çizer, her satır kendi yolunda ve bir birleştirme çizgisini komşu sütuna doğru koyar. Bir çift tıklama bir commit'in ayrıntısını açar: iletisinin tamamı ve dokunduğu dosyalar.

Merge request ağacı
Merge request ağacı…, GIT düğmesinin menüsünde, uzak deponun gösterdiği GitLab projesinin açık MR’larını çizer. Her biri çıktığı dalın altında, içindekiler gibi bir adım girintili durur: adım hangi sırayla onaylanacaklarını söyler, bir karta tıklamak MR’ı tarayıcıda açar.
- Köken commit’lerden okunur. Başka bir MR’dan türeyen MR, ikisi de
maindalını hedeflese bile onun altında durur: “!28 sonrası” hangisinin önce onaylanacağını söyler, “hedef main” ise hâlâmaindalını hedeflediği konusunda uyarır — önce onu birleştirmek diğerinin commit’lerini de götürürdü. - Rozetler GitLab’ın verdiği durumu gösterir: taslak, çakışmalar, rebase gerekli, onay bekliyor, açık tartışmalar, pipeline çalışıyor, hazır.
- Checkout düğmesi, her kartın sağ üstünde, çalışma kopyasını MR’ın dalına geçirir; onaylamadan önce denemek ya da gözden geçirmek için. Dal önce sunucudan alınır; süren iş, her dal değişiminde olduğu gibi kenara konabilir. Bir onay işareti zaten bulunduğunuz dalı gösterir.
- Kişisel erişim belirteci,
read_apiyetkisiyle, GitLab’da oluşturulur: User settings › Access › Personal access tokens › Generate token. Meneaufile onu bir kez ister ve kasada kendine ait bir kayıtta saklar; hesap parolasını taşıyan bir NET kaydı belirteç sayılmaz.

main dalını gösterir.Uzak depoyla alışveriş
“Pull” ve “Push”, etiketin yanında söz konusu commit sayısıyla birlikte — sıfır yazılmaz. Karşıda henüz bulunmayan bir dal yukarı akışıyla birlikte gider. Uzak depolar aynı menüden tanımlanır ve kaldırılır. Sunucu kimlik doğrulaması istediğinde Meneaufile, sessizce takılıp kalmak yerine bunu kendisi de ister.
Kenara koyma
“Stash…” süren çalışmayı commit etmeden, isteğe bağlı bir açıklamayla kaldırır; “Kenara alınanlar” — Kenara alınan işler — bekleyenleri listeler ve oradan devam edilir ya da atılır. “Etiketler…” etiket koyar ve aynı şekilde kaldırır.
Bu satırı kim yazdı
Bir dosyanın menüsündeki “Satır geçmişi” her satırı commit'ine ve yazarına atfeder. Şaşırtıcı bir satır karşısında insanın kendine sorduğu budur ve bir commit listesi buna yanıt vermez.
Çakışmalar
Çakışan bir dosya sürümleriyle açılır: ortak sürüm, bizimki, onlarınki ve inşa ettiğiniz sonuç. “Tümünü al” bir tarafı tamamen aktarır, “Çöz” kaydeder — ve dosya çakışmalı kategorisinden çıkar.
Klonlama
Bir klasörden: adres
(https://… veya git@host:org/depo.git), oluşturulacak klasörün
adı ve tam ya da sığ bir geçmiş — son N commit.
Bundle dosyaları
Bir .bundle dosyası, tek bir dosyaya paketlenmiş bir Git deposudur:
bir projeyi sunucu olmadan bir USB bellekte taşımaya ya da birine vermeye yeter.
Çift tıklama içinde ne taşıdığını söyler — dallarını, etiketlerini — ve
Buraya klonla… onu hemen yanında, ağ olmadan sıradan bir depoya
dönüştürür. Bir depodayken GIT menüsündeki Bundle oluştur… depoyu
bütünüyle diğer bölmedeki klasöre paketler.
Git yoksa
Meneaufile sistemin git komutunu çağırır. Yoksa ya da PATH dışındaysa,
nedensiz başarısız olmak yerine bunu söyler.
Meneaufile kılavuzu, Türkçe.