Nama : Rahim Rasyid NIM : G64086060 Langkah-langkah penggunaan software tortoiseSVN : 1. Buatlah sebuah folder untuk menampung semua file yang akan disharing bersama user lainnya. 2. Folder baru tersebut untuk menampung semua repository yang akan digunakan. 3. Masuk ke folder tersebut, kemudian buat folder baru yang disesuaikan dengan nama project yang akan dikembangkan. 4. Masuk lagi ke dalam folder project yang anda buat, kemudian klik kanan --pilih tortoiseSVN --- pilih lagi “create repository here” 5. Setelah perintah dilangkah ke 4 dijalankan, akan muncul beberapa file yang merupakan bagian dari program ini. File-file ini digunakan oleh Subversion untuk menyimpan semua data kode sumber, dan digunakan untuk menyimpan keterangan-keterangan yang diperlukan oleh Subversion. 6. Langkah selanjutnya yang perlu dilakukan adalah membuat 3 buah folder baru di dalam repository yang sudah ada. Folder yang akan dibuat adalah trunk, tag, dan branch. a. Trunk, dimana semua kode program yang masih dalam tahap pengembangan berada b. Tag, pada beberapa event tertentu kita perlu menandai repository dan membuat titik yang jelas dimana kita bisa mengembalikan kondisi kode program dengan mudah. Misalnya rilis aplikasi ke QC, rilis aplikas ke publik atau menginstal program ke lingkungan production. c. Branch, jika kita ingin bekerja secara paralel, misalnya ada satu tim kecil pengembang yang melakukan bug fixing dan tim yang lain tetap menambahkan fitur baru ke folder trunk, kita perlu satu folder terpisah untuk bekerja, folder untuk memenuhi kebutuhan ini disebut sebagai branch. 7. Cara membuat folder-folder yang dimaksudkan pada langkah 6 sebagai berikut. a. Masuk ke folder project yang sudah dibuat tadi b. Lakukan klik kanan --- pilih tortoiseSVN --- repo-browser c. Akan muncul pop-up windows yang menunjukkan isi dari repository yang kita miliki. Pada awal pembuatannya tidak akan ada folder yang anda lihat. d. Setelah itu klik kanan pada kolom sebelah kanan --- pilih “create folder”
e. Berikan nama pada folder yang ingin anda buat sesuai dengan kebutuhan pada langkah 6. Ulangi langkah 7.d untuk membuat folder lainnya. 8. Setelah semua langkah diatas dilakukan, pembuatan folder repository telah selesai. Sekarang kita akan membuat folder local sebagai tempat bekerjanya para user. 9. Buat folder baru di luar dari folder tempat penyimpanan repository tersebut. 10.Masuk ke dalam folder tersebut, klik kanan --- pilih “SVN Checkout”. Akan muncul pilihan untuk menentukan folder apa yang akan dipengaruhi oleh folder baru ini pada folder yang ada di repository. Untuk langkah ini kita pilih folder trunk yang ada di repository. 11. Setelah langkah 10 dilakukan, kita sudah bisa bekerja dengan menggunakan folder local tanpa langsung masuk ke folder penyimpanan repository. Untuk memasukkan hasil pekerjaan kita pada folder repository, klik kanan --- pilih “SVN Commit”. Untuk mengambil file terbaru yang ada pada folder repository, klik kanan --- pilih “SVN Update”. SELAMAT BEKERJA! Permasalahan yang muncul adalah file sharing. Untuk mengatasi masalah ini, ada 2 metode yang digunakan yaitu Lock-Edit-Unlock dan Checkout-Edit-Merge. 1. Lock-Edit-Unlock a. User yang pertama kali menggunakan file pada repository akan memberikan signal Lock pada file tersebut. Tujuannya adalah agar user lain yang ingin menggunakan file yang sama tidak bisa memakainya. b. User lain akan menunggu sampai user pertama melepaskan Lock pada file tersebut agar bisa menggunakannya. c. Setelah user yang pertama menyimpan perubahan yang dilakukannya, maka dia akan mengupdate file di repository dan memberikan signal Unlock pada file tersebut. Dengan demikian file tersebut sudah bisa di akses oleh user lain yang ingin memakainya. d. Merupakan metode yang sangat kaku, karena user yang ingin menggunakan file yang ada di repository harus menunggu jika sudah ada user lain yang lebih dulu memakai file tersebut. Akan terjadi perebutan akses file jika user yang menunggu file itu cukup banyak, yang memakai istilah siapa cepat dia dapat. 2. Checkout-Edit-Merge a. Metode inilah yang diterapkan oleh Subversion, tidak adanya siklus Lock-Unlock dan menghilangkan rebutan file antar user. b. User bisa secara bersama-sama menggunakan file yang sama dalam repository. c. Perubahan yang dilakukan oleh user yang pertama kali melakukan commit, akan disimpan pada repository dan nilai revision akan bertambah. d. Jika selanjutnya ada user lain yang melakukan commit pada file tersebut dan ternyata nilai revision yang dimilikinya lebih rendah dari yang ada di repository, maka tidak akan diterima oleh repository karena “out-of-date”.
e. Dengan adanya pesan tersebut, user akan melakukan update data yang ada di folder local agar mempunyai nilai revision yang sama dengan repository. f. Setelah melakukan update folder local, ada dua situasi yang bisa terjadi, yaitu kedua user bekerja pada baris kode yang berbeda atau kedua user bekerja pada baris kode yang sama. g. Jika dua user bekerja pada baris kode yang berbeda, maka setelah user melakukan update folder local bisa langsung melakukan commit. Perubahan yang dilakukan oleh dua user tersebut akan disimpan tanpa harus menghilangkan perubahan yang dilakukan oleh salah satu user ( merge ). h. Jika dua user bekerja pada baris kode yang sama, Subversion akan memberikan pesan terjadinya konflik pada file. Untuk mengatasi masalah ini, kedua user harus melakukan perundingan tentang hal tersebut, perubahan siapa yang akan dipakai.