bab8 - tcc - web‐based software development.pptx

Upload: rizal-adiwangsa

Post on 05-Nov-2015

4 views

Category:

Documents


0 download

TRANSCRIPT

PowerPoint Presentation

Webbased software developmentOleh:Luthfan Hadi Pramono, S.ST, M.T.STMIK - AKAKOM

Kontrak PengajaranToleransi keterlambatan 15 mntKomponen penilaianTugas 30%UTS 30%UAS 40%TopikKonsep GITGIThttps://git-scm.com/

=====================

3TopikKonsep GITGIThttps://git-scm.com/

=====================4Konsep GITVersion control adalah sebuah sistem yang mencatat setiap perubahan terhadap sebuah berkas atau kumpulan berkas sehingga pada suatu saat anda dapat kembali kepada salah satu versi dari berkas tersebut.Jika anda adalah seorang desainer grafis atau desainer web dan anda ingin menyimpan setiap versi dari gambar atau layout yang anda buat (kemungkinan besar anda pasti ingin melakukannya), maka Version Control System (VCS) merupakan sebuah solusi.https://git-scm.com/book/id/v1/Memulai-Git-Tentang-Version-Controlhttp://en.wikipedia.org/wiki/Git_(software)

=====================5Konsep GITAda tiga macam version controlVersion Control System LokalVersion Control System TerpusatVersion Control System Terdistribusihttps://git-scm.com/book/id/v1/Memulai-Git-Tentang-Version-Controlhttp://en.wikipedia.org/wiki/Git_(software)

=====================6Konsep GITKebanyakan orang melakukan pengontrolan versi dengan cara menyalin berkas-berkas pada direktori lain (mungkin dengan memberikan penanggalan pada direktori tersebut, jika mereka rajin)Gambar berikut menunjukkan Diagram version control lokal.

https://git-scm.com/book/id/v1/Memulai-Git-Tentang-Version-Controlhttp://en.wikipedia.org/wiki/Git_(software)

=====================7Konsep GITPermasalahan berikutnya yang dihadapi adalah para pengembang perlu melakukan kolaborasi dengan pengembang pada sistem lainnya. Untuk mengatasi permasalahan ini maka dibangunlah Centralized Version Control Systems (CVCSs).Gambar berikut menunjukkan Diagram version control terpusat.

https://git-scm.com/book/id/v1/Memulai-Git-Tentang-Version-Controlhttp://en.wikipedia.org/wiki/Git_(software)

=====================8Konsep GITDistributed Version Control Systems (DVCS), klien tidak hanya melakukan checkout untuk snapshot terakhir setiap berkas, namun mereka (klien) memiliki salinan penuh dari repositori tersebut. Jadi, jika server mati, dan sistem berkolaborasi melalui server tersebut, maka klien manapun dapat mengirimkan salinan repositori tersebut kembali ke server. Setiap checkout pada DVCS merupakan sebuah backup dari keseluruhan dataGambar berikut menunjukkan Diagram version control yang terdistribusi.

https://git-scm.com/book/id/v1/Memulai-Git-Tentang-Version-Controlhttp://en.wikipedia.org/wiki/Git_(software)

=====================9Konsep GITGit merupakan Distributed Version Control Systems (DVCS), Git memungkinkan sekelompok orang untuk bekerja dalam dokumen yang sama (bahkan kode program), dalam waktu yang sama, dan tanpa harus bertemu satu sama lain. Git merupakan sistem kontrol versi terdistribusiGit menyimpan datanya sebagai snapshot dari proyek setiap saat. Gambar berikut akan memperlihatkan ilustrasi cara kerja git.

https://git-scm.com/book/id/v1/Memulai-Git-Tentang-Version-Controlhttp://en.wikipedia.org/wiki/Git_(software)

=====================10Konsep GITCharacteristicsStrong support for non-linear developmentDistributed developmentCompatibility with existing systems/protocolsEfficient handling of large projectsCryptographic authentication of historyToolkit-based designPluggable merge strategiesGarbage accumulates unless collectedPeriodic explicit object packinghttp://en.wikipedia.org/wiki/Git_(software)

=====================

Strong support for non-linear developmentGit mendukung percabangan dan penggabungan secara berulang, termasuk tool yang digunakan untuk menampilakan dan menanavigasi histori pengembangan (software) non-linier.

Distributed developmentGit dapat memberikan local copy pada setiap developer dari histori pengembangan (software) dan berubahan akan dicopy dari satu repository ke repository yang lain.

Compatibility with existing systems/protocolsRepositori bisa dipublikasikan via HTTP, FTP, rsync atau Protokol Git melalui plain socket (text) ataupun ssh. Git memiliki CVS server emulation, yang dapat digunakan CVS klien yang ada dan plugin IDE untuk mengakses repositori Git.

Efficient handling of large projectsGit bekerja dengan sangat cepat dan scalable.

Cryptographic authentication of historyHistori Git disimpan dalam cara tertentu dimana ID dari versi tertentu bergantung pada histori development yang lengkap yang mengarah pada user yang menggunakan.

Toolkit-based designGit didesain sebagai set program yang ditulis dengan bahasa C, dengan beberapa shell script yang menyediakan wrappers (pembungkus) disekeliling program tersebut.

Pluggable merge strategiesSebagai bagian dari desain toolkit, Git memiliki model dari penggabungan yang tidak lengkap yang telah didefinisikan dan memiliki algoritma yang banyak untuk melengkapinya, jika tidak bisa maka akan memberitahu user bahwa Git tidak bisa melakukan penggabungan secara otomatis sehingga memerlukan edit secara manual.

Garbage accumulates unless collectedMembatalkan operasi atau menyimpan perbahan yang dapat mengakibatkan object dapat teruntai di database.

Periodic explicit object packingGit menyimpan object yang baru dibuat pada file yang terpisah.

11TopikKonsep GITGIT12GITGit memiliki 3 keadaan utama dimana berkas anda dapat berada: committed, modified dan staged.Ini membawa kita ke tiga bagian utama dari sebuah projek Git: direktori Git, direktori kerja, dan staging area.

https://try.github.io/levels/1/challenges/1http://rogerdudler.github.io/git-guide/https://git-scm.com/book/id/v1/Memulai-Git-Dasar-Git

=====================

Kebanyakan operasi pada Git hanya membutuhkan berkas-berkas dan resource lokal tidak ada informasi yang dibutuhkan dari komputer lain pada jaringan anda. Jika Anda terbiasa dengan Version Control System (VCS) terpusat dimana kebanyakan operasi memiliki overhead latensi jaringan, aspek Git satu ini akan membuat anda berpikir bahwa para dewa kecepatan telah memberkati Git dengan kekuatan. Karena anda memiliki seluruh sejarah dari proyek di lokal disk anda, dengan kebanyakan operasi yang tampak hampir seketika.

Direktori Git adalah dimana Git menyimpan metadata dan database objek untuk projek anda. Ini adalah bahagian terpenting dari Git, dan inilah yang disalin ketika anda melakukan kloning sebuah repository dari komputer lain.

Direktori kerja adalah sebuah checkout tunggal dari satu versi dari projek. Berkas-berkas ini kemudian ditarik keluar dari basisdata yang terkompresi dalam direktori Git dan disimpan pada disk untuk anda gunakan atau modifikasi.

Staging area adalah sebuah berkas sederhana, umumnya berada dalam direktori Git anda, yang menyimpan informasi mengenai apa yang menjadi commit selanjutnya. Ini terkadang disebut sebagai index, tetapi semakin menjadi standard untuk menyebutnya sebagai staging area.13GITAlur kerja dasar GitUser mengubah berkas dalam direktori kerja anda.User membawa berkas ke stage, menambahkan snapshotnya ke staging area.User melakukan commit, yang mengambil berkas seperti yang ada di staging area dan menyimpan snapshotnya secara permanen ke direktori Git anda.Berikut tutorial sederhana untuk menggunakan Githttps://try.github.io/levels/1/challenges/1

https://try.github.io/levels/1/challenges/1http://rogerdudler.github.io/git-guide/https://git-scm.com/book/id/v1/Memulai-Git-Dasar-Git

=====================

14TugasJoin to FB group TCC - kls 2 atau TCC - kls 3 atau messege FB ke luthfanhp pesan: add group kelas TCC kls 2 / TCC kls 3Tugas praktikMengimplementasikan penggunaan GitPraktik:Kerjakan tutorial pada link berikut: http://rogerdudler.github.io/git-guide/index.id.html

Laporan:dalam format .doc berisi langkah-langkah mengimplementasikan Git, disertakan printscreen dan penjelasan

kirim ke: [email protected]: tcc_2_t8_nim_nama pertamasubject: tcc_3_t8_nim_nama pertama

Deadline pengumpulan tugas:kelas 2: 27 Mei '15, jam24.00kelas 3: 27 Mei '15, jam24.0015ReferensiRajkumar, Cristian, S. Thamarai, Mastering Cloud Computing foundation and application Programming, Morgan Kaufman, 2013.Lee Newcombe, Securing Cloud Services, Capgemini, 2012.S. Srinivasan, Cloud Computing Basics, Springer, 2014.https://developers.google.com/cloud/https://www.openshift.com/https://www.appfog.com/https://azure.microsoft.com/http://www.xenproject.org/http://Codenvy.com, http://Github.com

16