JavaScript Geliştirmenizi Windows'ta Bash'e Taşıma
Yayınlanan: 2022-03-10Bash terminalleri olmadan yaşayamayan insanlardan biriyim. Bu tek gerçek, Windows'ta ön uç çalışması yapmamı zorlaştırdı. Microsoft'ta çalışıyorum ve Mac kullanıyorum. Birkaç yıl önce yeni Surface donanım serisi çıkana kadar fark etmedim: Bunlardan birine sahip olmalıyım .
Ben de bir tane aldım. Kesin olarak Windows 10 çalıştıran bir Surface Book 2. Şu anda bu makaleyi bunun üzerine hazırlıyorum. Peki ya benim tatlı, tatlı Bash istemim? Yanımda getirdim tabii.
Bu makalede, Windows 10'daki yeni teknolojinin Windows'ta tam bir Linux terminali çalıştırmanıza nasıl olanak sağladığına derinlemesine bakacağım. Ayrıca size harika terminal kurulumumu ("benim" tarafından "en iyi" olarak adlandırıldı) ve sizin de kendi Windows/Linux geliştirme makinenizi nasıl kurabileceğinizi göstereceğim.
Bu Surface donanımlarından bazılarını arzuluyorsanız ancak bir Linux terminali olmadan yaşayamıyorsanız, doğru yere geldiniz.
Not : Bu yazının yazıldığı sırada, bu makaledeki birçok öğe, Windows dahil olmak üzere çeşitli öğelerin "önizleme" veya "içeriden öğrenenler" yapılarını kullanmanızı veya bunlara geçmenizi gerektirecektir. Bunların çoğu, gelecekte bir noktada ana Windows yapısında olacaktır.
Linux için Windows Alt Sistemi (WSL)
Linux için Windows Alt Sistemi veya “WSL”, Linux'u Windows üzerinde çalıştırmanızı sağlayan şeydir. Ama bu çılgın bilim tam olarak nedir?
WSL, şu anki enkarnasyonunda, Linux sistem çağrılarını Windows sistem çağrılarına dönüştüren bir çeviri katmanıdır. Linux, WSL'nin üzerinde çalışır. Bu, Windows'ta Linux almak için üç şey yapmanız gerektiği anlamına gelir:
- WSL'yi etkinleştirin,
- Linux'u yükleyin,
- Her zaman bir listeye üç öğe ekleyin.
Görünen o ki, bu çeviri katmanı biraz yavaş kalıyor - bir nevi benim slice
splice
ihtiyacım olduğunu hatırlamaya çalışıyorum gibi. Bu, özellikle WSL dosya sistemini okuyup yazarken geçerlidir. Herhangi bir uygun npm install
binlerce dosyayı makinenize kopyalayacağından, bu web geliştiricileri için büyük bir sorundur. Yani, seni bilmem ama ben kendi tellerimi sola çevirmeyeceğim.
WSL'nin 2. versiyonu farklı bir hikaye. Çeviri katmanını kullanmak yerine Windows'ta bir sanallaştırma çekirdeği kullandığından, mevcut sürümden çok daha hızlıdır. “Oldukça daha hızlı” dediğimde, çok, çok daha hızlı demek istiyorum. Tıpkı benim kadar hızlı Google'da "birleştirmeye karşı dilim" araması gibi.
Bu nedenle, WSL 2'nin nasıl kurulacağını göstereceğim. Yazma sırasında, bunun için Windows'un “Insider” yapısında olmanız gerekecek.
Her şeyden önce: Windows 10'da WSL'yi etkinleştirmek için bu kısa kılavuzu izleyin ve Windows sürüm numaranızı kontrol edin.
Yükledikten sonra, Windows tuşuna basın ve “windows insider” yazın. Ardından “Windows Insider Program Ayarları”nı seçin.
Hangi "yüzüğü" takmak istediğiniz konusunda birkaç farklı seçeneğiniz olacak. Tanıdığım birçok insan hızlı ringde. Yine de dikkatli bir adamım. Ben çocukken oyun parkındaki kaydıraktan midem yanlara tutunarak aşağı inerdim. Bu yüzden yavaş halkada kalıyorum. Birkaç aydır üzerinde çalışıyorum ve normal Windows'tan daha fazla yıkıcı veya kararsız olmadığını görüyorum.
WSL 2'yi istiyorsanız, ancak slaytta ölmek istemiyorsanız bu iyi bir seçenek.
Not : Bu makaleyi yayınladıktan sonra WSL 2'nin aslında slow ringde olmadığını öğrendim. Onu almak için hızlı ringde olmanız gerekecek. Bu makaleyi yazma sürecinde bir noktada hızlı ringde olmalıyım. O kadar hızlı yüzük ki. Slaytta iyi şanslar!
Ardından, WSL sürüm 2'nin gerektirdiği Windows'ta “Sanal Makine Platformu” özelliğini etkinleştirmeniz gerekiyor. Bu ekrana ulaşmak için Windows tuşuna basın ve “windows özellikleri” yazın. Ardından “Windows Özelliklerini Aç veya Kapat”ı seçin. “Sanal Makine Platformu”nu seçin. “Linux için Windows Alt Sistemi” seçeneği zaten etkinleştirilmiş olmalıdır.
Artık WSL etkinleştirildiğine göre, Linux'u yükleyebilirsiniz. Bunu, ironik bir şekilde, doğrudan Windows Mağazası'ndan yaparsınız. Sadece 2019'da “Windows mağazasından Linux kurmanızı” öneririm.
Aralarından seçim yapabileceğiniz birkaç farklı dağıtım var, ancak Ubuntu, daha sonra yapılandıracağımız tüm araçlarda en çok desteklenen olacak - VS Kodu dahil. Buradan itibaren gelen tüm talimatlar, bir Ubuntu kurulumunu varsayar. Farklı bir dağıtım kurarsanız, tüm bahisler kapalıdır.
Windows Mağazasından “Ubuntu”yu arayın. Aralarından seçim yapabileceğiniz üç tane olacak: Ubuntu, Ubuntu 18.04 ve Ubuntu 16.04. Ubuntu, bu 04 küçük sürüm numarasını gerçekten seviyor, değil mi?
“Ubuntu” dağıtımı (bu ekran görüntüsündeki ilki) “meta sürüm” veya daha doğrusu sadece en son sürüme işaret eden bir yer tutucudur. Şu an itibariyle, bu 18.04.
Meta sürümle gittim çünkü daha sonra size Windows Gezgini ile Linux dosya sistemine nasıl göz atacağınızı göstereceğim ve sadece “Ubuntu” yerine sürücü adı olarak “Ubuntu 18.04” kullanmak biraz dağınık.
Bu yükleme, internet bağlantınıza bağlı olarak oldukça hızlıdır. Sadece yaklaşık 215 megabayt, ama ben burada bir gigabit bağlantısındayım ve birinin gigabit bağlantısında olup olmadığını nasıl anlarsınız? Endişelenme, sana söylerler.
Kurulduktan sonra, artık başlat menünüzde bir “Ubuntu” uygulamasına sahip olacaksınız.
Buna tıklarsanız, bir Bash terminali alırsınız!
Teknolojinin mucizesinin tadını çıkarmak için bir dakikanızı ayırın.
Varsayılan olarak, WSL sürüm 1'de çalışıyor olacaksınız. Sürüm 2'ye yükseltmek için bir PowerShell terminali açmanız ve bir komut çalıştırmanız gerekir.
“Windows” tuşuna basın ve “Powershell” yazın.
PowerShell terminalinden, wsl --list --verbose
çalıştırarak WSL'nin hangi sürümüne sahip olduğunuzu görebilirsiniz.
Sürüm 1'i gösteriyorsanız, --set-version
komutunu çalıştırmanız ve örneğin adını (Ubuntu) ve istediğiniz sürümü (2) belirtmeniz gerekir.
wsl --set-version Ubuntu 2
Bu, makinenizin ne kadar et olduğuna bağlı olarak biraz zaman alacaktır. Benimki “birkaç dakika” aldı ya da aldı. Tamamlandığında, WSL'nin en son ve en iyi sürümünde olacaksınız.
Linux'ta Sizin Beyniniz… Windows'ta.
Linux, Windows değildir. WSL, bir Windows işletim sisteminin üstünde bir bash istemi değildir. Kendi klasör yapısı ve kurulu uygulamaları ile başlı başına tam bir işletim sistemidir. Node'u Windows yükleyici ile kurarsanız, Node Linux'ta kurulu olmadığı için Linux'ta node
yazmak başarısız olacaktır. Windows'ta yüklü.
WSL'nin gerçek büyüsü, Windows ve Linux'u makinenizde tek bir dosya sistemi olarak görünecek şekilde sorunsuz bir şekilde bağlamasında yatmaktadır.
Dosya ve Klasör Gezinmesi
Varsayılan olarak, Ubuntu terminali sizi Linux ana dizininize (veya /home/your-user-name
) bırakır. /mnt/c
'ye giderek Windows tarafına geçebilirsiniz.
Burada bazı izinlerin reddedildiğine dikkat edin. Bu dosyalara erişmek için Ubuntu simgesine sağ tıklamam ve “Yönetici Olarak Çalıştır” seçeneğine tıklamam gerekir. Windows yükseltilmiş izinleri bu şekilde yapar. Windows'ta sudo yok.
Uygulamaları Başlatma
Ubuntu terminalinden herhangi bir Windows uygulamasını başlatabilirsiniz. Örneğin, Unbuntu terminalinden Windows Gezgini'ni açabilirim.
Bu da tersine çalışır. Linux tarafında kurulu herhangi bir uygulamayı çalıştırabilirsiniz. Burada Windows komut satırından Linux'a yüklenen “fal”ı yürütüyorum. (Çünkü rastgele, anlamsız servetler olmadan uygun bir Linux kurulumu değildir.)
İki farklı işletim sistemi. İki farklı dosya sistemi. İki farklı yüklü uygulama grubu. Bunun nasıl kafa karıştırıcı olabileceğini görüyor musun?
Her şeyi düz tutmak için, tüm JavaScript geliştirme dosyalarınızı ve araçlarınızı şeylerin Linux tarafında kurulu halde tutmanızı tavsiye ederim. Bununla birlikte, Windows ve Linux arasında geçiş yapma ve her iki sistemden dosyalara erişme yeteneği, WSL'nin temel büyüsüdür. Unutmayın, çünkü tüm bu kurulumu standart bir Linux kutusundan daha iyi yapan şey budur.
Geliştirme Ortamınızı Ayarlama
Şu andan itibaren, Windows kurulumunda harika bir Linux yarattığını düşündüğüm şeyler için size üzerinde düşünülmüş öğelerin bir listesini vereceğim. Sadece unutmayın: benim görüşlerim sadece bu. Görüşler Sadece tüm fikirlerim gibi, onlar da %100 doğru.
Daha İyi Bir Terminal Elde Etmek
Evet, Ubuntu'yu kurduğunuzda bir terminaliniz var. Aslında Linux dağıtımınıza bağlı Windows Konsolu. Kötü bir konsol değil. Yeniden boyutlandırabilir, kopyala/yapıştır özelliğini açabilirsiniz (ayarlardan). Ancak sekmeler veya yeni pencereler açamazsınız. Pek çok insanın Mac'te yedek terminal programları kullanması gibi (Hyper kullanıyorum), Windows için başka seçenekler de var. Github'daki Müthiş WSL listesi oldukça kapsamlı bir liste içeriyor.
Bunların hepsi iyi emülatörlerdir, ancak Windows'u oldukça iyi bilen kişiler tarafından oluşturulmuş yeni bir seçenek var.
Microsoft, “Windows Terminal” adlı yeni bir uygulama üzerinde çalışıyor.
Windows Terminal, Windows Mağazasından yüklenebilir ve şu anda önizleme modundadır. Bir süredir kullanıyorum ve yeterli özelliklere sahip ve tam bir onay vermem için yeterince kararlı.
Yeni Windows Terminali tam bir sekme arayüzü, kopyala/yapıştır, çoklu profiller, şeffaf arka planlar, arka plan görüntüleri ve hatta şeffaf arka plan görüntüleri içerir. Terminalinizi kişiselleştirmeyi seviyorsanız bu bir tarla günü ve ben bu çuval yarışını kazanmaya geldim.
İşte mevcut terminalim. Burada bazı önemli ince ayarları gözden geçireceğiz.
Windows terminali oldukça özelleştirilebilir. Sol üstteki “ ⌄ ” okuna (“ + ” işaretinin yanında) tıklamak “Ayarlar”a erişmenizi sağlar. Bu bir JSON dosyası açacaktır.
Bağla Kopyala/Yapıştır
Dosyanın en üstünde tüm anahtar bağlamalar bulunur. Yaptığım ilk şey, "kopyala" yı Ctrl + C'ye eşlemek ve Ctrl + V'ye yapıştırmaktı. Stack Overflow'dan anlamadığım komutları başka nasıl kopyalayıp yapıştıracağım?
{ "command": "copy", "keys": ["ctrl+c"] }, { "command": "paste", "keys": ["ctrl+v"] },
Sorun, Ctrl + C'nin zaten SIGINT ile veya Linux'ta Interrupt/kill komutuyla eşlenmiş olmasıdır. Windows için, Kopyala/Yapıştır'ı sırasıyla Ctrl + Shift + C ve Ctrl + Shift + V ile eşleyerek bunu işleyen birçok terminal var. Sorun şu ki, kopyala/yapıştır, Windows'ta her yerde Ctrl + C / Ctrl + V'dir . Bir şeyleri kopyalamaya çalışırken terminalde Ctrl + C'ye tekrar tekrar basmaya devam ettim. Bunu yapmayı bırakamadım.
Windows terminali bunu farklı şekilde ele alır. Vurgulanan metniniz varsa ve Ctrl + C tuşlarına basarsanız, metni kopyalayacaktır. Çalışan bir işlem varsa, yine de SIGINT komutunu gönderir ve onu keser. Bu, Windows Terminalinde Ctrl + C / Ctrl + V'yi Kopyala/Yapıştır ile güvenli bir şekilde eşleyebileceğiniz anlamına gelir ve işlemleri kesintiye uğratma yeteneğinizi etkilemez.
Kopyala/Yapıştır'ın bu kadar çok kalp ağrısına neden olabileceğini kim düşündü?
Varsayılan Profili Değiştir
Varsayılan profil, yeni bir sekme açıldığında gelen profildir. Varsayılan olarak, bu Powershell'dir. Aşağı kaydırıp Linux profilini bulmak isteyeceksiniz. wsl.exe -d Ubuntu
açan budur. GUID'ini kopyalayın ve defaultProfile
ayarına yapıştırın.
Bu iki ayarı, görmeyi kolaylaştırmak için yan yana olacak şekilde taşıdım:
Arka Planı Ayarla
Arka planımın, sağ köşede düz bir logo ile koyu düz bir renk olmasını seviyorum. Bunu yapıyorum çünkü logonun parlak ve görünür olmasını istiyorum, ancak metin şeklinde değil. Bunu kendim yaptım, ancak Simple Desktops'ta seçebileceğiniz harika bir düz resim koleksiyonu var.
Arka plan, backgroundImage
özelliğiyle ayarlanır:
"backgroundImage": "c:/Users/YourUserName/Pictures/earth.png"
Ayrıca “akrilik” adlı bir ayar fark edeceksiniz. Arka planın opaklığını ayarlamanızı sağlayan şey budur. Düz bir arka plan renginiz varsa, bu oldukça basittir.
"background": "#336699", "useAcrylic": true, "acrylicOpacity": 0.5
arcylicOpacity
ayarını backgroundImageOpacity
ile birleştirerek bunu bir arka plan görüntüsüyle de yapabilirsiniz:
"backgroundImage": "c:/Users/username/Pictures/earth-and-stars.png", "useAcrylic": true, "acrylicOpacity": 0.5
Temam için şeffaflık her şeyin sessiz görünmesini sağlıyor, bu yüzden useAcrylic
false
olarak tutuyorum.
Yazı Tipini Değiştir
Windows Terminalini oluşturan ekip aynı zamanda “Cascadia Code” adlı yeni bir yazı tipi üzerinde çalışıyor. Bu yazının yazıldığı tarihte mevcut değildir, bu nedenle bunun yerine varsayılan Windows yazı tipini alırsınız.
Windows Terminalindeki varsayılan yazı tipi “Consolas”tır. Bu, Windows komut satırının kullandığı yazı tipiyle aynıdır. Bu gerçek Ubuntu hissini istiyorsanız, Chris Hoffman resmi Ubuntu Mono yazı tipini nasıl kurabileceğinize işaret ediyor.
İşte farkı görebilmeniz için öncesi ve sonrası:
"fontFace": "Ubuntu Mono"
Oldukça benzer görünüyorlar; ana fark, terminali biraz daha sıkı ve temiz yapan Ubuntu Mono'nun aralığındadır.
Renk şemaları
Renk şemalarının tümü, ayarlar dosyasının altında bulunur. Temel olarak “Campbell” renk şemasını kopyaladım. Renkleri isimleriyle eşleştirmeye çalışıyorum ama hile yapmaktan da korkmuyorum. “#ffffff”i “mavi” ile eşleyeceğim - umurumda bile değil.
“Dünya” adını verdiğim bu özel şemayı beğendiyseniz, tüm bu karışıklığı bir ekran görüntüsünden manuel olarak kopyalamanıza gerek kalmaması için bu özü bir araya getirdim.
Not : Renk önizlemeleri, VS Code için "Color Highlight" uzantısı sayesinde gelir.
Varsayılan Başlangıç Dizinini Değiştir
Varsayılan olarak, WSL profili sizi Windows tarafındaki ana dizininize bırakır. Bu makalede önerdiğim kuruluma dayanarak, bunun yerine Linux home
klasörünüze bırakılması tercih edilir. Bunu yapmak için, "Ubuntu" profilinizdeki startingDirectory
ayarını değiştirin:
"startingDirectory": "\\\\wsl$\\Ubuntu\\home\\burkeholland"
Oradaki yola dikkat edin. WSL'ye Windows komut satırından erişmek için bu yolu (ekstra kaçış eğik çizgileri hariç) kullanabilirsiniz.
Zsh/Oh-My-Zsh'yi yükleyin
Zsh ve Oh-My-Zsh'ı daha önce hiç kullanmadıysanız, gerçek bir muamele içindesiniz. Zsh (veya “Z Shell”), Linux için bir yedek kabuktur. Bash'in ima edilen dizin değiştirme ( cd
yazmanıza gerek yok), daha iyi tema desteği, daha iyi istemler ve çok daha fazlası dahil olmak üzere temel yeteneklerini genişletir.
Zsh'i kurmak için, Linux kurulumunuzla birlikte kutudan çıkan apt paket yöneticisi ile birlikte alın:
sudo apt install zsh
curl kullanarak oh-my-zsh yükleyin. Oh-my-zsh, eklentiler, temalar ve sayısız klavye kısayoluyla kabuk deneyimini daha da geliştiren zsh için bir dizi yapılandırmadır.
sh -c "$(curl -fsSL https://raw.githubusercontent.com/robbyrussell/oh-my-zsh/master/tools/install.sh)"
Ardından, varsayılan kabuğunuzu Zsh olarak değiştirmek isteyip istemediğinizi soracaktır. Yapıyorsunuz, bu yüzden olumlu cevap verin ve artık Zsh ve Oh-My-Zsh ile çalışmaya hazırsınız.
İstemin artık çok daha temiz olduğunu fark edeceksiniz. ~/.zshrc
dosyasındaki temayı değiştirerek bu istemin görünümünü değiştirebilirsiniz.
VIM'e benzeyen nano
ile açın, ancak gerektiğinde bir şeyleri düzenleyebilir ve çıkabilirsiniz.
nano ~/.zshrc
Temayı belirleyen satırı değiştirin. Üzerinde tüm tema listesinin bulunduğu bir URL var. Bence "bulut" olanı güzel. Ve sevimli.
.zshrc
yapılan değişiklikleri almak için kaynak sağlamanız gerekir:
source ~/.zshrc
Not : "agnoster" gibi glifler gerektiren bir tema seçerseniz, Ubuntu Mono'nun glifleri olan powerline ile aşılanmış bir sürümüne ihtiyacınız olacaktır. Aksi takdirde, terminaliniz yüzünüzü klavyede ezdiğiniz gibi tuhaf karakterlerle dolu olacaktır. Nerd Fonts, oldukça iyi çalışıyor gibi görünen birini sunuyor.
Artık sadece dizin adını girerek dizin değiştirmek gibi şeyler yapabilirsiniz. cd
gerekmez. Bir dizine geri dönmek ister misin? Sadece bir ..
. Dizin adının tamamını yazmanıza bile gerek yok, sadece ilk birkaç harfi yazıp sekmeye basın. Zsh, aramanızla eşleşen tüm dosyaların/dizinlerin bir listesini verecektir ve bunlar arasında sekme yapabilirsiniz.
Düğüm Kurulumu
Bir web geliştiricisi olarak muhtemelen Node.js'yi kurmak isteyeceksiniz. Web geliştirme yapmak için Node'u yüklemeniz gerekmiyor sanırım, ancak 2019'da kesinlikle öyle hissettiriyor!
İlk içgüdünüz, yapabileceğiniz apt
ile düğüm yüklemek olabilir, ancak iki nedenden dolayı pişman olursunuz:
- Node'un apt üzerindeki sürümü feci şekilde güncel değil;
- İzin sorunlarıyla karşılaşmamak için Node'u bir sürüm yöneticisiyle yüklemelisiniz.
Bu sorunların her ikisini de çözmenin en iyi yolu nvm'yi (Düğüm Sürüm Yöneticisi) kurmaktır. zsh
yüklediğinizden, nvm eklentisini zshrc dosyanıza ekleyebilirsiniz ve gerisini zsh halleder.
İlk olarak, zsh-nvm
klonlayarak eklentiyi kurun. (Endişelenmeyin, Git, Ubuntu kurulumunuzda standart olarak gelir.)
git clone https://github.com/lukechilds/zsh-nvm ~/.oh-my-zsh/custom/plugins/zsh-nvm
Ardından ~/.zshrc
dosyasına eklenti olarak ekleyin.
`nano ~/.zshrc` plugins (zsh-nvm git)
zshrc dosyasını source ~/.zshrc
yeniden kaynaklamayı unutmayın; nvm'nin yüklendiğini göreceksiniz.
Artık düğümü nvm ile kurabilirsiniz. Düğümün birden çok yan yana sürümünü kurmayı ve bunlar arasında zahmetsizce geçiş yapmayı kolaylaştırır. Ayrıca, global npm kurulumları yaptığınızda izin hatası olmaz!
nvm install --lts
Eklenti size nvm'yi kolayca yükseltme yeteneği verdiği için bunu standart nvm kurulumuna göre öneriyorum. Bu, standart "kıvırma" kurulumunda bir tür acıdır. Eklenti ile bir komut.
nvm upgrade
Otomatik Önerileri Kullanın
zsh için en sevdiğim eklentilerden biri zsh-autosuggestions. Daha önce terminalde yazdığınız şeyleri hatırlar ve tekrar yazmaya başladığınızda bunları tanır ve ihtiyacınız olabilecek satırı “otomatik olarak önerir”. Bu eklenti, hatırlayabildiğimden daha fazla işe yaradı - özellikle geçmişte kullandığım, ancak hiç hatırlayamadığım uzun CLI komutları söz konusu olduğunda.
Depoyu zsh extensions klasörüne klonlayın:
git clone https://github.com/zsh-users/zsh-autosuggestions ~/.oh-my-zsh/custom/plugins/zsh-autosuggestions
Ardından onu zsh eklentilerinize ekleyin ve zshrc dosyasını kaynaklayın:
nano ~/.zshrc # In the .zshrc file plugins(zsh-nvm zsh-autosuggestions git) source ~/.zshrc
Eklenti, zsh geçmişinizi okur, bu nedenle daha önce yazdığınız bazı komutları yazmaya başlayın ve sihri izleyin. Yukarıdaki uzun klon komutunun ilk bölümünü yazmayı deneyin.
↹ tuşuna basarsanız , komut otomatik olarak tamamlanır. ↹ tuşuna basmaya devam ederseniz, geçmişinizde eşleşme olabilecek herhangi bir komut arasında geçiş yapacaktır.
Önemli Klavye Kısayolları
Her zaman kullandığım birkaç terminal kısayolu var. Bunu, VS Kodu dahil tüm araçlarımda buluyorum. Tüm kısayolları öğrenmeye çalışmak zaman kaybıdır çünkü onları hatırlamak için yeterince kullanmazsınız.
İşte düzenli olarak kullandığım birkaç tanesi:
Terminal Kısayolu | Bu ne işe yarıyor? |
---|---|
Ctrl + L | Bu, terminali temizler ve sizi en üste geri getirir. “Clear” yazmanın karşılığıdır. |
Ctrl + U | Bu, yalnızca geçerli satırı temizler. |
Ctrl + A | İmleci komut satırının başına gönderir. |
Ctrl + E | Satırın sonuna gidin. |
Ctrl + K | İmleçten sonraki tüm karakterleri silin. |
Bu kadar! Muhtemelen öğrendiğim ve sonra unuttuğum her şey çünkü hiçbir zaman işe yaramıyor.
Git'i Yapılandırma(Hub/Lab/Whatevs)
Git Ubuntu'da gelir, bu nedenle kurulum gerekmez. Ssh anahtarlarınızın oluşturulmasını ve çalışmasını sağlamak için seçtiğiniz kaynak kontrol barındırıcınızdaki talimatları takip edebilirsiniz.
Github talimatlarında, ssh anahtarınızı kopyalamak için “kopyala” yardımcı programını kullanmanızı söylediğini unutmayın. Ubuntu'da "xcopy" komutu var, ancak burada çalışmayacak çünkü Linux ve Windows arasında pano açısından bir birlikte çalışma yok.
Bunun yerine, yürütülebilir Windows Panosu'nu kullanabilir ve doğrudan terminalden arayabilirsiniz. Metni önce cat
ile almanız ve ardından bunu Windows panosuna aktarmanız gerekir.
cat ~/.ssh/id_rsa.pub | clip.exe
Github belgeleri, ssh-agent
çalıştığından emin olmanızı söyler. Değil. Anahtarınızı aracıya eklemeye çalıştığınızda bunu göreceksiniz:
Aracıyı başlatabilirsiniz, ancak Windows'u yeniden başlattığınızda veya WSL durdurulduğunda yeniden başlatmanız gerekir. Bunun nedeni, WSL'de başlatma sistemi olmamasıdır. WSL başladığında tüm hizmetlerinizi başlatan systemd
veya başka bir süreç yoktur. WSL hala önizleme aşamasında ve ekip bunun için bir çözüm üzerinde çalışıyor.
Bu arada ister inanın ister inanmayın, bunun için de bir zsh eklentisi var. Adı ssh-agent
ve oh-my-zsh ile yüklenmiş olarak geliyor, yani yapmanız gereken tek şey .zshrc
dosyasında ona referans vermek.
zsh-nvm zsh-autosuggestions ssh-agent git
Bu, WSL'yi ilk başlattığınızda çalışmıyorsa, ssh-agent'ı otomatik olarak başlatacaktır. Dezavantajı ise, WSL her yeni başlatıldığında sizden parolanızı isteyecek olmasıdır. Bu, esasen bilgisayarınızı her yeniden başlattığınızda anlamına gelir.
VS Kodu ve WSL
WSL'nin GUI'si yoktur, bu nedenle VS Code gibi görsel bir araç yükleyemezsiniz. Bunun Windows tarafına yüklenmesi gerekiyor. Bu, Windows tarafında çalışan ve Linux tarafındaki dosyalara erişen bir programınız olduğu için bir sorun teşkil eder ve bu, tüm tuhaflıklara ve “izin reddedildi” sorunlarına neden olabilir. Genel bir kural olarak, Microsoft, Windows programlarıyla WSL tarafındaki dosyaları değiştirmemenizi önerir.
Bunu çözmek için “Remote WSL” adlı bir VS Kodu uzantısı vardır. Bu uzantı Microsoft tarafından yapılmıştır ve WSL içinde, ancak VS Kodunun içinden geliştirmenize olanak tanır.
Uzantı yüklendikten sonra, Komut Paletini açarak VS Kodunu doğrudan Ubuntu tarafına ekleyebilirsiniz (
Bu, sanki tamamen Linux tarafındaymışsınız gibi çalışmanıza izin veren yeni bir VS Kodu örneği açar. “Dosya/Aç” yapmak, Windows yerine Ubuntu dosya sistemini tarar.
VS Code'daki entegre terminal, güzel bir şekilde özelleştirilmiş zsh kurulumunuzu açar. Remote WSL uzantısını yüklediğinizde, her şey olması gerektiği gibi "çalışır".
Kodu terminalinizden kod ile açarsanız code .
, VS Kodu, WSL'den açıldığını otomatik olarak algılar ve Remote WSL uzantısını otomatik olarak ekler.
Uzak WSL ile VS Kodu Uzantıları
VS Kodu için Uzak WSL uzantısı, Linux tarafında küçük bir sunucu kurarak ve ardından buna Windows tarafında VS Kodundan bağlanarak çalışır. Bu durumda, VS Code'a yüklediğiniz uzantılar, WSL'den bir proje açtığınızda otomatik olarak görünmez.
Örneğin, VS Kodunda açık bir Vue projem var. Sözdizimi vurgulama, biçimlendirme ve benzerleri için doğru Vue uzantılarının tümüne sahip olmama rağmen, VS Kodu daha önce hiç .vue
dosyası görmemiş gibi davranıyor.
Yüklediğiniz tüm uzantılar WSL'de etkinleştirilebilir. WSL'de istediğiniz uzantıyı bulun ve "WSL'de Yükle" düğmesini tıklayın.
WSL'ye yüklenen tüm uzantılar, Uzantı Gezgini görünümünde kendi bölümlerinde görünecektir. Çok sayıda uzantınız varsa, her birini ayrı ayrı yüklemek biraz can sıkıcı olabilir. WSL'de sahip olduğunuz her uzantıyı yüklemek istiyorsanız, 'Yerel - Yüklü' bölümünün üstündeki küçük bulut indirme simgesini tıklayın.
Geliştirici Dizinlerinizi Nasıl Kurabilirsiniz?
Bu zaten fikirli bir makale, bu yüzden projelerinizi dosya sisteminizde nasıl yapılandırmanız gerektiğini düşündüğüm hakkında sormadığınız bir makale.
Tüm projelerimi Linux tarafında tutuyorum. Projelerimi “Belgelerim”e koymuyorum ve sonra WSL'den onlarla çalışmayı denemiyorum. Beynim bunu kaldıramıyor.
Linux'ta /home
klasörümün kök dizinine koyduğum /dev
adında bir klasör oluşturuyorum. Bu klasörün içinde Github depomla aynı ada sahip başka bir tane oluşturuyorum: /burkeholland
. Bu klasör, tüm projelerimin gittiği yerdir - Github'a gönderilmeyenler bile.
Farklı bir Github hesabından (örneğin “microsoft”) bir repo klonlarsam, “dev” içinde /microsoft
adında yeni bir klasör oluşturacağım. Daha sonra repoyu bunun içindeki bir klasöre klonlarım.
Temel olarak, yerel makinemde kaynak denetimiyle aynı yapıyı taklit ediyorum. Projelerin nerede olduğunu ve hangi depolara bağlı olduklarını sadece konumlarından dolayı çok daha kolay buluyorum. Çok basit, ancak her şeyi düzenli tutmama yardım etmede oldukça etkili. Ve alabileceğim tüm yardıma ihtiyacım var.
Windows Gezgini'nden Dosyalara Göz Atma
Windows tarafından Linux'ta bir dosyaya erişmeniz gereken zamanlar vardır. WSL ile ilgili güzel olan şey, bunu hala yapabilmenizdir.
Bir yol, WSL'ye eşlenmiş bir sürücü gibi erişmektir. Bir \\wsl$
ile doğrudan gezgin çubuğundan erişin:
\\wsl$
Bunu birkaç farklı nedenden dolayı yapabilirsiniz. Örneğin, bugün web mağazasında olmayan bir Chrome uzantısına ihtiyacım vardı. Bu yüzden depoyu WSL'de klonladım, ardından “Paketlenmemiş Uzantı” olarak ona gittim ve Edge'e yükledim.
Linux'ta biraz sıklıkta yaptığım bir şey, bir dosya içeren dizini doğrudan terminalden açmaktır. Bunu WSL'de de doğrudan explorer.exe
arayarak yapabilirsiniz. Örneğin, bu komut geçerli dizini Windows Gezgini'nde açar.
$ explorer.exe .
Bu komut biraz zahmetli olsa da. Linux'ta sadece open .
. ~/.zshrc
içinde bir takma ad oluşturarak aynı sihri yapabiliriz.
alias open="explorer.exe"
Liman işçisi
Tüm araçların Linux tarafında olması gerektiğini söylediğimde, bunu kastetmiştim. Buna Docker dahildir.
Kauçuğun gerçekten yolla buluşmaya başladığı yer burasıdır. Burada ihtiyacımız olan şey, Windows içinde çalışan Linux içinde çalışan Docker. Bir blog gönderisine yazdığınızda biraz Rus Yuvalama Bebeği. Gerçekte, oldukça basittir.
Windows için doğru Docker sürümüne ihtiyacınız olacak. Bu yazının yazıldığı tarih itibariyle, bu WSL 2 Tech Preview.
Yükleyiciyi çalıştırdığınızda, Linux kapsayıcıları yerine Windows kapsayıcılarını kullanmak isteyip istemediğinizi soracaktır. Kesinlikle yaparsın. Aksi takdirde, Docker'ı WSL'de çalıştırma seçeneğine sahip olmayacaksınız.
Artık sistem tepsisindeki öğeye tıklayarak ve “WSL 2 Tech Preview” öğesini seçerek WSL'de Docker'ı etkinleştirebilirsiniz:
Hizmeti başlattıktan sonra, beklediğiniz gibi Docker'ı WSL içinde kullanabilirsiniz. Docker'ı WSL'de çalıştırmak, oldukça büyük bir performans artışı ve ayrıca kaplarda soğuk başlatma süresinde bir artış sağlar.
Ayrıca VS Code için Docker uzantısını yüklemenizi tavsiye edebilir miyim? Docker kurulumunuza görsel bir arayüz koyar ve tüm bu komut satırı bayraklarını ve seçeneklerini hatırlamanız gerekmediğinden genellikle Docker ile çalışmayı kolaylaştırır.
Windows'ta Daha Fazla Bash Alın
Bu noktada, Bash'i Windows'a nasıl koyacağınız ve oraya vardığınızda nasıl çalıştığı hakkında fikir edinmelisiniz. Terminalinizi sınırsızca özelleştirebilirsiniz ve PATH değişkenlerini otomatik olarak ayarlamak, takma adlar oluşturmak, terminalinizde bir ASCII ineği almak ve çok daha fazlasını yapmak için ekleyebileceğiniz her türden rad programı vardır.
Bash'i Windows'ta çalıştırmak benim için tamamen yeni bir evrenin kapılarını açtı. Verimlilik açısından sevdiğim Windows ile geliştirici olarak güvendiğim Linux'u birleştirebiliyorum. Hepsinden iyisi, artık tek bir makine ile her iki platform için de uygulamalar geliştirebiliyorum.
Daha fazla okuma
Windows'ta Bash hakkında daha fazla bilgiyi buradan okuyabilirsiniz:
- "Windows 10 için Linux Kurulum Kılavuzu İçin Windows Alt Sistemi" Microsoft Docs
- "Windows 10'da Bash Kabuğu Nasıl Kurulur ve Kullanılır", Chris Hoffman, Nasıl Yapılır Geek
- “SSH'yi WSL ile Paylaşmak,” Drew Wilson
- Brian Ketelsen, “Linux İçin Pencere Alt Sistemiyle Çıldırmak”
- “Windows 10'un Yeni Bash Kabuğuyla Yapabileceğiniz Her Şey,” Chris Hoffman, Nasıl Yapılır Geek
Brian Ketelsen, Matt Hernandez, Rich Turner ve Craig Loewen'e bu makaledeki sabırları, yardımları ve rehberlikleri için özel teşekkürler.