Saya merasa bahwa semuanya akan berhasil untuk saya, dan melakukan perjalanan melalui dunia Linux. Dalam edisi #IBelieveinDoing itu, ada tutorial tidak hanya di Linux, tetapi juga di Git. Beberapa persamaan dapat ditarik antara sistem ini. Linux adalah OS sumber terbuka yang digunakan oleh pemrogram, dan Git adalah sistem kontrol versi yang digunakan untuk melacak perubahan pada kode sumber saat mengembangkan program. Perlu dicatat bahwa mempelajari Linux dan Git ternyata merupakan pengalaman yang sangat menyenangkan. Tetapi Git adalah sistem yang cukup kompleks, jadi lebih sulit untuk menguasai dasar-dasarnya daripada dasar-dasar Linux. Pada artikel ini, saya ingin berbagi dengan Anda apa yang telah saya pelajari selama menguasai Linux dan Git.
Perintah Linux dasar
pwd: Perintah ini digunakan untuk menampilkan informasi tentang direktori kerja.
ls: Dengan perintah ini Anda dapat menampilkan informasi tentang isi direktori. Jika dijalankan dalam formulir ini, tanpa argumen baris perintah, ini memberikan informasi dalam format default.
cd: perintah ini untuk mengubah direktori.

Bereksperimen dengan Perintah Linux
cp : Perintah ini untuk menyalin file dan folder.
mv: Dengan perintah ini, Anda dapat mengganti nama atau memindahkan file dan folder.
touch: Perintah ini digunakan untuk membuat file kosong dan mengubah stempel waktu file.
cat: perintah ini memungkinkan Anda untuk melihat konten file, dengan bantuannya Anda dapat membuat salinan file, melampirkan konten beberapa file ke file lain.
tree: Perintah ini memungkinkan Anda untuk menampilkan informasi direktori dalam format seperti pohon. Perintah, secara default, menampilkan informasi tentang folder dan file serta informasi tentang jumlah file dan folder dalam struktur keluarannya. Berikut ini contoh penggunaannya

Contoh penggunaan perintah pohon
Di sini nama folder disorot dengan warna biru, nama file berwarna putih. Warna lain digunakan dalam struktur yang ditampilkan oleh perintah ini.
echo: Perintah ini digunakan untuk menampilkan data yang dikirim ke layar.
grep: Perintah ini untuk bekerja dengan data teks. Secara khusus, ini memungkinkan Anda untuk mencari string.
tail: Perintah ini mencetak 10 baris terakhir dari sebuah file.

Contoh penggunaan perintah grep dan cat
awk : perintah ini dimaksudkan untuk bekerja dengan utilitas terkait, yang memberi kita alat yang ampuh untuk memproses string, yang kemampuannya sebanding dengan yang tersedia dalam bahasa pemrograman lengkap.
Di Linux, Anda dapat menggunakan pipelines, yang merupakan pipa satu arah yang dapat Anda gunakan untuk berkomunikasi antar proses. Saat mendeskripsikan pipeline, simbol (
|) digunakan. Dengan menggunakan simbol ini, Anda dapat, misalnya, mengarahkan output dari satu perintah ke input perintah lainnya.

Contoh penggunaan pipeline
ssh : perintah ini memungkinkan Anda bekerja dengan klien ssh, yang digunakan untuk menyambung ke sistem jarak jauh dan menjalankan perintah padanya. Protokol SSH ditujukan untuk mengatur interaksi komputer yang aman.
rm: Perintah ini digunakan untuk menghapus file dan folder. Misalnya, memanggilnya dalam bentukrm filemengarah pada penghapusan file, dan dalam bentukrm -r directory - ke penghapusan direktori dan semua isinya.
Struktur direktori Linux
Linux menggunakan struktur direktori seperti pohon. Awal dari struktur hierarki ini ada di direktori root. Semua direktori lain berada di dalam direktori ini. Garis miring (
/) digunakan untuk memisahkan nama direktori saat menentukan jalur ke file dan folder .
Seperti inilah tampilan struktur sistem file pada sistem Linux.

Struktur Direktori di Linux
Berikut adalah karakteristik dari beberapa folder penting.
| Jalur direktori | Catatan |
|
Direktori root. |
|
Direktori tempat penyimpanan materi pengguna. |
|
Di sinilah file yang diperlukan untuk menjalankan Linux disimpan. |
|
File yang dapat dieksekusi berada di sini. |
|
Berisi berbagai file yang digunakan oleh sistem dan program yang diinstal. Ini bisa berupa file log, database, konten halaman web cache. |
Pengalamatan absolut dan relatif
Jalur file absolut selalu berisi jalur lengkap dari direktori root ke direktori yang berisi file yang diperlukan.
Jalur relatif berhubungan dengan direktori saat ini.

Bereksperimen dengan jalur
Ada jalur relatif khusus, yang dijelaskan dalam tabel berikut.
| Jalur relatif | Deskripsi | Contoh | Contoh Catatan |
|
Direktori kerja saat ini. |
|
Menampilkan informasi tentang isi direktori saat ini. |
|
Direktori induk. |
|
Naik satu tingkat ke direktori induk. |
|
Direktori kerja sebelumnya. |
|
Kembali ke direktori kerja sebelumnya. |

Contoh penggunaan jalur relatif khusus
Tautan lunak dan keras ke file
Tautan file lunak (simbolis) berisi penunjuk ke nama file. Tautan ini menyerupai pintasan yang digunakan untuk mengakses file dengan cepat dari direktori yang berbeda. Jika file yang memiliki tautan lunak dihapus, tautan tersebut tetap ada, tetapi berhenti bekerja.
Tautan keras adalah tautan ke lokasi di hard drive tempat file tersebut berada. Sistem menganggap file tersebut ada selama setidaknya ada satu tautan keras ke sana. Faktanya, jika sebuah file memiliki banyak tautan keras, itu dapat dibandingkan dengan file yang memiliki banyak nama.
Perintah ini digunakan untuk membuat tautan keras dan lunak ke file
ln. Berikut adalah contoh membuat tautan simbolis dengannya:
ln -s /path/to/file linkname
Kontrol Perilaku Perintah
Perilaku perintah Linux dapat dikontrol dengan meneruskan argumen baris perintah (sakelar, opsi, bendera) kepada mereka saat dipanggil. Mereka biasanya terlihat seperti tanda hubung (
-) diikuti dengan nama kunci satu huruf (konstruksi seperti itu mungkin terlihat, misalnya -a). Mereka juga bisa terlihat seperti dua tanda hubung ( --) diikuti dengan nama kunci yang lebih panjang (semacam --all).
Untuk mengetahui lebih lanjut tentang perintah Linux, Anda dapat menggunakan sistem bantuan bawaan, yang diakses melalui perintah
man. Misalnya, lsAnda dapat menggunakan perintah untuk mendapatkan bantuan atas suatu perintah man ls. Di bawah ini adalah hasil dari perintah serupa.

Referensi Perintah Ls Halaman referensi perintah dibagi menjadi beberapa bagian. Diantaranya adalah sebagai berikut:
NAME(nama). Ini berisi nama perintah dan deskripsi singkat tentang fungsinya.SYNOPSIS(ringkasan sintaks perintah). Berikut adalah diagram cara menggunakan perintah.DESCRIPTION(deskripsi). Bagian ini memberikan penjelasan rinci tentang perintah dan sakelar baris perintah yang didukungnya.
Misalnya, perintah
lssering digunakan dengan opsi -lyang memungkinkan Anda menampilkan detail tentang konten direktori.

Menggunakan perintah ls -l
Pada gambar sebelumnya, Anda mungkin telah memperhatikan konstruksi tampilan
drwxr-xr-x. Ini adalah deskripsi izin file.
Izin file
Misalkan kita memiliki konstruksi berikut yang menjelaskan izin file:
- rwx r-- r--
Harap dicatat bahwa empat kelompok simbol dapat dibedakan di dalamnya:
- Simbol pertama menunjukkan apa yang sebenarnya kita hadapi. Yaitu, jika ada tanda (
-) di sini , maka kita memiliki file di depan kita. Huruf (d) menunjukkan direktori. Huruf (l) adalah untuk tautan. - Tiga simbol berikut memberi tahu Anda izin apa yang dimiliki pemiliknya untuk bekerja dengan file yang diberikan:
r- baca,w- tulis,x- eksekusi. Seperangkat lengkap izin diwakili oleh urutanrwx, jika izin tertentu tidak ada, simbol (-) diletakkan di posisi yang sesuai . - , ( , ). , .
- , , , , .
Perintah ini digunakan untuk mengelola izin file
chmod. Misalnya, untuk menambah aturan saat ini akses ke file izin untuk menjalankannya, Anda dapat menggunakan skema berikut panggilan: chmod +x <filename>. Desainnya +xmenunjukkan bahwa izin ini ditambahkan untuk semua pengguna.
Mari kita bicara tentang beberapa hal spesifik tentang mengonfigurasi izin file menggunakan
chmod. Jadi, untuk menetapkan izin tertentu kepada semua pengguna, digunakan konstruksi yang mirip dengan yang dijelaskan di atas +x. Operator ( +) digunakan untuk menambahkan izin, operator ( -) memungkinkan Anda untuk menghapus izin, operator ( =) digunakan untuk mengatur hak tertentu untuk pengguna yang memiliki file ( u, pengguna), untuk grup (g, grup), untuk pengguna lain ( o, orang lain) dan untuk semua pengguna ( a, semua). Ini dilakukan dalam konstruksi tampilan chmod u=rwx,g=rx,o=rx filename.
Saat memberikan izin, izin tersebut sering ditulis dalam bentuk numerik. Kode oktal sesuai dengan hak tertentu. Jadi,
xkode yang sesuai 1, kode wyang sesuai 2dan kode ryang sesuai 4. Kode0sesuai dengan tidak adanya izin untuk bekerja dengan file. Hak atas file dijelaskan dengan nomor tiga digit, urutan nomor yang sesuai dengan urutan grup izin yang dijelaskan di atas. Artinya, angka pertama menjelaskan izin pemilik file, angka kedua menjelaskan izin grup, dan angka ketiga menjelaskan izin pengguna lain. Masing-masing angka ini adalah jumlah dari kode otorisasi r, wdan x.
Misalnya, perintah dalam bentuk
chmod 444 filenameberarti bahwa setiap orang hanya akan memiliki hak untuk membaca file ( r--r--r--), dan perintah dalam formulir chmod 700 filenamemenunjukkan bahwa pemilik akan memiliki hak untuk membaca, menulis, dan menjalankan file ( rwx, 4+2+1), dan tidak ada orang lain yang berhak melakukan tindakan apa pun dengan file tersebut. ( rwx------).
Bekerja dengan Git
Saat bekerja dengan Git, urutan tindakan berikut biasanya digunakan:
- Mengubah file di direktori kerja lokal.
- Pengindeksan file (perintah
git add). - Menyimpan snapshot dari data yang diindeks di database internal (
git commit). - Mendorong perubahan dari repositori lokal ke remote (
git push). - Memuat perubahan dari repositori jarak jauh ke repositori lokal (
git pull).
Berikut adalah diagram yang menggambarkan urutan langkah-langkah ini.

File Alur Kerja Git tipikal bisa berada dalam status berbeda saat bekerja dengan Git.

Status file
- Tidak dilacak adalah file yang Git tidak perhatikan perubahannya. File ini dapat ditambahkan ke indeks dan berada dalam status Bertahap.
- Tidak dimodifikasi - File yang telah dipantau tetapi isinya tidak berubah. Jika Anda menghapus file ini, file tersebut tidak akan lagi dipantau. Jika Anda mengubahnya, statusnya akan Dimodifikasi.
- Dimodifikasi - file yang sedang diawasi, yang isinya telah berubah. Ini dapat diindeks dan dimasukkan ke status Bertahap.
- Staged adalah file yang dipantau dan dimasukkan ke dalam indeks. Perubahan yang sesuai dapat digabungkan ke dalam database Git.
Mari kita lihat beberapa perintah Git.
git init: Perintah ini membuat repositori Git kosong di direktori. Ini adalah langkah pertama dalam membuat repositori baru. Setelah menjalankan perintah ini, Anda dapat menggunakan perintah git adddan git commit.

git addPerintah Git init : Perintah ini menambahkan file ke indeks. Ini mendukung, dalam bentukgit add ., menambahkan semua file yang tidak diindeks ke indeks, dalam bentukgit add filename- menambahkan file tertentu ke indeks, dalam bentukgit add dirname- menambahkan direktori ke indeks.

git commitPerintah Git add : Perintah ini menulis perubahan ke repositori lokal. Perubahan ini disebut, dengan analogi dengan nama perintah, "komit". Setiap komit memiliki pengenal unik, membuatnya lebih mudah untuk bekerja dengan komit.

git statusPerintah Git commit : Perintah ini memungkinkan Anda mendapatkan informasi tentang status repositori saat ini.

git configPerintah status Git : Perintah ini memungkinkan Anda menyesuaikan Git. Di antara pengaturan Git dapat dicatatuser.namedanuser.email. Mereka berisi nama pengguna dan alamat email yang digunakan dalam komit dan menunjukkan siapa yang membuatnya. Jika sebuahgit configbendera--globaldigunakansaat memanggil perintah,pengaturan diterapkan ke semua repositori lokal. Tanpa tanda ini, pengaturan hanya berlaku untuk repositori saat ini.

git checkoutPerintah Git config : Perintah ini digunakan untuk beralih antar cabang repositori (sebagaigit checkout <branch_name>). Dengan bantuannya, Anda dapat membuat cabang baru dan beralih ke cabang itu (git checkout -b <new_branch>).
git merge: Perintah ini memungkinkan Anda untuk menggabungkan cabang dari repositori. Ini mengambil perubahan di satu cabang dan menggabungkannya ke cabang lainnya. Misalnya ada cabang yang sedang mengerjakan fitur proyek baru. Setelah fitur ini selesai, perubahan didorong ke cabang yang menyimpan fitur stabil.
git clone: Perintah ini digunakan untuk membuat copy pekerjaan lokal dari repositori jarak jauh. Ketika dijalankan, materi dari repositori jarak jauh diunduh ke komputer. Mengkloning repositori yang ada sebanding dengan membuat repositori baru dengan perintahgit init... Tetapi saat mengkloning, kami memiliki repositori yang kami miliki, di mana sudah ada sesuatu, dan ketika perintah dijalankan git init, repositori kosong.
git pull: Perintah ini untuk mengunduh data baru dari repositori jarak jauh.
git push: Perintah ini dapat digunakan untuk mendorong komit lokal ke repositori jarak jauh. Saat memanggil perintah ini, Anda perlu meneruskan informasi tentang repositori jarak jauh dan tentang cabang dari repositori lokal, yang perlu dikirim ke repositori jarak jauh.
Hasil
Saya memberi tahu Anda semua yang saya pelajari selama perjalanan saya ke dunia Linux dan Git. Itu sangat menyenangkan. Semoga Anda ingin melakukan sesuatu yang serupa dan mempelajari sesuatu yang baru, sesuatu yang memperluas wawasan profesional Anda.
Jika Anda baru-baru ini menguasai sesuatu yang menarik - beri tahu kami.
