從Git到GitHub,詳細教程

衆所周知,一個稍微有點規模的項目,都不多是一我的單打獨鬥完成的(能完成的大神別打我),因此,一個高效的項目團隊就須要一個NB的工具來進行有效的交流(曾經有人問我企鵝不就能夠嗎,我竟無言以對),今天就把我學習GitHub這牛叉利器的心路歷程記錄下來,但願能幫到你們!html

首先,介紹一下這兩個nx的工具!git

GIT:Git是一款免費、開源的分佈式版本控制系統,用於敏捷高效地處理任何或小或大的項目。服務器

從通常開發者的角度來看,git有如下功能:ssh

一、從服務器上克隆完整的Git倉庫(包括代碼和版本信息)到單機上。
二、在本身的機器上根據不一樣的開發目的,建立分支,修改代碼。
三、在單機上本身建立的分支上提交代碼。
四、在單機上合併分支。
五、把服務器上最新版的代碼fetch下來,而後跟本身的主分支合併。
六、生成補丁(patch),把補丁發送給主開發者。
七、看主開發者的反饋,若是主開發者發現兩個通常開發者之間有衝突(他們之間能夠合做解決的衝突),就會要求他們先解決衝突,而後再由其中一我的提交。若是主開發者能夠本身解決,或者沒有衝突,就經過。
八、通常開發者之間解決衝突的方法,開發者之間可使用pull 命令解決衝突,解決完衝突以後再向主開發者提交補丁。
從主開發者的角度(假設主開發者不用開發代碼)看,git有如下功能:
一、查看郵件或者經過其它方式查看通常開發者的提交狀態。
二、打上補丁,解決衝突(能夠本身解決,也能夠要求開發者之間解決之後再從新提交,若是是開源項目,還要決定哪些補丁有用,哪些不用)。
三、向公共服務器提交結果,而後通知全部開發人員。
 
優勢: 適合分佈式開發,強調個體。公共服務器壓力和數據量都不會太大。速度快、靈活。任意兩個開發者之間能夠很容易的解決衝突。離線工做。
缺點: 資料少(起碼中文資料不多)。學習週期較長。不符合常規思惟。代碼保密性差,一旦開發者把整個庫克隆下來就能夠徹底公開全部代碼和版本信息。
GITHUB:gitHub是一個面向開源及私有軟件項目的託管平臺,由於只支持git 做爲惟一的版本庫格式進行託管,故名gitHub。
GitHub 使用 git 分佈式版本控制系統,而 git 最初是 LinusTorvalds 爲幫助Linux開發而創造的,它針對的是 Linux 平臺,所以 git 和 Windows 歷來不是最好的朋友,由於它一點也不像 Windows。GitHub 發佈了GitHub for Windows,爲 Windows 平臺開發者提供了一個易於使用的 Git 圖形客戶端。
 
說了怎麼多,仍是不懂,git和GitHub到底能幹啥!通俗的說,好比你正在開發一個項目,一不當心刪除了一段代碼,而後保存,後面發現無法找回這段代碼了,這就傻眼了,可是,若是你用了git,他能幫助咱們記錄項目中任何的增刪改,你隨時能夠查看操做日誌,隨時能夠恢復到任何一步的版本;固然git再強大,也只能是在本地單打獨鬥,一旦有了GitHub,那就不同了,咱們能夠把多個開發者經過一個GitHub項目連接起來,想象一下,遠在他想的同事在GitHub上下載了你提交的版本version1,而後修改提交version2,你把version2下載下來後,git能自動幫你把修改的部分整合到你的項目中,還能告訴你改了哪些內容,而後你獲得version3,你們都這樣幹了,開發起來效率就會高不少。
 
小編是經過菜鳥教程一步步學習git到GitHub的,相信會對你有幫助,下面我就把學習過程當中遇到的一些坎,列出來,供你們參考:
1.下載安裝都沒有問題
2.安裝完成後咱們須要學習一些基礎的git命令,教程中也有,在這給你們提供一個更詳盡的帖子:http://www.cnblogs.com/cspku/articles/Git_cmds.html
 
3.而後是理解git的工做機制,教程中有
4.如今就能夠建立git倉庫了。git須要一個文件夾做爲倉庫,這個文件夾能夠是新建的,也能夠是你已有的目錄,在用git init命令時不用考慮文件夾裏的文件會不會收到影響,放心吧,不會的。因此你能夠放心大膽的在任何目錄下執行這個命令,創建倉庫。
5.倉庫創建好以後,就能夠跟着教程試一試那些簡單的git 命令。咱們學習git是想要爲之後項目開發服務的,因此只要咱們在項目的文件夾中git init,咱們就至關遠把本身的項目裝進了這個新建的倉庫裏面,之後咱們針對項目的各類操做,git都會幫咱們詳細的記錄下來。
6.難點在於遠程倉庫GitHub的使用,我在下面這個地方遇到小的阻礙:
 
按照教程,當我執行到這一步,發現找不到.ssh文件夾,搞的我覺得本身以前的操做錯了,後來纔在下圖中的地方找到這個文件夾,因此你到這個地方注意哈!
還有須要注意的是, id_rsa.pub文件裏的key很長,看起來好像仍是換了行的,當你用記事本打開的時候不用管它,直接Ctrl+A,Ctrl+C,Ctrl+V,搞定。
還有,上圖中標箭頭的只是教程中本身起的名字,看着像命令,當你操做時必定要換成本身的倉庫名和用戶名。
等你到這一步的時候,相信你已經有小小的成就感了,這一步能夠暫時不用管,由於你除非你是公司的項目或者什麼高大上的涉密項目,這一步暫時還用不上!
相關文章
相關標籤/搜索