正法寶藏JavaScript第二堂課(Github)

隨著奧運的運動項目一直比賽下去,那我們的課程也當然不能停,雖然知道騎到上課地點不遠,一點出門吃個午餐在騎過去還綽綽有餘,但不知道為什麼就是會一直有點緊張,點的菜怎麼還不送上來,結果騎到那邊還是有十五分鐘以上的空閒時間XD,或許是太重視課程了。

今天上課的同學總共依然是五位,不同的是一位女同學換了另一位陌生男性的面孔,但也不影響上課的行程,今天上課的主題是每個開發者最熱門的平台之一---『Github』!

為什麼Github會這麼的熱門,因為今天開發者(Developer)可以隨意寫想寫的功能,甚至只是一張夢想藍圖即可放在Github上面把自己的想法和code給大家觀賞,但最棒的是,每個人都能幫你提議code要怎麼修正,新增,要知道在這途中你可以跟全世界的工程師做交流,甚至是頂尖的工程師!

要知道在一般人的思想中是很難突然的突破自己的思考框框的,每個人都有自己習慣的一套邏輯,用這個邏輯就會一直產出比較相似的經驗,而麻煩的是今天要創作一個新穎的功能,用著自己的邏輯下去做是會產生很多盲點的,再者,人的大腦有限而語言的用法和code的排列組合似乎是無上限的,每個人都有自己比較擅長的領域,如果可以讓擅長不同領域的人合作不只力量很強大,也能迅速的擴展自己的思考框框,曾經聽有人說過『創新之一就是能把兩個不同的技術完美的融合』。

雖然上面講的這麼神,但其實對我這種剛入門的人來說最實用的功能還是版本控制吧XD,何謂版本控制,我用我小時候玩電動的相似經驗舉例一下,今天玩一個RPG破主線任務的時候NPC給我三個選項,都會帶入不同的結局拿到相應的寶物,那我當然想要拿我想要的寶物但是怕又選錯選項,這時候在選擇三個選項之前我先做一個存擋,之後隨便選一個選項如果並不是我想要的就可以在讀取之前的那個存擋點。

今天Github也能做到這樣的事情!每個人只要codding一個段落了確保沒問題是自己想要的了都可以設下一個存檔點,而之後再接下去做另一個功能的時候發現自己把code改爛了,改髒了,功能和結果不是自己想要的只要下個指令就能還原到當初的存檔點,上述都只是Github其中的基本功能,Github也是一門蠻大的學問,所以分享一下本機端和Github的關係就好XD。

創造好Githun的帳號後就可以建立新的專案(Project),專案裡創造的所有東西統稱為repository,現在我們要把本機端(local)與稱呼為遠端的Github(remote)做連結,可以照著github給的提示欄裡(create a new repository on the command line)的指令照著下就好,如下(記得下指令之前Terminal的路徑要在自己要上傳的資料夾裡面唷!):

echo "# demo" >> README.md   // 在資料夾新增一個內文有# demo的README.md檔案

git init                     // 創造一個隱藏的git檔案讓Github鎖定這個資料夾

git add README.md            // 指定要觀察哪些檔案(這邊為README.md)

git commit -m "first commit" // 這個就是創造存檔點!!雙引號裡面為設定存檔點的名稱

git remote add origin https:github.com/username/demo.git // 指定本機端與遠端連接的專案網址

(P.S:要注意這裡的origin算是讓程式讀得懂的專案名稱,很多時候我們人看的懂的名稱跟程式看的懂得名稱是完全不一樣的!)
git push -u origin master    // 把剛剛存檔完的進度上傳到Github上

(P.S:程式在這裡的解讀為上傳檔案到專案origin的版本master上,master為主線。)

之後不論修改後什麼都不能直接git push唷!一定要遵守遊戲規則,那新手先照著打下面三個步驟即可:

1.git add .
2.git commit -m "name"
3.git push 

其實這就是本機端和Guthub相處的基本關係囉!真的是還好跟著Nic做練習的時候有摸過Github,所以還吸收的蠻快的。

今天這堂課在最後做練習的時候也意外的發現兩件事情,我們五位同學中有一位男性似乎是資訊系的,他在前一堂課的時候很多指令在學校似乎都有接觸過,在理解方面真的是比其他同學快速許多,但今天卻是我比其他同學稍快地達到老師的要求,甚至是那位資訊系畢業的同學,因為他似乎沒有玩過Github這個平台,其實很多事情只是有沒有接觸過而已,我還蠻認同我大學同學跟我分享的一句話:『你的時間花在哪,你的成就就會在哪。』今天雖然我不是資訊系畢業的,但我有花時間在Github上面,哪怕只是一點點的時間,出來的成果就是不一樣,當然把時間花在對的地方的“方法”也是非常重要的。

第二件事情就是今天的同學中唯一的女性同學似乎是設計系的吧?嬌小的身軀在做成功之後整個人彈起來手揮向天空開心的說『成功了!!』還真的是蠻可愛的哈哈,果然認真的人都很有魅力啊!

comments powered by Disqus