叉子(軟體)
什麼是分叉(軟體)?
軟體內分叉是指由使用另一個軟體包的來源副本的開發人員創建一個全新的專案。分叉為軟體創建了一條新路徑,將其分成不同的版本。在開源社群中,分叉非常常見,並且通常被認為是正面的。
當大量開發人員為了改進專案並可能取代它而向不同方向分支時,通常會發生分叉。
開發人員首先從軟體包中獲取課程代碼的合法副本,然後開始自己的開發,創建軟體的新版本。免費和開源軟體使這成為可能並且合法,並且不違反任何版權法。這意味著此類軟體可以合法分叉,無需事先獲得管理分發軟體專案的人員的任何許可。然後,我們的想法是發布您的改進,以便整個社區都能從中受益。
雖然分叉被視為自由的象徵,會帶來有用的更新,但分叉經常會因為開發者社群之間的衝突而發生,從而引發對立的觀點。最大的開發者群體通常是那些保留原來的名稱並堅持使用者社群的人。軟體分叉可能會分裂開發者社區,這種分裂要么是友好的,要么充滿怨恨。
競爭項目也可能意味著開發人員不再與繼任者共享程式碼,從而導致未來的合法性、所有權和方向問題。
與自由和開源軟體不同,專有軟體由擁有專有合法權利的版權所有者許可。只有當版權所有者已授予許可並且需要分叉來創建該軟體的新版本時,才可以對此類軟體進行分叉。