Taahhüt mesajlarımı Vim'e yazmayı tercih ederim, ancak Emacs'ta açıyor.
Git'i her zaman Vim kullanacak şekilde nasıl yapılandırırım? Bunu tek bir proje için değil, küresel olarak yapmak istediğimi unutmayın.
Taahhüt mesajlarımı Vim'e yazmayı tercih ederim, ancak Emacs'ta açıyor.
Git'i her zaman Vim kullanacak şekilde nasıl yapılandırırım? Bunu tek bir proje için değil, küresel olarak yapmak istediğimi unutmayın.
Yanıtlar:
Düzenleyiciyi yalnızca Git için ayarlamak istiyorsanız , ikisinden birini yapın (her ikisine de ihtiyacınız yoktur):
core.editor
Git yapılandırmanızda ayarlayın :git config --global core.editor "vim"
GIT_EDITOR
Ortam değişkenini ayarlayın :export GIT_EDITOR=vim
Git ve diğer programlar için düzenleyici ayarlamak istiyorsanız , standartlaştırılmış VISUAL
ve EDITOR
ortam değişkenlerini * ayarlayın:
export VISUAL=vim
export EDITOR="$VISUAL"
* Her ikisinin de ayarlanması gerekmez, ancak bazı programlar daha doğru olanı kullanamayabilir VISUAL
. Bkz VISUAL
vsEDITOR
.
Yüce Metin için : Bunu .gitconfig
. Bu --wait
önemlidir (yüce metin yazmanıza izin verir ve kaydet / kapat olayını bekler.)
[core]
editor = 'subl' --wait
'subl', yürütülebilir dosyanın tam yolu ile değiştirilebilir, ancak genellikle doğru yüklendiğinde kullanılabilir.
git config --global
Kişisel (kullanıcı başına) git yapılandırma dosyanıza yazacağını unutmayın . Unices üzerinde öyle ~/.gitconfig
. Böylece bu, tüm depolarınız için yapılandırır.
git commit --amend
-w
gerekli değildir; -w {scriptout}
daha sonra tekrar oynatmak için düzenlerken yazdığınız tüm karakterleri kaydeder. Belki de onunla karıştırıyorsunuz -f
, bu da Vim'in GUI sürümünü çağırırken gereklidir. Yani, kullanırsanız mvim
, belirttiğiniz düzenleyici mvim -f
yerine olmalıdır mvim
.
Kopyala yapıştır:
git config --global core.editor "vim"
Ne yaptığını bilmek istiyorsan. Gönderen man git-commit
:
ÇEVRE VE KONFİGÜRASYON DEĞİŞKENLERİ
İşlem günlüğü iletisini düzenlemek için kullanılan düzenleyici,
GIT_EDITOR
ortam değişkeni,core.editor
yapılandırma değişkeni,VISUAL
ortam değişkeni veyaEDITOR
ortam değişkeninden (bu sırayla) seçilecektir .
VISUAL
ya kullanabilir EDITOR
, ama kesinlikle GIT_EDITOR
ya da kullanmazlar core.editor
.
Ubuntu ve ayrıca Debian'da (teşekkürler @MichielB) varsayılan düzenleyiciyi değiştirmek de aşağıdakileri yaparak mümkündür:
sudo update-alternatives --config editor
Hangisi aşağıdakileri isteyecektir:
There are 4 choices for the alternative editor (providing /usr/bin/editor).
Selection Path Priority Status
------------------------------------------------------------
0 /bin/nano 40 auto mode
1 /bin/ed -100 manual mode
2 /bin/nano 40 manual mode
* 3 /usr/bin/vim.basic 30 manual mode
4 /usr/bin/vim.tiny 10 manual mode
Press enter to keep the current choice[*], or type selection number:
alternatives
sistemi, desteklenen program türleri için varsayılanları yönetmenin çok daha kolay bir yoludur. Referans için: debian-administration.org/article/91/…
GIT_EDITOR
ve EDITOR
çalışmıyor --ubuntu
update-alternatives
, kurulu olan editörleri gösterecektir. Koen'de Emacs yüklü değil.
Windows 7'de, "Sublime" editörünü eklerken hala bana bir hata veriyordu:
Boş taahhüt mesajı nedeniyle taahhüt iptali.
Sublime odağı tutamadı.
Bunu düzeltmek için .gitconfig dosyasını c: / users / username / klasöründe açtım ve çift tırnak işaretleri dışında --wait seçeneği ile aşağıdaki satırı ekledim.
[core]
editor = 'F:/Program Files/Sublime Text 2/sublime_text.exe' --wait
Yüce ile benzer sorunla karşılaşan birine yardımcı olmasını umuyoruz.
git config --global core.editor "'C:/Program Files/Sublime Text 3/subl.exe' --wait"
C:\Users\YOUR_USERNAME\.gitconfig
[core]
editor = 'C:/Program Files (x86)/Notepad++/notepad++.exe'
git commit
ve tuşuna basmanız yeterlidir Enter
. Notepad ++ 'ı açacaktır.-multiInst
Notepad ++ ve muhtemelen en azından bir parametre olarak eklemeniz gerekebilir -notabbar
. Git dosyayı düzenlemeyi bitirdiğinizi bilmiyorsa ve sonsuza kadar beklerseniz veya hiç beklemiyorsanız bunu yapın.
>git config --global core.editor '"C:/Program Files (x86)/Notepad++/notepad++.exe"'
editor = 'C:/Program Files (x86)/Notepad++/notepad++.exe' -multiInst -notabbar
- yani sınırlayıcı tek tırnakların dışındaki parametreler
Visual Studio Code'u (vscode) varsayılan git düzenleyiciniz yapmak için
git config --global core.editor "code --wait"
Ve komut satırını kullanarak tasarımcılarla çalışıyorsanız Pico ve kısa yolları bilmiyorum;)
git config --global core.editor "pico"
Veya
export VISUAL=pico
export EDITOR=pico
git config --global core.editor "atom --wait"
Atomun yukarıdakilerin çalışması için komut satırından çalışacak şekilde yapılandırılması gerekir:
OS X : Atom komutlarından kabuk komutlarını yükle: menü çubuğu> Atom> Kabuk Komutlarını Kur
Windows : eylem gerekmez - atom varsayılan olarak komut satırından çalışacak şekilde yapılandırılmıştır
Bu komutu çalıştırın:
$ git config --global core.editor "/Applications/Sublime\ Text\ 2.app/Contents/SharedSupport/bin/subl"
Ya da sadece:
$ git config --global core.editor "subl -w"
-w
parametresini de destekler . Örneğin. $ git config --global core.editor "code -w"
. Temiz şeyler
git config --global core.editor notepad.exe
İşleme mesajınızı kaydetmek için Ctrl+ Stuşuna basın . Atmak için not defteri penceresini kaydetmeden kapatmanız yeterlidir.
Kaydetme kısayoluna basarsanız, ardından iptal etmeye karar verirseniz, Dosya-> Farklı kaydet'e gidin ve açılan iletişim kutusunda "Kayıt türü" nü "Tüm dosyalar (*. *)" Olarak değiştirin. "COMMIT_EDITMSG" adlı bir dosya göreceksiniz. Silin ve not defteri penceresini kapatın.
Düzenleme: Alternatif olarak ve daha kolay bir şekilde, açık not defteri penceresinden tüm içeriği silin ve kaydet düğmesine basın. ( yorum için teşekkürler mwfearnley !)
Ben taahhüt mesajları not defteri gibi küçük yazma için düşünüyorum en iyi hizmet, çünkü basit, pencereleri ile, hiçbir zaman açılır. Yüce bile bir sürü eklenti ve malzeme olduğunda kovulmak için bir iki saniye sürebilir.
\r\n
(Windows'ta newline) ve \n
(linux'da newline, ayrıca Git için varsayılan ) ile ilgili olduğunu tahmin ediyorum .
core.editor = 'notepad' .git/COMMIT_EDITMSG --wait
varsayılan düzenleme mesajını açar ve kaydeder ve böylece "farklı kaydet" gerekmez böylece böyle satır eklemek
Bu, bu Soruya gelen ve vim dışında bir editörü bağlamak isteyebilecek insanlar için bir cevap sağlar.
Bağlantılı kaynak, Github tarafından , SO (bu dahil) ile ilgili cevaplar olmasa bile, editörler güncellendiğinde güncel tutulacaktır.
Metin Editörlerini git ile ilişkilendirme
Github'un gönderisi, git ile en iyi şekilde çalışması için her düzenleyiciye özgü seçenekler / bayraklar dahil olmak üzere çeşitli editörler için komut satırınıza tam olarak ne yazacağınızı gösterir.
Notepad ++:
git config --global core.editor "'C:/Program Files (x86)/Notepad++/notepad++.exe' -multiInst -notabbar -nosession -noPlugin"
Yüce metin:
git config --global core.editor "'c:/Program Files/sublime text 3/subl.exe' -w"
Atom:
git config --global core.editor "atom --wait"
Yukarıdaki komutlar, düzenleyicinizin bir Windows makinesi için varsayılan dizine yüklendiğini varsayar.
Komutlar temel olarak çift tırnak arasına metni .gitconfig
ana dizininize ekler .
Bir windows makinesinde C:\Users\your-user-name
, kullanıcı adınızın oturum açma adı olduğu ev olması muhtemeldir .
Komut satırından, yazarak bu dizine ulaşabilirsiniz cd ~
.
örneğin, yukarıdaki komut aşağıdaki [core]
bölümün altına aşağıdaki satırı ekler :
[core]
editor = 'C:/Program Files/sublime text 3/subl.exe' -w
Farklı bir düzenleyiciniz varsa, yukarıdaki yöntemlerden birini kullanarak düzenleyicinizin yolunu değiştirmeniz yeterlidir. (ve umarım en iyi kullanım için bayrak gerekmez.)
Emacs kullanıcıları için
.emacs
:
(server-start)
shellrc
:
export EDITOR=emacsclient
git config --global core.editor "emacs -nw"
git config --global core.editor "emacs -nw -q"
, nerede -q
atlama dosyaları atlar.
Windows'ta bu talimatları izlemek için Git for Windows uygulamasını yüklediğinizden emin olun . Windows'da Git Bash'ı Linux gibi hissetmek için kullanmayı seviyorum.
İlk olarak, Git'i düzenleyiciyi her çağırdığında ayarlamak istediğimiz özel proje ayarlarını belirleyebilmemiz için özel bir Yüce Metin projesi oluşturmak istiyoruz. Örneğin, normalde cetvelimi çoğu projede 120 karaktere ayarladım, ancak Git taahhüt mesajları için 72 karakter olmasını istiyorum, böylece git log
veya aradığınızda bir terminale güzel uyuyor git lg
.
Yüce Metin'i açın ve yeni bir anonim proje oluşturmak için "Dosya" → "Yeni Pencere" menüsüne gidin . "Proje" → "Projeyi Farklı Kaydet ..." menüsüne gidin ve kaydetmek için bir yer seçin. Linux'ta Linux giriş dizinime dosya adıyla kaydettim .gitconfig.sublime-project
. Onun yolu nedenle: ~/.gitconfig.sublime-project
. Windows'ta da ana dizininize kaydedin, örneğin: C:\Users\MY_USER_NAME\.gitconfig.sublime-project
Şimdi proje ayarlarını düzenlemek için "Proje" → "Projeyi Düzenle " menüsüne gidin . Aşağıdakileri yapıştırın ve ayarları kaydedin. İsterseniz proje ayarlarınız için başka düzenlemeler yapın.
{
// For folder settings help see here: https://www.sublimetext.com/docs/3/projects.html
"folders":
[
],
"settings":
{
// Disables horizontal scrolling if enabled.
// May be set to true, false, or "auto", where it will be disabled for
// source code, and otherwise enabled.
"word_wrap": false,
// Set to a value other than 0 to force wrapping at that column rather than the
// window width
"wrap_width": 0,
// Columns in which to display vertical rulers
"rulers": [72, 50], //72 is recommended by git for commit message content, and 50 for commit titles
// The number of spaces a tab is considered equal to
"tab_size": 4,
// Set to true to insert spaces when tab is pressed
"translate_tabs_to_spaces": true,
},
"build_systems":
[
]
}
Şimdi .gitconfig
dosyayı düzenleyerek Git tarafından kullanılacak düzenleyiciyi ayarlamamız gerekiyor .
Bunun kullanıcı kopyanız yer alacak ~/.gitconfig
. Bu dosyayı açın ve aşağıdaki satırları ekleyin. Yukarıda oluşturduğunuz Git projesine uygun yol adını kullandığınızdan emin olun! Kullanıyorum ~/.gitconfig.sublime-project
.
[core]
editor = subl --project ~/.gitconfig.sublime-project --wait
--wait
O üzerinde devam etmeden önce dosyayı kapatmak kadar beklemek Git zorlar gibi önemlidir. --project
Hat Git Sublime Text her açışında açtığınız istediğiniz proje Sublime Text anlatmak önemlidir.
@ Digitaldreamer'ın yukarıdaki cevabı ( https://stackoverflow.com/a/2596835/4561887 ) subl
uyarınca , " çalıştırılabilir dosyanın tam yolu ile değiştirilebilir, ancak [takma ad subl
] genellikle [Sublime] doğru bir şekilde yüklendiğinde kullanılabilir."
Windows için, önce arka plan bilgileri için Linux talimatlarını okuyun. Şimdi neredeyse aynı bir şey yapacağız.
(İSTEĞE BAĞLI: subl
Git Bash'te kullanmak için bir takma ad oluşturun ):
Bir metin düzenleyici açın (örneğin, Not Defteri, Notepad ++, Yüce Metin, Geany vb.) Ve ana dizininizde ".bash_profile" adlı bir dosya oluşturun. Onun yolu bu nedenle olacak: C:\Users\MY_USER_NAME\.bash_profile
. Aşağıdakileri içine kaydedin:
alias subl="/c/Program\ Files/Sublime\ Text\ 3/subl.exe"
Bu subl
, artık Yüce Metni kolayca açmak için Windows için Git Bash'ta kullanabileceğimiz adlı bir Git Bash takma adı oluşturur . Bu adım gerekli değildir, ancak genel Git Bash kullanımı için kullanışlıdır. Şimdi subl .
örneğin, mevcut dizininizde yeni bir Yüce Metin projesi açmak için Git Bash'te arayabilirsiniz .
(ZORUNLU):
Düzenleme .gitconfig
dosyası ana dizinde bulunan: C:\Users\MY_USER_NAME\.gitconfig
, buna aşağıdaki ekleyerek. Yukarıdaki Linux talimatlarındaki küçük değişikliklere dikkat edin:
[core]
editor = 'C:/Program Files/Sublime Text 3/subl.exe' --project ~/.gitconfig.sublime-project --wait
/
DEĞİL kullanın \
! ( Bunu görmeme yardım ettiğin için teşekkürler VonC ).subl
Yukarıda Git Bash için yaptığımız takma adımız burada çalışmıyor, bu yüzden Linux örneğinde yaptığımız gibi kullanamazsınız, bunun yerine yukarıda gösterildiği gibi tüm yolu belirtmeniz gerekir.~
Sembol, ancak, yine de Windows ana dizine almak için buraya çalışır.Bu, git commit
mesajlar için sözdizimi vurgulama ve genel Git için komut satırını tercih ettiğim için ( git blame
Sublime Text'de sık kullandığım) veya git commit
( Sublime Text'de kullanmıyorum) gibi diğer Git komutlarına erişim sağlar. Bu cevabın altındaki yorumlarımda bahsettiğim gibi).
Bir paket kurmak için: İlk olarak, “Paket Kontrolü” nin kurulu olduğundan emin olun. Ardından, Ctrl+ Shift+ P(Araçlar → Komut Paleti ile aynı) tuşlarına basın ve “Paket Kontrolü: Paketi Kur” bölümünün tamamını veya bir kısmını yazın, ardından tuşuna basın Enter. Gelen arama kutusunda, "Git" paketini arayın ve Enterotomatik olarak yüklemek için üzerine tıklayın veya üzerine tıklayın.
Kurulduktan sonra, Ctrl+ Shift+ Psonra "git" araması, şimdi Sublime Text içinde dahili olarak kullanabileceğiniz Git komutlarını getirecektir git blame
.
Şimdi git commit
, örneğin, komut satırından normal olarak çağırdığınızda , Sublime Text, .gitconfig.sublime-project
o projenin ayarlarıyla yukarıda oluşturduğumuz şekilde açılacaktır ! Siz bir paragraf yazarken, yumuşak sözcük kaydırma kapalı olduğundan ayarladığımız cetveli aştığını fark edeceksiniz. Her satırın sonunda otomatik olarak eklenen sert dönüşlerle sert sarmayı zorlamak için, imlecinizi otomatik olarak sarılmasını istediğiniz uzun satıra getirin ve Alt+ tuşuna basın Q. Şimdi 72 karakterde sert bir şekilde sarar / katlanır, bu da yukarıdaki proje ayarlarının "cetvelleri" parametresinde ayarladığımız şeydir.
Şimdi, tamamlama mesajınızı Ctrl+ ile kaydedin Sve (tamamlamak için git commit
) Ctrl+ Shift+ ile çıkın W.
Bitti!
Git Commit
sözdizimi türü var. Özel "yüce metin projesi" adımını şimdi atlayabilirsiniz.
sublime
ile birlikte kullanırsanız git
ve kullanırsanız trim_trailing_white_space_on_save
yama eklemek için bir takma ad eklemek istersiniz, çünkü arka boşlukları kaldırmak, yama düzenlemelerini çok anlamlı kırar. Bu, şöyle bir şeyle başarılabilir:git config --global alias.patch "-c core.editor=vim add --patch"
Diğer tüm GUI uygulamaları gibi, mvim'i bekleme bayrağıyla başlatmanız gerekir.
git config --global core.editor "mvim --remote-wait"
--remote-wait-silent
hata mesajı önlemek için :)
Sadece dene EDITOR=vim git commit
.
Veya export EDITOR=vim
EDITOR'unuzu bashrc'nizde vim olarak ayarlayabilirsiniz .
git config --global core.editor "open -n -W -a TextWrangler"
Ayrıca, "TextWrangler> Tercihler> Uygulama> TextWrangler aktif olduğunda:" ayarınızın "Hiçbir şey yapma" olarak ayarlandığından emin olun
Bu, Mac app store'dan TextWrangler 5.0.2 ile OS X 10.11.4 üzerinde çalışıyor.
Açıklama:
-N vasıta yeni bir örneğini açın.
-W vasıta mesaj taahhüt olarak düzenlenmiş dosyasının içeriğini kullanmadan önce uygulama çıkar kadar beklemek.
-A TextWrangler aracı dosyasını açmak için TextWrangler uygulamasını kullanın.
Daha man open
fazla ayrıntı için Mac Terminal uygulamanıza bakın.
git config --global core.editor "edit -w"
. Bu işlem, yürütme iletisini geçerli örnekte açar ve yalnızca bu gönderme iletisi belgesini kapatır kapatmaz, işleme devam edilir.
Kullanırken etkileşimli rebase ( ) yapabilmek için değeri git-review
değiştirmek zorunda kaldı :sequence.editor
git rebase -i -p
git config --global sequence.editor "gvim" # or whatever your prefer
gvim
gerektirir: apt install vim-gtk
Mac OS X için, TextEdit veya metin için doğal çevre düzenleyicisini kullanma:
git config --global core.editor "open -W -n"
Buraya tek seferlik bir çözüm aramaya geldiğim için (benim durumumda, genellikle kullanıyorum vim
ama bu bir kez VS Kodu kullanmak istedim) ve tek bir komut için ve diğerleri de bilmek isteyebilir:
GIT_EDITOR='code -w' git rebase -i …
İşte sadece bağlam için benim git
/ hub
versiyonum:
git version 2.24.2 (Apple Git-127)
hub version 2.14.1
IntelliJ kullanıcıları için
Git rebase'i çalıştırmaya çalışırken şu hatayı alıyordum: 'ipucu: Editörünüzün dosyayı kapatmasını bekliyorum ... code -n -w: code: komut bulunamadı hatası: Editörün koduyla ilgili bir sorun oluştu -n -w '.'
IntelliJ Git ile ilişkilendirmeye çalışırken aynı hata ortaya çıktı:
Sorun benim ortam PATH değişkeni eklenen komut kodu yoktu oldu . Ve terminalimden Visual Studio Code kullanmak istemiyordum. Bu yüzden "komut bulunamadı" komutunu verdi. Bunu silerek çözdüm
editör = kod -n -w
.gitconfig dosyamın çekirdek bölümünden. Git tekrar düzgün çalıştı.
Bu, taahhütlerinizi düzenlemek istediğinizde Textmate düzenleyicisini açar. Textmate komut satırı araçlarının yüklenmesini gerektirir.
git config --global core.editor "mate -w"
git config --global core.editor "/usr/local/bin/mate -w"
'K.sh' adlı bir dosya oluşturun, ana dizininize (~) aşağıdaki metni ve yeri ekleyin:
winpty "C:\Program Files (x86)\Kinesics Text Editor\x64\k.exe" $1
Git istemine şunu yazın:
git config --global core.editor ~/k.sh