Share to: share facebook share twitter share wa share telegram print page

 

Fork (pengembangan perangkat lunak)

Bagan garis waktu pencabangan distribusi Linux.

Dalam rekayasa perangkat lunak, fork proyek adalah hal yang terjadi ketika suatu pengembang menyalin kode sumber dari suatu paket perangkat lunak dan memulai pengembangannya sendiri secara terpisah, menghasilkan perangkat lunak yang berbeda dan terpisah. Istilah ini biasanya mengimplikasikan tidak hanya percabangan dalam pengembangan, tetapi juga perpecahan dalam komunitas pengembangnya, sebuah bentuk skisma.[1]

Perangkat lunak bebas dan sumber terbuka adalah perangkat lunak yang, secara definisi, boleh di-fork dari tim pengembang yang asli tanpa meminta izin terlebih dahulu, tanpa melanggar hukum hak cipta. Akan tetapi, fork berlisensi dari perangkat lunak perorangan (contoh: Unix) juga bisa terjadi.

Etimologi

Kata "fork" telah digunakan dalam artian "membagi menjadi cabang-cabang, berpisah" sejak abad ke-14th.[2] Dalam linkungan perangkat lunak, kata ini mengacu pada panggilan sistem fork, yang menyebabkan suatu proses yang sedang berjalan membagi dirinya sendiri menjadi dua salinan yang (hampir) sama persis yang kemudian (biasanya) melakukan tugas-tugas yang berbeda.[3]

Dalam konteks pengembangan perangkat lunak, "fork" digunakan dalam artian membuat sebuah "cabang" kendali revisi oleh Eric Allman pada tahun 1980, dalam konteks SCCS:[4]

Creating a branch "forks off" a version of the program.

Istilah ini digunakan di Usenet pada tahun 1983 untuk proses pembuatan sebuah subkelompok untuk menampung topik-topik diskusi.[5]

"Fork" belum digunakan dalam artian skisma komunitas pada permulaani Lucid Emacs (sekarang XEmacs) (1991) atau berbagai BSD (1993–1994); Russ Nelson menggunakan istilah "shattering" (bahasa Indonesia: pemecahan) untuk peristiwa ini pada tahun 1993, mengatribusikannya kepada John Gilmore.[6] Akan tetapi, "fork" digunakan dalam bentuk kala kini sejak tahun 1995 untuk menjelaskan pemisahan XEmacs,[7] dan penggunaannya sudah dipahami dalam GNU Project pada tahun 1996.[8]

Lihat pula

Referensi

  1. ^ "Skisma", serta konotasinya, merupakan penggunaan yang biasa, contoh "the Lemacs/FSFmacs schism" Diarsipkan 2009-11-30 di Wayback Machine. (Jamie Zawinski, 2000), "Behind the KOffice split" Diarsipkan 6 July 2013 di Wayback Machine. (Joe Brockmeier, Linux Weekly News, 2010-12-14), "Copyright assignment - once bitten, twice shy" Diarsipkan 30 March 2012 di Wayback Machine. (Richard Hillesley, H-Online, 2010-08-06), "Forking is a feature" Diarsipkan 29 February 2012 di Wayback Machine. (Anil Dash, 2010-09-10), "The Great Software Schism" Diarsipkan 6 January 2012 di Wayback Machine. (Glyn Moody, Linux Journal, 2006-09-28), "To Fork Or Not To Fork: Lessons From Ubuntu and Debian" Diarsipkan 26 February 2012 di Wayback Machine. (Benjamin Mako Hill, 2005).
  2. ^ Entry 'fork' in Online Etymology Dictionary Diarsipkan 25 May 2012 di Wayback Machine.
  3. ^ "The term fork is derived from the POSIX standard for operating systems: the system call used so that a process generates a copy of itself is called fork()." Robles, Gregorio; González-Barahona, Jesús M. (2012). A Comprehensive Study of Software Forks: Dates, Reasons and Outcomes (PDF). OSS 2012 The Eighth International Conference on Open Source Systems. doi:10.1007/978-3-642-33442-9_1. Diarsipkan dari versi asli (PDF) tanggal 2 December 2013. Diakses tanggal 20 October 2012. 
  4. ^ Allman, Eric. "An Introduction to the Source Code Control System." Diarsipkan 6 November 2014 di Wayback Machine. Project Ingres, University of California at Berkeley, 1980.
  5. ^ Can somebody fork off a "net.philosophy"? (John Gilmore, net.misc, 18 January 1983)
  6. ^ Shattering — good or bad? (Russell Nelson, gnu.misc.discuss, 1 October 1993)
  7. ^ Re: Hey Franz: 32K Windows SUCK!!!!! (Bill Dubuque, cu.cs.macl.info, 21 September 1995)
  8. ^ Lignux? (Marcus G. Daniels, gnu.misc.discuss, 7 June 1996)

Pranala luar

Kembali kehalaman sebelumnya


Index: pl ar de en es fr it arz nl ja pt ceb sv uk vi war zh ru af ast az bg zh-min-nan bn be ca cs cy da et el eo eu fa gl ko hi hr id he ka la lv lt hu mk ms min no nn ce uz kk ro simple sk sl sr sh fi ta tt th tg azb tr ur zh-yue hy my ace als am an hyw ban bjn map-bms ba be-tarask bcl bpy bar bs br cv nv eml hif fo fy ga gd gu hak ha hsb io ig ilo ia ie os is jv kn ht ku ckb ky mrj lb lij li lmo mai mg ml zh-classical mr xmf mzn cdo mn nap new ne frr oc mhr or as pa pnb ps pms nds crh qu sa sah sco sq scn si sd szl su sw tl shn te bug vec vo wa wuu yi yo diq bat-smg zu lad kbd ang smn ab roa-rup frp arc gn av ay bh bi bo bxr cbk-zam co za dag ary se pdc dv dsb myv ext fur gv gag inh ki glk gan guw xal haw rw kbp pam csb kw km kv koi kg gom ks gcr lo lbe ltg lez nia ln jbo lg mt mi tw mwl mdf mnw nqo fj nah na nds-nl nrm nov om pi pag pap pfl pcd krc kaa ksh rm rue sm sat sc trv stq nso sn cu so srn kab roa-tara tet tpi to chr tum tk tyv udm ug vep fiu-vro vls wo xh zea ty ak bm ch ny ee ff got iu ik kl mad cr pih ami pwn pnt dz rmy rn sg st tn ss ti din chy ts kcg ve 
Prefix: a b c d e f g h i j k l m n o p q r s t u v w x y z 0 1 2 3 4 5 6 7 8 9