GitHub: Windows 下的簡單使用
這段時間在博客園多了很多關于GitHub的文章,但是 我的確沒怎么看懂。不過這幾天簡單的看了寫資料,親身操作之后也有了一點體會。這算是最簡單的GitHub入門了吧,基本全是鼠標操作。這也是這幾天的總 結,和大家共同分享。文中如果有什么錯誤或者不恰當的地方,還希望大家及時指正。關于GitHub的內容,主要參考了GotGitHub。
1. 背景和目的
去年的時候,有個老師推薦使用GitHub來管理自己的代碼。這段時間博客園的首頁上多了很多關于GitHub的介紹。半年多來,我對我做的絕大多數事情 都做了詳細的記錄,希望能把自己的工作保留下來。對于工作本身的一些經驗,采取文檔的形式,完成之后修改不是那么的頻繁,但是代碼不一樣。很多時候,我的 確發現需要好好整理自己的代碼了,比如說
上圖是一個失敗的例子,文件夾內的多數文件具有類似的功能,但是又有一些差別。好吧,實際上就是當我要找某段代碼的時候,我自己都找不到了……發到首頁上 的GitHub介紹都比較高級,說實話我不怎么看得懂。所以本文的目的,就是利用我這幾天的經驗,最簡單的介紹一下GitHub for Windows(https://windows.github.com/)的應用。(在寫這一段的時候,發現博客園還是有很基礎的介紹的,比如http://www.cnblogs.com/Yiutto/p/4665012.html)
2. Git和GitHub
“GitHub(網址 https://github.com/)是一個面向開源及私有軟件項目的托管平臺,因為只支持Git作為唯一的版本庫格式進行托管,故名GitHub。”(http://www.worldhello.net/gotgithub/01-explore-github/010-what-is-github.html)
Git是一個分布式的版本控制系統。版本控制,對于有且僅有我一個人參與的項目而言,需求實際上并不是很多。我需要保存我的代碼并可以便捷的查看,能夠隨 時的修改而不受網絡限制。可以根據我的修改即使的更新代碼,并且提供更新前后的對比,更新說明記錄,同時根據更新記錄,可以查找修改之前的代碼。除了代碼 內的注釋,我還希望能夠對整個項目做具體的說明,這不僅有利于別人了解這是什么,也時時刻刻提醒自己這是什么,還有什么需要修改的地方。這些需求都被輕松 的滿足了,當然,Git的魅力遠不在此。
GotGitHub中有簡潔形象的關于Git的描述。對于一個你的開源的項目,參與者不僅僅會是你本身,還有和你一起的核心開發人員和希望加入的外圍開發人員。而你可能也會希望加入別人的開源項目。Git是如何協調這幾類人員之間的關系?我寫的肯定沒有這里的好,所以去這里看吧……
3. 建立repository
Repository: 版本庫
賬號注冊和軟件安裝之類的不談(注意:賬號注冊之后,顯示在你的版本庫之前的名字是改不掉的),創建一個新版本庫是第一步(也可以Fork別人的版本庫, 這個先不談,因為我沒有做過)。網頁的操作都很簡單,還有詳盡的幫助,這一過程在網頁上完成就可以了。只需要指定名稱,描述(可選),勾選上 README,是否添加gitignore(不太懂,見Ignoring files),添加合適的license。點擊按鈕就可以創建版本庫了。
運行GitHub for Widnows,登錄你的GitHub賬號,點擊左上角的 '+' ,選擇Clone可以復制云端的版本庫到本地的指定位置。
新建立的版本庫中只可能有README和Ignoring 文件。版本庫中的任何改變(文件添加、刪除和修改)都會體現在Changes中,文件名后的綠色表示添加內容,紅色表示刪除內容。完成修改后,寫上本次 Commit的標題和內容,可以點擊Commit按鈕上傳修改。如果在其他地方對版本庫有修改,則需要先點擊同步按鈕獲取最新版本庫之后,才能夠上傳修 改。
任何的Commit都會記錄在History中,可以在此處查看提交的內容,對比提交前后的變化,甚至可以撤銷修改(通過重新提交修改的方式)。下圖分別是Changes(左)和History(右)的顯示。
4. README和其他說明
回到第二節的需求,其中有一條是“除了代碼內的注釋,我還希望能夠對整個項目做具體的說明,這不僅有利于別人了解這是什么,也時時刻刻提醒自己這是什么,還有什么需要修改的地方”。
第三節中初始化的README起到了這個作用,README會顯示在版本庫的下方(網頁),如
.md后綴的README文件內容采用Markdown,Markdown基本語法見第五節。打開README.md文件,編輯即可,不放心的話還可以找一個Markdown編輯器(參考),或者選擇一款在線編輯器。GitHub還提供了其他的方式來展現整個版本庫的內容、功能。
簡單的操作就能制作精美的項目主頁,在版本庫的設置中,點擊'Launch automatic page generator',利用Markdown標記內容,之后選擇合適的模板就可以生成精美的項目主頁,項目主頁域名為<user- id>.github.io/<project-name>,譬如http://caowenhui.github.io/LDPCC/。
這里我直接將README中的內容添加到了項目主頁上,效果如下圖(效果取決于選擇的模板,自己寫也可以)
在網頁創建了項目主要之后,在GitHub for Windows 下同步后會發現,版本庫多了一個名為gh-pages的分支。當我們建立一個新的版本庫的時候,默認會創建一個master分支。那么分支是用來干什么的呢?使用git 新建分支以及管理分支提到了這個問題,如果想測試某個功能,又不想改變主分支的內容,那么可以創建一個新的分支,這個分支會復制主分支的全部內容。
而gh-pages是一個特殊的分支,gh-pages不包含主分支內容,在gh-pages中添加靜態網頁后,GitHub會自動調用該分支內的內容。
5. Markdown基本語法
通常來說,撰寫文檔的時候會用到的基本格式、內容包括以下幾種
- 標題和標題級別
- 列表和有序列表
- 超鏈接
- 圖片
下面將簡單介紹基本語法,更多內容可參考http://www.appinn.com/markdown/#p。
標題通常采用以下方式,即通過#標識這是標題,通過#的個數標識這是幾級標題
# 這是一級標題
## 這是二級標題
###### 這是六級標題
列表才有*,+,-標識,如
* Red * Green * Blue
有序列表通過數字加英文的 '.' 標識,注意內容之前需要加上一個空格(有序列表的數字不一定需要有序,但是建議這樣做)
1. Bird 2. McHale 3. Parish
圖片和超鏈接具有相同的形式(圖片之前有一 '!'),即[文字](鏈接)的形式。
超鏈接表示形式:[博客](http://www.cnblogs.com/sea-wind2) 圖片表示形式 : 
6. 其他
最簡單的使用說明,功能遠沒有結束。其中最重要的一點是如何和他人共同工作?這個他人,可能指團隊內的合作者,或是其他對這個項目感興趣其他程序員,還可 能是不精通編程但對這個項目有一些見解的人。GitHub上的Fork,Pull,Issue等,這里就先不做說明了,因為我也沒有什么體會。
姓名標示(BY)-相同方式分享(SA)
允許自由轉載,轉載請注明出處,并保留本聲明。