GitHub 的 Fork 是什么意思?
作者:李博洋
鏈接:https://www.zhihu.com/question/20431718/answer/18040919
來源:知乎
著作權歸作者所有。商業轉載請聯系作者獲得授權,非商業轉載請注明出處。
上面說的都是局部,其實是forking 工作流的一個功能。<img src="https://pic3.zhimg.com/dadbcef0bca3d2eb68ef6009f45361e2_b.png" data-rawwidth="565" data-rawheight="355" class="origin_image zh-lightbox-thumb" width="565" data-original="https://pic3.zhimg.com/dadbcef0bca3d2eb68ef6009f45361e2_r.png">
作者:李雨澤
鏈接:https://www.zhihu.com/question/20431718/answer/72009768
來源:知乎
著作權歸作者所有。商業轉載請聯系作者獲得授權,非商業轉載請注明出處。
作者:李鼎
鏈接:https://www.zhihu.com/question/20431718/answer/74250205
來源:知乎
著作權歸作者所有。商業轉載請聯系作者獲得授權,非商業轉載請注明出處。
GitHub中Fork 即是 服務端的倉庫克隆,包含了原來的倉庫(即upstream repository,上游倉庫)所有內容,如分支、Tag、提交;代碼托管服務(如Github、BitBucket)提供了方便的完成Fork操作的功能(在倉庫頁面點一下Fork按鈕)。這樣有了一個你自己的可以自由提交的倉庫,然后可以通過的PullRequest把你的提交貢獻給 原倉庫。
而對于原倉庫Owner來說,鼓勵別人Fork自己的倉庫,通過PullRequest給自己的倉庫做貢獻,也能提高了自己倉庫的知名度。
要更多地了解GitHub中Fork ,參見本人的中文譯文:1.《Forking工作流》 https://github.com/oldratlee/translations/blob/master/git-workflows-and-tutorials/workflow-forking.md
<img src="https://pic4.zhimg.com/v2-ba2bd4a27309817623b56acae1939767_b.png" data-rawwidth="400" data-rawheight="344" class="content_image" width="400">2. 以及《Pull Request工作流》oldratlee/translations 3. 各個相關的典型工作流的體系綜述 參見:《Git工作流指南》 https://github.com/oldratlee/translations/blob/master/git-workflows-and-tutorials/README.md
--- 分 --- 割 --- 線 ---展開來說明,如下:
1. 先簡單地說說一下詞源
以方便從常見簡單的意思 理解到 引申比喻的意思~
Fork 的本義是 叉子(名詞) 。
<img src="https://pic2.zhimg.com/37c8a551c139e20502088d978d4529cd_b.png" data-rawwidth="500" data-rawheight="103" class="origin_image zh-lightbox-thumb" width="500" data-original="https://pic2.zhimg.com/37c8a551c139e20502088d978d4529cd_r.png">比較自然的引申成 分叉(動詞) ,就像上面叉子,從左到從右,一條線變成多條了。
更多 詞含義參見 fork是什么意思_fork在線翻譯。
2. 在計算機中,Fork一詞的使用
2.1 Git/GitHub倉庫克隆
Git/GitHub 用戶下面的圖 來表達 Fork:分叉、克隆 出一個(倉庫的)新拷貝。
<img src="https://pic1.zhimg.com/3c13b2d3ddbf178b4debfea57644e520_b.png" data-rawwidth="256" data-rawheight="256" class="content_image" width="256">要了解GitHub中Fork的話 ,如 @李雨澤 回答中所說的,其實是要理解的是 forking 工作流,參見本人的中文譯文《Forking工作流》 https://github.com/oldratlee/translations/blob/master/git-workflows-and-tutorials/workflow-forking.md,以及相關的典型工作流 《Git工作流指南》 oldratlee/translations
2.2 Linux 的 Fork 函數
運行著的程序分成2個(幾乎)完全一樣的進程,每個進程都啟動一個從代碼的同一位置開始執行的線程,這兩個進程中的線程繼續執行,就像是兩個用戶同時啟動了該應用程序的兩個副本。# 詳見 fork_百度百科
Fork 函數的命名所表達含義/比喻 和 GitHub中Fork 類似。可見,Fork一詞在計算機界 這樣的用法 也是 由來已久。# Fork 函數 具體命名出現的時間 還沒有考證,歡迎 Linux高手給出考證。
3. 為什么Fork會火起來( 有些和樓主本義無關的閑話 :)
在『碼農』圈 Fork一詞,現在確實很火,當然和『全球最大的同性交友網站的GitHub』流行而大大提高出鏡率有關系,常常可以看到『Fork me』這個詞,鼓勵別人Fork自己的倉庫,通過PullRequest給自己的倉庫做貢獻,也是提高了自己倉庫的知名度。# 關于 PullRequest 參見 oldratlee/translations
另外,個人覺得的原因是:
1. Fork 一詞 諧音了 『F*ck』,『Fork(F*ck) me』能體現自己的幽默態度。有Sex暗示的內容總是容易讓人興奮和記住,人的本性,哈哈
2. Fork也是有那方面的含義:Forking - A sexual act.
總結
以上是生活随笔為你收集整理的GitHub 的 Fork 是什么意思?的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: Turtlebot+ROS Stage仿
- 下一篇: redhat7安装oracle11gR2