If-Koubou

Pelacakan Versi Dengan Subversion (SVN) Untuk Pemula

Pelacakan Versi Dengan Subversion (SVN) Untuk Pemula (Bagaimana caranya)

Pernahkah Anda ingin mengerjakan proyek dengan kemampuan melacak perubahan Anda serta mengembalikannya? How-To Geek menjelaskan Bagaimana-Untuk menggunakan sistem pelacakan versi populer, Subversion (a.k.a SVN).

Gambar oleh Jelas Ambigu

Prelog

Panduan ini akan memberi Anda kemampuan untuk menggunakan klien subversi secara umum, dan, jika Anda memilikinya, pada * router DD-WRT Anda. Panduan ini tidak berarti panduan definitif untuk Subversion dan banyak informasi dapat ditemukan pada Subversion Red Book. Panduan ini hanya dimaksudkan untuk memberi Anda jawaban singkat atas pertanyaan yang paling mendasar.

Ikhtisar

Mungkin ada banyak alasan mengapa Anda ingin "checkout" kode terbaru untuk proyek perangkat lunak yang menggunakan sistem versi. Melakukannya memungkinkan Anda memperoleh manfaat dari perubahan terbaru yang belum pernah dirilis, membantu pengujian dan bahkan pengembangan. Dalam panduan ini, kita akan membahas beberapa terminologi SVN dasar, menunjukkan cara menginstal klien SVN di Linux, Windows dan jika Anda memiliki salah satu router DD-WRT OPKG Anda yang diaktifkan. Kami juga menyertakan contoh proyek yang dapat Anda periksa dan gunakan untuk router tersebut.

Apa itu Subversi?

Subversion tidak berarti satu-satunya sistem kontrol versi yang ada dan alternatifnya termasuk Git (yang dibuat oleh Linus Torvalds pendiri kernel Linux), Mercurial dan PerForce untuk beberapa nama. Dengan yang mengatakan, itu adalah salah satu yang gratis, itu matang dan digunakan secara luas di seluruh dunia.

Keluar dari Subversi “Red Book”:

Subversion adalah sumber bebas / terbuka sistem kontrol versi (VCS). Artinya, Subversion mengelola file dan direktori, dan perubahan yang dibuatnya, dari waktu ke waktu. Ini memungkinkan Anda untuk memulihkan versi data yang lebih lama atau memeriksa sejarah tentang bagaimana data Anda berubah. Dalam hal ini, banyak orang berpikir tentang sistem kontrol versi sebagai semacam "mesin waktu."

Catatan: Buku ini aku s koleksi akhir pengetahuan tentang subversi dan Anda disarankan untuk merujuk pada semua topik terkait Subversion.

Apa itu Versi?

Pembuatan versi adalah proses di mana status proyek pada suatu titik waktu disimpan. Prosedur semacam ini sering digunakan untuk mengelola pengembangan perangkat lunak, sehingga pekerjaan dapat terus memperbaiki proyek atau menambahkan fitur, sementara dapat melacak apa yang telah berubah dari titik "simpan" terakhir secara keseluruhan. Untuk menguraikan, prosedur semacam ini dapat berguna untuk satu orang tetapi lebih dari itu untuk sekelompok orang, semua bekerja pada proyek yang sama. Ini karena, biasanya, ketika mengerjakan sebuah proyek sebagai sebuah kelompok, ada distribusi tanggung jawab dan orang yang berbeda mengubah berbagai aspek proyek. Tanpa mekanisme versi, akan sangat sulit untuk menjaga semua orang sinkron pada perubahan kerja terbaru dari orang lain.

Terminologi

Repositori
Repositori adalah lokasi tempat semua data dari semua tempat yang berbeda disimpan. Di dunia subversi, dari sudut pandang klien, itu adalah server yang menyimpan database proyek. Basis data ini berisi semua file yang merupakan bagian dari proyek dengan semua versi sebelumnya.

Revisi

Ketika repositori dibuat, diberikan nomor revisi nol (0). Jumlah ini bertambah satu (1) setiap kali komit dilakukan. Nomor revisi adalah global untuk repositori. Yaitu, bahwa tidak ada nomor revisi individu untuk file individual dalam repositori, bahkan jika tidak ada yang berubah dalam file itu untuk commit tertentu.

Copy pekerjaan

Salinan kerja adalah salinan lokal (atau "checkout") dari versi tertentu. Biasanya versi ini ketika dicentang adalah yang "terbaru" (juga disebut "kepala"), tetapi yang sebelumnya dapat diminta. Pengguna dapat melakukan dengan salinan lokal apa pun yang diinginkannya, dengan pengetahuan yang, paling buruk, mereka hanya dapat memeriksa kode itu lagi. Selain itu, salinan ini "pribadi". Ini karena sampai Anda memperbarui atau melakukan salinan Anda, Anda tidak akan melihat perubahan orang lain, juga tidak akan melihat Anda.

Memperbarui & menyelesaikan Konflik

Salinan kerja lokal dapat diperbarui. Artinya, Jika Anda "memeriksa" versi tertentu, dan ketika Anda sedang bekerja, versi pada repositori telah diperbarui, Anda dapat memperbarui copy pekerjaan Anda ke yang terbaru. Bahkan, server akan mencegah Anda melakukan perubahan sebelum Anda memperbarui ke versi terbaru agar sesuai dengan repositori. Ini dilakukan untuk memaksa Anda menyelesaikan konflik secara lokal, bahkan sebelum Anda berpikir untuk melakukan perubahan pada repositori.

Penggabungan

Penggabungan mengacu pada proses di mana, mengubah kode dicampur menjadi satu versi. Ini mungkin juga berarti menyelesaikan konflik.

Komit

Berkomitmen adalah proses di mana perubahan yang Anda buat pada salinan lokal Anda akan digabungkan kembali ke dalam repositori. Ini adalah bagian yang paling berbahaya dari proses ini, karena di sini perubahan yang Anda buat, dapat berdampak pada orang lain yang menggunakan repositori yang sama. Itulah mengapa ini biasanya dilakukan setelah mempertimbangkan beberapa pertimbangan, dengan konsensus tim dan setelah Anda menyelesaikan konflik penggabungan.

Alur Kerja

Alur kerja paling dasar dari perspektif pengguna saat menggunakan subversi adalah ini:

1. Periksa kode yang ada (biasanya "kepala").
2. Buat perubahan, tambahkan file dan umumnya kembangkan kode.
3. Perbarui ke versi terbaru, untuk memastikan salinan lokal Anda sinkron dengan pembaruan pada repositori.
4. Secara lokal menggabungkan dan menyelesaikan konflik jika perlu.
5.Komit perubahan yang digabung ke dalam repositori.
6. GoTo langkah 2.

Mari kita dapatkan cracking

Instal Klien

Untuk dapat menggunakan subversi, Anda perlu menginstal klien di komputer Anda.

Di Linux

Anda hanya perlu menginstal paket. Di Ubuntu / Mint, ini akan dilakukan dengan:

sudo aptitude menginstal subversi

Pada DD-WRT

Jika Anda telah mengikuti "Cara Menginstal Perangkat Lunak Tambahan di Router Rumah Anda (DD-WRT)", Anda dapat menginstal klien svn hanya dengan mengeluarkan:

pembaruan opkg; opkg menginstal subversi-klien

Di Windows

Sementara pengguna geek yang mendalam mungkin mulai melupakan bahwa GUI bahkan ada pada saat itu, tidak semua orang memilikinya. Jika Anda ingin menggunakan klien windows untuk terhubung ke repositori SVN, sejauh ini yang paling populer adalah "Tortoise". Untuk menggunakannya, cukup unduh program dan instal dalam mode “berikutnya, berikutnya, selesaikan” biasa.

Buat "repositori"

Meskipun kami tidak akan membahas banyak tentang cara mengatur server subversi dalam panduan ini, alternatif Google bukanlah awal yang buruk bagi pengguna pemula. Untuk membuat repositori Google:

  • Buka situs web hosting Google Code dan "buat" proyek baru.
  • Di halaman berikutnya, isi kolom yang diperlukan dan pilih jenis "sistem kontrol versi" untuk menjadi subversi.

    Catatan: Anda mungkin ingin melirik apa perbedaan antara lisensi yang ditawarkan Google, sebelum Anda memilih satu untuk proyek tersebut.
  • Klik "Buat proyek".
"Checkout" copy pekerjaan Anda

Setelah proyek Anda dibuat, Anda seharusnya dapat menemukan petunjuk tentang cara mengaksesnya di tab "Sumber".

Yang menyenangkan tentang kode Google adalah bahwa ini akan memungkinkan versi anonim read-only untuk proyek Anda. Jika Anda tidak ingin berurusan dengan kerumitan menciptakan proyek Anda sendiri, Anda dapat secara anonim memeriksa repositori penulis ini.

Satu catatan tentang proyek hotfortech: Proyek ini dimaksudkan untuk menjadi pembungkus untuk fitur yang telah ditambahkan ke DD-WRT pada How-To Geek (yang saya pribadi gunakan) ditambah beberapa tweak pribadi. Sementara proyek ini dirancang untuk bekerja bersama dengan artikel yang diterbitkan di sini tentang howtogeek, itu masih proyek pribadi saya. Artinya, itu sangat cocok untuk router Buffalo saya (arsitektur AR71xx), keinginan pribadi saya dan rentan terhadap borkage sesekali.

Di Linux / DD-WRT

Buat direktori untuk bekerja, misalnya pada DD-WRT, yang bisa jadi:

mkdir -p / jffs / svn; cd / jffs / svn

Perintah lengkap di Linux terdiri dari perintah SVN itu sendiri, perintah "checkout", alamat repositori dan direktori untuk checkout juga. Buat direktori kosong dan jalankan perintah di bawah ini:

svn checkout http://hotfortech-dd-wrt.googlecode.com/svn/trunk/ hotfortech-dd-wrt-read-only

Perhatikan bahwa pada contoh di atas, versi read-only sedang diperiksa. Jika Anda memilih untuk membuat repositori Anda sendiri, Anda harus menggunakan tautan httpS.

Di Windows

Karena kura-kura adalah ekstensi shell, Anda harus menggunakan menu konteks file explorer Windows (klik kanan) untuk menggunakannya. Bahkan, jika Anda mencoba untuk memohonnya dari menu awal, Anda akan mendapatkan:

  • Buat direktori kosong.
  • Klik kanan di dalamnya untuk memunculkan menu konteks.
  • Pilih "SVN Checkout":
  • Salin & tempel tautan untuk proyek (jika Anda memilikinya) ke dalam Kotak Teks "URL":
  • Bergantung pada ukuran proyek Anda, mungkin perlu waktu beberapa saat, tetapi ketika "Checkout" telah selesai Anda akan melihat sesuatu seperti:
  • Anda mungkin mulai berkembang.

“Perbarui” & “Gabungkan” copy pekerjaan Anda
Jika Anda bekerja pada kode dengan rekan kerja, atau Anda sendiri memperbarui kode dari beberapa lokasi (yaitu laptop, desktop, atau bahkan router), Anda harus memperbarui copy pekerjaan Anda sebelum Anda melakukan perubahan terbaru.

Di Linux / DD-WRT

Perintah untuk melakukan ini pada sistem POSIX ini hanyalah:

svn up

Di Windows

  • Klik kanan di direktori kerja dan pilih "Pembaruan SVN":
  • Jika Anda mengalami konflik, coba ikuti instruksi di layar dan gunakan penilaian Anda tentang apa yang harus dilakukan terhadapnya.

"Komit" perubahan Anda
Itu saja, Anda harus bebas dari konflik dan siap untuk memperbarui repositori dengan perubahan Anda.
Satu hal yang perlu diperhatikan di sini adalah bahwa ini adalah praktik umum untuk menambahkan pesan "log" ke komit, karena dapat dengan mudah mengingat mengapa perubahan dibuat. Bahkan, repositori Google menjadikan ini sebagai prasyarat wajib untuk melakukan.

Di Linux / DD-WRT

Ini adalah contoh komitmen yang saya buat untuk proyek hotfortech yang meningkatkannya ke versi 19:

svn commit -m "diperbarui untuk mencerminkan tautan paket ant-iklan baru"

Di Windows

  • Klik kanan di direktori kerja dan pilih "SVN Komit":
  • Anda harus disambut oleh jendela yang memungkinkan Anda mencatat pesan log:
  • Tekan OK dan ketika diminta kata sandi, berikan kata sandi yang dibuat Google.
  • Jika komit berhasil, Anda akan melihat sesuatu seperti:
  • Itu saja, Anda harus dapat berkomitmen seperti BOSS.

Pernyataan akhir
Ini sudah cukup untuk memulai. Anda disarankan untuk membaca buku referensi SVN untuk mendapatkan pemahaman yang lebih dalam dan lebih baik tentang semua penggunaan, opsi, dan peringatan SVN. Selain itu, kami mengingatkan Anda (lagi) bahwa subversi bukanlah satu-satunya sistem kontrol versi di luar sana dan GIT (yang dibuat oleh Linus Torvalds pendiri kernel Linux) nampaknya mulai populer dalam beberapa tahun terakhir.

Jika Anda memilih menjalankan "running-config.sh" dari proyek hotfortech di router Anda, Anda akan menemukan bahwa ia akan menginstal untuk Anda: Paket anti-iklan, skrip geek-init Opkg, serta hal-hal seperti GNU “ls”, “less”, “BASH” dan banyak lagi.

/jffs/svn/hotfortech-dd-wrt/running-conf.sh

Lebih banyak fitur yang tertunda dan akan ditambahkan di masa depan.

Administrator sistem akan mengkodekan jalan keluar dari pengkodean.