[ English | 한국어 (대한민국) | English (United Kingdom) | Deutsch | 中文 (简体, 中国) | Indonesia | español (México) ]

Siapkan dan Pelajari GIT

Catatan

Bagian ini mengasumsikan Anda telah menyelesaikan panduan Account Setup (pengaturan akun).

GIT

Apa itu Git?

Git adalah sistem kontrol versi terdistribusi gratis dan open source yang digunakan komunitas OpenStack untuk mengelola perubahan kode sumber dan dokumentasi.

Git memungkinkan Anda untuk:

Instalasi

Mac OS

  1. Lihat ke Git download page dan klik Mac OS X.

  2. File yang diunduh harus berupa dmg di folder unduhan Anda. Buka file dmg itu dan ikuti instruksi di layar.

Jika Anda menggunakan manajer paket Homebrew <http://brew.sh> _, buka terminal dan ketik

brew install git

Linux

Untuk distribusi seperti Debian, Ubuntu, atau Mint buka terminal dan ketik

sudo apt install git

Untuk distribusi seperti RedHat, Fedora 21 atau sebelumnya, atau CentOS buka terminal dan ketik

sudo yum install git

Untuk Fedora 22 atau lebih baru buka terminal dan ketik

sudo dnf install git

Untuk distribusi SUSE, buka terminal dan ketik

sudo zypper in git

Windows

Windows Subsystem for Linux (WSL) tersedia di Windows 10 Anniversary Update atau yang lebih baru (build 1607+). Ada kemungkinan untuk menginstal dan menjalankan Sistem Operasi Linux modern:

Semua alat umum seperti bash, git, dan SSH akan berfungsi di out of the box.

Meskipun Git download page menyediakan biner instalasi Windows, sebagian besar alat pengembangan OpenStack (misal, git-review) sayangnya tidak akan berfungsi dengan baik di lingkungan Windows.

Konfigurasikan Git

Setelah Anda menginstal Git, Anda perlu mengkonfigurasinya. Buka aplikasi terminal Anda dan keluarkan perintah berikut dengan memasukkan nama depan / belakang dan alamat email Anda. Beginilah kontribusi Anda akan diidentifikasi

git config --global user.name "Firstname Lastname"
git config --global user.email "your_email@youremail.com"

Catatan

Gunakan alamat email yang sama yang digunakan selama pengaturan akun.

Belajar Git

Anda dapat menggunakan Git Immersion <http://gitimmersion.com/lab_02.html> _ untuk mengerjakan tutorial untuk mempelajari git.

Untuk referensi, gunakan Git Reference and Cheat Sheet.

Pesan Komit

Pesan komit adalah hal pertama yang dilihat oleh pengulas dan digunakan sebagai deskripsi di git log. Mereka memberikan deskripsi tentang sejarah perubahan dalam repositori. Pesan komit tidak dapat diubah setelah patch digabungkan.

Format:

  • Summary Line

  • Empty line

  • Body

  • Empty line

  • Footers

Catatan

Footer harus dimasukkan satu per baris tanpa ada baris kosong di antaranya.

Summary Line

Baris ringkasan menjelaskan secara singkat konten patch. Batas karakter adalah 50 karakter. Baris ringkasan tidak boleh diakhiri dengan titik. Jika perubahan belum selesai pada saat komit, mulai pesan komit dengan WIP.

Body

Body berisi penjelasan tentang masalah yang sedang dipecahkan dan mengapa hal itu harus diperbaiki, deskripsi solusi, dan informasi tambahan opsional tentang bagaimana hal itu meningkatkan struktur kode, atau referensi ke patch lain yang relevan, misalnya. Garis dibatasi hingga 72 karakter. Body harus memuat semua informasi penting yang terkait dengan masalah, tanpa berasumsi bahwa pembaca memahami sumber masalah atau memiliki akses ke situs eksternal.

Footers

Footer adalah baris di paragraf terakhir dari pesan komit, digunakan untuk menghubungkan perubahan ke alat lain.

Footer berikut wajib diisi:

  • Baris Change-Id``adalah hash unik yang mendeskripsikan perubahan, yang dihasilkan secara otomatis oleh hook commit Git ketika Anda awalnya menyimpan pesan commit. Ini tidak boleh diubah saat melakukan rebasing komit setelah umpan balik tinjauan, karena digunakan oleh Gerrit, untuk melacak versi patch. Itu tidak akan muncul saat Anda mengedit pesan komit baru untuk pertama kalinya, tetapi jika Anda ``commit --amend nanti Anda akan melihatnya.

StoryBoard specific footers:

  • Task: 1234: jumlah tugas di Storyboard yang diterapkan oleh perubahan. Ini akan secara otomatis memperbarui tugas ke status 'Review' dan memberikannya kepada Anda ketika Anda mendorong patch.

  • Story: 1234567: jumlah cerita di Storyboard yang menjadi tugas tugasnya. Ini akan memposting komentar pada cerita dengan tautan ke patch Anda.

Launchpad specific footers:

  • Closes-Bug: #123456789: menggunakan Closes-Bug jika komit dimaksudkan untuk sepenuhnya memperbaiki dan menutup bug yang dirujuk. Gunakan ID Launchpad bug untuk nomor; Gerrit secara otomatis membuat tautan ke bug.

  • Partial-Bug: #123456789: menggunakan Partial-Bug jika komit hanya memperbaiki sebagian dan lebih banyak pekerjaan diperlukan. Gunakan ID Launchpad bug untuk nomor; Gerrit secara otomatis membuat tautan ke bug.

  • Related-Bug: #12456789: menggunakan 'Related-Bug' jika komit hanya terkait dengan bug yang dirujuk. Gunakan ID Launchpad bug untuk nomor; Gerrit secara otomatis membuat tautan ke bug.

  • Partial-Implements: Gunakan footer ini jika perubahan menerapkan sebagian cetak biru Launchpad. Gunakan nama cetak biru sebagai ID.

  • Implements: Gunakan footer ini jika perubahan tersebut sepenuhnya menerapkan cetak biru Launchpad. Gunakan nama cetak biru sebagai ID.

Footer berikut ini opsional; namun, penggunaannya disarankan jika dapat diterapkan pada patch:

  • Footer DocImpact berisi komentar tentang mengapa perubahan berdampak pada dokumentasi. Letakkan DocImpact pada satu baris dengan sendirinya. Gunakan footer ini untuk menunjukkan bahwa dokumentasi ada dalam patch atau memiliki dampak dokumentasi. Ketika footer ini disertakan dalam pesan komit, Gerrit membuat bug untuk proyek yang terpengaruh oleh perubahan task tracking, atau pindah ke openstack-api-site sesuai kebutuhan.

  • Footer APIImpact berisi komentar tentang mengapa perubahan memengaruhi API HTTP publik. Letakkan APIImpact di baris itu sendiri. Gunakan footer ini untuk menunjukkan bahwa patch memengaruhi API HTTP publik. Ketika footer ini disertakan dalam pesan komit, API_Working_Group dapat menggunakannya untuk membantu menemukan ulasan yang relevan.

  • Footer SecurityImpact digunakan untuk menunjukkan bahwa perubahan memiliki implikasi keamanan dan harus ditinjau oleh OpenStack Security Group.

  • Footer UpgradeImpact berisi komentar tentang mengapa perubahan berdampak pada upgrades. Ini digunakan untuk menunjukkan bahwa perubahan memiliki implikasi upgrades bagi mereka yang melakukan penerapan berkelanjutan atau upgrades N ke N + 1. Pertimbangkan juga untuk memperbarui bagian 'Upgrade Notes' di catatan rilis untuk proyek yang terpengaruh.

  • Footer Depends-On: <gerrit-change-url> digunakan untuk merujuk pada perubahan yang saat ini bergantung. Gunakan tautan permanen perubahan.