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

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

For distributions like RedHat, Fedora or CentOS open a terminal and type:

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

You can use Git Immersion to work through tutorials for learning 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: the number of the task in Storyboard implemented by the change. This will auto update the task to 'Review' status and assign it to you when you push the patch.

  • Story: 1234567: the number of the story in Storyboard to which the task being implemented belongs. This will post a comment on the story with a link to your patch.

Launchpad specific footers:

  • Closes-Bug: #123456789: use Closes-Bug if the commit is intended to fully fix and close the bug being referenced. Use the Launchpad ID of the bug for the number; Gerrit automatically creates a link to the bug.

  • Partial-Bug: #123456789: use Partial-Bug if the commit is only a partial fix and more work is needed. Use the Launchpad ID of the bug for the number; Gerrit automatically creates a link to the bug.

  • Related-Bug: #12456789: use Related-Bug if the commit is merely related to the referenced bug. Use the Launchpad ID of the bug for the number; Gerrit automatically creates a link to the 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.