Magit kesinleştirme ekranında `--verbose 'bayrağını varsayılan olarak nasıl etkinleştirebilirim?


16

Şu anda, sadece ccmagit modunda basmak yerine, c-vcetkinleştirmek için her seferinde basmam gerekiyor --verbose.

Varsayılan olarak etkinleştirmek mümkün mü?

Yanıtlar:


18

v2.1.0Magit ile başlayarak magit-popup.elbu tür "açılır pencere arabelleklerini" veya "önek-infix-sonek kombinasyonlarını" uygulamak için kütüphaneyi kullanır . Adına rağmen, bu kütüphane Magit ile ilgili olmayan paketler tarafından kullanılabilir ve bu nedenle ayrı bir Elpa paketi olarak sunulur. Artık kendi kılavuzu bile var !

Varsayılan bağımsız değişkenler artık doğrudan bir açılır pencere arabelleğinden ayarlanabilir. Her zaman --verbosetaahhütte kullanmak için şunu yapın :

  1. c İşlem yapan pop-up'ı göster
  2. - v--verbose
  3. C-x C-sŞu anda ayarlanan bağımsız değişkenleri varsayılan olarak kaydedin (özel seçenekte magit-commit-arguments)

Varsayılan olarak tüm açılır pencere arabellekleri "Ortak Komutlar" adlı bir bölümle biter. Değilse, C-tgöstermek için kullanın . Muhtemelen bu bölüm her zaman görmek istemiyoruz ve bu nedenle belirlesin magit-popup-show-common-commandsiçin nil.

Tabii ki magit-commit-arguments, Özel arabirimi setq, veya kullanarak bu değişkenlerin değerini ve diğerlerini ayarlamak da mümkündür add-to-list. Ancak buna karşı öneriyorum, çünkü bu, varsayılanları anında değiştirmeyi imkansız hale getirecektir.


7

Bildiğim kadarıyla Magit "varsayılan" seçeneklerinin takip etmez söyleyebilir, ama biz yapabilir olarak bunu "basın -v" her zaman Committing tampon açılır:

(advice-add #'magit-key-mode-popup-committing :after
            (lambda ()
              (magit-key-mode-toggle-option (quote committing) "--verbose")))

Hangi fonksiyonun önerileceğini bulmak için bir magic-statustampon açtım ve bastırdım C-h k c. Bu beni yönlendirdi magit-key-mode-popup-committing. Sonra (yine görüntülenen Committing tamponu ile) ben preslenmiş C-h k -vbulmak için lambdazaman formu Magit çağrıları size basın -vCommitting penceresinde.

Güncelleme: Bu yanıtı bağımsız olarak yazdım , ancak bkz . Git-log “--all” seçeneğinin başlangıçta seçilmesini sağlayabilir miyim? , burada verilen cevap ve bu cevaba yapılan yorumlar.


1
İlginç! Bu işlevleri nasıl bulduğunuzu da açıkladığınız için teşekkür ederiz :)
Wile E. Coyote

@Dogbert: Başkalarının uzun zaman önce varsayılan git seçenekleri hakkında düşündüklerini bilmek isterseniz lütfen güncellenmiş cevaptaki bağlantıya bakın. :-) (Bunu dün nasıl özlediğimi bilmiyorum.)
Constantine

4

Geçici kullanan (Şubat 2019'dan sonra) magit sürümlerinde, bayrağı ayarlayın ve daha sonra geçici tampondayken kaydedin.

Dolayısıyla, taahhütte bulunmak için, anahtar sıra,

C-x g # start magit
s # to stage changes
c # start commiting
-v # enable verbose
C-x C-s # Save the setting persistently across sessions
c # do the actual commit

Bundan sonra, bir sonraki kesinti çağrıldığında, ayrıntı yine de ayarlanacaktır. (Taahhüdü tamamlamak zorunda değilsiniz ve kaydettikten sonra çıkabilirsiniz C-x C-s.)

Gerçek varsayılan, içindeki bir transient/dizine kaydedilir .emacs.d/.

Geçici kılavuza bakın https://magit.vc/manual/transient.html#Saving-Values


0

Tam olarak istediğiniz şey olmasa da (kaydetme arabelleğinize göre farklılık gösterir), durum penceresindeki aşamalı farkları genişletmek için magit ayarlayabilirsiniz :

(setq magit-expand-staged-on-commit 'full)

Magit iş akışı her zaman açık durum arabelleği ve daha sonra kesin arabellekle açık bölünmüş gibi görünür, her zaman görüntülenen iki tamponla sonuçlanırsınız. Yukarıdaki ayar, ikinci (daha önce yararlı olmayan) tampon görüntünün farkınızı göstermesini sağlayacaktır.

Ayrıca tyalnızca fark başlıklarını genişletmek için de kullanabilirsiniz (böylece satır numaralarını gösterir):

(setq magit-expand-staged-on-commit t)

Farkınızı yazarken, durum arabelleğine geçebilir ve farkları TABgenişletmek (veya katlamak) için kullanabilirsiniz.


Alternatif olarak, C-c C-dbir diff ile başka bir tampon açmak için ayar tamponundan kullanabilirsiniz magit-diff-staged. ( Bu konuya bakın .)


0

İtibariyle magitsürümü 2.1, kendi config bu kullanabilirsiniz:

;; When commiting enable verbose mode by default.
(setq magit-commit-arguments (quote ("--verbose")))

Bunu yapmamalısın. Cevabımı gör.
tarsius

@tarsius Geçerli bir noktanız var. Benim kullanımım nokta dosyalarımı birden çok bilgisayar arasında senkronize etmem ve bir varsayılan ayarladığımda tüm bilgisayarlarımda varsayılan olması gerekiyor. Değiştirmek istersem, sadece yapılandırmamda değiştireceğim ve tüm bilgisayarlarımda senkronize edilecek.
Maiku Mori

1
Oh ve özel seçenekleri kullanmıyorum çünkü yapılandırmamın belgelenmesini zorlaştırıyor. Her şeyi açıkça belirlemeyi tercih ederim.
Maiku Mori

Ayrıca, --no-verifygit kancalarını kullanan projeleriniz olduğunda ayar yararlıdır (açık bir şekilde dikkatli kullanın).
Droogans
Sitemizi kullandığınızda şunları okuyup anladığınızı kabul etmiş olursunuz: Çerez Politikası ve Gizlilik Politikası.
Licensed under cc by-sa 3.0 with attribution required.