Mulai menggunakan Git di Subsistem Windows untuk Linux

Git adalah sistem kontrol versi yang paling umum digunakan. Dengan Git, Anda dapat melacak perubahan yang Anda buat pada file, sehingga Anda memiliki catatan tentang apa yang telah dilakukan, dan memiliki kemampuan untuk kembali ke versi file sebelumnya jika diperlukan. Git juga membuat kolaborasi lebih mudah, memungkinkan perubahan oleh beberapa orang untuk semuanya digabungkan menjadi satu sumber.

Git dapat diinstal pada Windows DAN di WSL

Pertimbangan penting: ketika Anda mengaktifkan WSL dan menginstal distribusi Linux, Anda menginstal sistem file baru, dipisahkan dari drive Windows NTFS C:\ di komputer Anda. Di Linux, drive tidak diberi huruf. Mereka diberi titik pemasangan. Akar sistem / file Anda adalah titik pemasangan partisi akar Anda, atau folder, dalam kasus WSL. Tidak semuanya di bawah / adalah drive yang sama. Misalnya, pada laptop saya, saya telah menginstal dua versi Ubuntu (20.04 dan 18.04), serta Debian. Jika saya membuka distribusi tersebut, pilih direktori beranda dengan perintah cd ~, lalu masukkan perintah explorer.exe ., Windows File Explorer akan terbuka dan tampilkan jalur direktori untuk distribusi tersebut.

Distro Linux Jalur Windows untuk mengakses folder utama
Ubuntu 20.04 \\wsl$\Ubuntu-20.04\home\username
Ubuntu 18.04 \\wsl$\Ubuntu-18.04\home\username
Debian \\wsl$\Debian\home\username
Windows PowerShell C:\Users\username

Tip

Jika Anda ingin mengakses direktori file Windows dari baris perintah distribusi WSL Anda, alih-alih C:\Users\username, direktori akan diakses menggunakan /mnt/c/Users/username, karena distribusi Linux melihat sistem file Windows Anda sebagai drive yang dipasang.

Anda harus menginstal Git pada setiap sistem file yang ingin Anda gunakan.

Menampilkan versi Git menurut distro

Menginstal Git

Git sudah diinstal dengan sebagian besar distribusi Subsistem Windows untuk Linux, namun, Anda mungkin ingin memperbarui ke versi terbaru. Anda juga perlu menyiapkan file konfigurasi git Anda.

Untuk menginstal Git, lihat situs Unduhan Git untuk Linux . Setiap distribusi Linux memiliki manajer paket mereka sendiri dan perintah instal.

Untuk versi Git stabil terbaru di Ubuntu/Debian, masukkan perintah:

sudo apt-get install git

Catatan

Anda mungkin juga ingin menginstal Git untuk Windows jika Anda belum melakukannya.

Penyiapan file konfigurasi Git

Untuk menyiapkan file konfigurasi Git Anda, buka baris perintah untuk distribusi tempat Anda bekerja dan atur nama Anda dengan perintah ini (mengganti "Nama Anda" dengan nama pengguna pilihan Anda):

git config --global user.name "Your Name"

Atur email Anda dengan perintah ini (mengganti "youremail@domain.com" dengan email yang Anda inginkan):

git config --global user.email "youremail@domain.com"

Tip

Jika Anda belum memiliki akun GitHub, Anda dapat mendaftar untuk satu di GitHub. Jika Anda belum pernah bekerja dengan Git sebelumnya, Panduan GitHub dapat membantu Anda memulai. Jika Anda perlu mengedit konfigurasi Git, Anda dapat melakukannya dengan editor teks bawaan seperti nano: nano ~/.gitconfig.

Kami menyarankan agar Anda mengamankan akun Anda dengan autentikasi dua faktor (2FA).

Penyiapan Git Credential Manager

Git Credential Manager (GCM) adalah pembantu kredensial Git aman yang dibangun di .NET yang dapat digunakan dengan WSL1 dan WSL2. Ini memungkinkan dukungan autentikasi multifaktor untuk repositori GitHub, Azure DevOps, Azure DevOps Server, dan Bitbucket.

GCM terintegrasi ke dalam alur autentikasi untuk layanan seperti GitHub dan, setelah Anda diautentikasi ke penyedia hosting Anda, meminta token autentikasi baru. Kemudian menyimpan token dengan aman di Windows Credential Manager. Setelah pertama kalinya, Anda dapat menggunakan Git untuk berbicara dengan penyedia hosting Anda tanpa perlu mengautentikasi ulang. Ini hanya akan mengakses token di Pengelola Kredensial Windows.

Untuk menggunakan GCM dengan WSL, Anda harus menggunakan Windows 10 Versi 1903 atau yang lebih baru. Ini adalah versi pertama Windows yang mencakup alat yang diperlukan wsl.exe yang digunakan GCM untuk beroperasi dengan Git dalam distribusi WSL Anda.

Disarankan untuk menginstal Git terbaru untuk Windows untuk berbagi kredensial & pengaturan antara WSL dan host Windows. Git Credential Manager disertakan dengan Git untuk Windows dan versi terbaru disertakan dalam setiap Git baru untuk rilis Windows. Selama penginstalan, Anda akan diminta untuk memilih pembantu info masuk, dengan GCM ditetapkan sebagai default.

Jika Anda memiliki alasan untuk tidak menginstal Git untuk Windows, Anda dapat menginstal GCM sebagai aplikasi Linux langsung dalam distribusi WSL Anda, tetapi perhatikan bahwa melakukannya berarti GCM berjalan sebagai aplikasi Linux dan tidak dapat menggunakan fitur autentikasi atau penyimpanan kredensial dari sistem operasi Windows host. Lihat repositori GCM untuk instruksi tentang cara mengonfigurasi WSL tanpa Git untuk Windows.

Untuk menyiapkan GCM untuk digunakan dengan distribusi WSL, buka distribusi Anda dan masukkan perintah ini:

Jika GIT diinstal adalah >= v2.39.0

git config --global credential.helper "/mnt/c/Program\ Files/Git/mingw64/bin/git-credential-manager.exe"

jika tidak, jika GIT diinstal adalah >= v2.36.1

git config --global credential.helper "/mnt/c/Program\ Files/Git/mingw64/libexec/git-core/git-credential-manager.exe"

jika versinya adalah < v2.36.1 masukkan perintah ini:

git config --global credential.helper "/mnt/c/Program\ Files/Git/mingw64/bin/git-credential-manager-core.exe"

Catatan

Menggunakan GCM sebagai pembantu info masuk untuk penginstalan WSL Git berarti bahwa konfigurasi apa pun yang diatur dalam WSL Git TIDAK dihormati oleh GCM (secara default). Ini karena GCM berjalan sebagai aplikasi Windows, dan oleh karena itu akan menggunakan penginstalan Git untuk Windows untuk mengkueri konfigurasi. Ini berarti hal-hal seperti pengaturan proksi untuk GCM perlu diatur di Git untuk Windows serta WSL Git karena disimpan dalam file yang berbeda (%USERPROFILE%\.gitconfig vs \\wsl$\distro\home\$USER\.gitconfig). Anda dapat mengonfigurasi WSL sehingga GCM akan menggunakan konfigurasi WSL Git, tetapi ini berarti bahwa pengaturan proksi akan unik untuk penginstalan WSL tertentu dan tidak dibagikan dengan orang lain atau host Windows.

Git dengan SSH

Git Credential Manager hanya berfungsi dengan remote HTTP(S). Anda masih dapat menggunakan Git dengan SSH:

Konfigurasi tambahan untuk Azure

Jika Anda ingin bekerja dengan Azure Repos atau Azure DevOps, beberapa konfigurasi tambahan diperlukan:

git config --global credential.https://dev.azure.com.useHttpPath true

Sekarang setiap operasi git yang Anda lakukan dalam distribusi WSL Anda akan menggunakan GCM. Jika Anda sudah memiliki kredensial yang di-cache untuk host, kredensial tersebut akan mengaksesnya dari manajer kredensial. Jika tidak, Anda akan menerima respons dialog yang meminta kredensial, meskipun Anda berada di konsol Linux.

Tip

Jika Anda menggunakan kunci GPG untuk keamanan penandatanganan kode, Anda mungkin perlu mengaitkan kunci GPG Anda dengan email GitHub Anda.

Menambahkan file Git Ignore

Sebaiknya tambahkan file .gitignore ke proyek Anda. GitHub menawarkan kumpulan templat .gitignore yang berguna dengan penyiapan file .gitignore yang direkomendasikan yang diatur sesuai dengan kasus penggunaan Anda. Misalnya, berikut adalah templat gitignore default GitHub untuk proyek Node.js.

Jika Anda memilih untuk membuat repositori baru menggunakan situs web GitHub, ada kotak centang yang tersedia untuk menginisialisasi repositori Anda dengan file README, file .gitignore yang disiapkan untuk jenis proyek tertentu Anda, dan opsi untuk menambahkan lisensi jika Anda memerlukannya.

Git dan Visual Studio Code

Visual Studio Code dilengkapi dengan dukungan bawaan untuk Git, termasuk tab kontrol sumber yang akan menampilkan perubahan Anda dan menangani berbagai perintah git untuk Anda. Pelajari selengkapnya tentang dukungan Git VS Code.

Akhiran baris Git

Jika Anda bekerja dengan folder repositori yang sama antara Windows, WSL, atau kontainer, pastikan untuk menyiapkan akhiran baris yang konsisten.

Karena Windows dan Linux menggunakan akhiran baris default yang berbeda, Git dapat melaporkan sejumlah besar file yang dimodifikasi yang tidak memiliki perbedaan selain dari akhiran baris mereka. Untuk mencegah hal ini terjadi, Anda dapat menonaktifkan konversi akhir baris menggunakan .gitattributes file atau secara global di sisi Windows. Lihat dokumen Visual Studio Code ini tentang menyelesaikan masalah akhir baris Git.

Sumber Daya Tambahan: