想學git或github有什麼好建議呢?
2017/03/04 08:06
瀏覽23
迴響0
推薦0
引用0
**伺服器代管推薦文** 首先您需要知道 Git 是幹什麼用的,如果你沒先理解 Git 的用途,以你 html、css... 等經驗來看,看不理解是很正常的。
知道 Git 的用途後就是如何使用的問題了,當然 git 要先安裝好。
Git 的指令很多,但常用的也就那幾個,再看一次網上的教學文件,先略過初學者不太需要的指令。知道指令後,用起來就簡單了。
若你不喜歡使用指令操作程式的話,你可以去安裝 RabbitVCS 這套軟體,讓你能透過 GUI 介面去操作。當然,原來的 Git 還是要安裝,RabbitVCS 只是個 GUI 殼而已。
Git 等版本控制系統是為了管理程式碼而設計的,雖然實際上它們可以管理任何的二進制檔案,但很多好用的功能還都是針對程式碼檔案設計。
Git 不像 SVN 等中央伺服器形式的版本控制系統,Git 可以單獨在一臺電腦上執行,架設伺服器並不是必須的。基本上如果你沒有下面幾個需求的話,可以不考慮 Git 伺服器的問題:
1. 在多臺電腦間工作的需求,也就是可能會這邊寫寫程式後換另一臺電腦繼續寫。
2. 多人協同開發的需求。
3. 異地備份的需求。
4. 分享你的程式碼給別人瀏覽、使用的需求。
只有在擁有上面任一需求的時候,我才會建議要有個 Git 伺服器。
然而架伺服器很麻煩這大家都知道,伺服器的架設、網域的申請、以及後續的維護管理。如果有人能幫我們負擔這些工作,讓我們這些開發人員可以專心在開發上的話多好,而 GitHub 就是提供這樣服務的廠商,事實上提供這類服務的單位中比較有名有規模的有:
1. GitHub:大概是全球最出名的 Git 版本庫服務商。
2. Google Code:事實上做的也不錯,只是名氣沒有 GitHub 高。
3. 自由軟體鑄造場:本國國家高速網路中心設立的服務,中文化介面,我個人用的很開心。
這些服務商就是提供版本伺服器的服務,基本上若你會 Git 的話,GitHub 等服務的使用就會了。
上面這些服務有些要注意的就是,放上去的專案必須開源,若想放私人或企業的私有專案則要交管理費。
另外提一下常見對於 Git、SVN 等軟體需要收費的誤解,這些都是我曾見過的個人甚至公司對他們的誤解。
1. Git、SVN 等一般人使用免費,但是公司行號使用需要付費?
事實上開源版本控制系統(或任何自由軟體)可以任意的使用在任何用途上。大家對其要收費的誤解主要是弄不清楚 Git (軟體本身) 和 GitHub (服務供應商) 的分別,若你的伺服器是自己架的,基本上就完全隨你玩了。
2. 使用開源版本控制系統的專案也必須為開源專案?
這完全是因為自己搞不清楚自由軟體授權而產生的誤解。自由軟體對於「使用」這件事是完全自由的,我可以使用自由的 LibreOffice 製做私密不公開的文件、使用自由的 Linux 儲存管理我的檔案而不需將檔案公開。
自由軟體的授權主要是用來約束對於軟體的修改、延伸、發佈等行為。因此,使用自由的版本控制系統來管理我的專案是完全不受限的;但若我要修改 Git 的程式碼、擴展 SVN 的功能的話,就必須將這些修改公開。
以上說明希望有幫助,有問題再問。
2014-09-06 07:27:29 補充:
有協同開發的需求,建議設一臺伺服器。不過既然只是內部使用,狀況就會簡單很多,受侵入的麻煩也單純很多。
雖然說把 Git 資料庫放在共享資料匣是一個做法,但不建議多人協同開發使用,因為只要有兩個人在同一時間存取這個資料庫就足以把他損毀;一人開發時之所以可以用是因為一個人基本上不會同時從兩臺電腦寫入版本庫。
建立伺服器的方法,說實在我不是專業網管,也還不清楚實際的操作細節。但既然是公司內部使用而已,你可以用關鍵字 Ubuntu Git Server 搜尋到一堆的教學。Git 本身就有相關的服務機制,還需要 SSH 或 HTTP 等服務讓別人可以存取電腦上的相關資源,應該是這樣。
知道 Git 的用途後就是如何使用的問題了,當然 git 要先安裝好。
Git 的指令很多,但常用的也就那幾個,再看一次網上的教學文件,先略過初學者不太需要的指令。知道指令後,用起來就簡單了。
若你不喜歡使用指令操作程式的話,你可以去安裝 RabbitVCS 這套軟體,讓你能透過 GUI 介面去操作。當然,原來的 Git 還是要安裝,RabbitVCS 只是個 GUI 殼而已。
Git 等版本控制系統是為了管理程式碼而設計的,雖然實際上它們可以管理任何的二進制檔案,但很多好用的功能還都是針對程式碼檔案設計。
Git 不像 SVN 等中央伺服器形式的版本控制系統,Git 可以單獨在一臺電腦上執行,架設伺服器並不是必須的。基本上如果你沒有下面幾個需求的話,可以不考慮 Git 伺服器的問題:
1. 在多臺電腦間工作的需求,也就是可能會這邊寫寫程式後換另一臺電腦繼續寫。
2. 多人協同開發的需求。
3. 異地備份的需求。
4. 分享你的程式碼給別人瀏覽、使用的需求。
只有在擁有上面任一需求的時候,我才會建議要有個 Git 伺服器。
然而架伺服器很麻煩這大家都知道,伺服器的架設、網域的申請、以及後續的維護管理。如果有人能幫我們負擔這些工作,讓我們這些開發人員可以專心在開發上的話多好,而 GitHub 就是提供這樣服務的廠商,事實上提供這類服務的單位中比較有名有規模的有:
1. GitHub:大概是全球最出名的 Git 版本庫服務商。
2. Google Code:事實上做的也不錯,只是名氣沒有 GitHub 高。
3. 自由軟體鑄造場:本國國家高速網路中心設立的服務,中文化介面,我個人用的很開心。
這些服務商就是提供版本伺服器的服務,基本上若你會 Git 的話,GitHub 等服務的使用就會了。
上面這些服務有些要注意的就是,放上去的專案必須開源,若想放私人或企業的私有專案則要交管理費。
另外提一下常見對於 Git、SVN 等軟體需要收費的誤解,這些都是我曾見過的個人甚至公司對他們的誤解。
1. Git、SVN 等一般人使用免費,但是公司行號使用需要付費?
事實上開源版本控制系統(或任何自由軟體)可以任意的使用在任何用途上。大家對其要收費的誤解主要是弄不清楚 Git (軟體本身) 和 GitHub (服務供應商) 的分別,若你的伺服器是自己架的,基本上就完全隨你玩了。
2. 使用開源版本控制系統的專案也必須為開源專案?
這完全是因為自己搞不清楚自由軟體授權而產生的誤解。自由軟體對於「使用」這件事是完全自由的,我可以使用自由的 LibreOffice 製做私密不公開的文件、使用自由的 Linux 儲存管理我的檔案而不需將檔案公開。
自由軟體的授權主要是用來約束對於軟體的修改、延伸、發佈等行為。因此,使用自由的版本控制系統來管理我的專案是完全不受限的;但若我要修改 Git 的程式碼、擴展 SVN 的功能的話,就必須將這些修改公開。
以上說明希望有幫助,有問題再問。
2014-09-06 07:27:29 補充:
有協同開發的需求,建議設一臺伺服器。不過既然只是內部使用,狀況就會簡單很多,受侵入的麻煩也單純很多。
雖然說把 Git 資料庫放在共享資料匣是一個做法,但不建議多人協同開發使用,因為只要有兩個人在同一時間存取這個資料庫就足以把他損毀;一人開發時之所以可以用是因為一個人基本上不會同時從兩臺電腦寫入版本庫。
建立伺服器的方法,說實在我不是專業網管,也還不清楚實際的操作細節。但既然是公司內部使用而已,你可以用關鍵字 Ubuntu Git Server 搜尋到一堆的教學。Git 本身就有相關的服務機制,還需要 SSH 或 HTTP 等服務讓別人可以存取電腦上的相關資源,應該是這樣。
本篇文章引用自此: https://tw.answers.yahoo.com/question/index?qid=20140904000015KK03211


