GitHub詳解
GitHub 是一個共享虛擬主機服務,用於存放使用Git版本控制的軟件代碼和內容項目。它由GitHub公司(曾稱Logical Awesome)的開發者Chris Wanstrath、PJ Hyett和Tom Preston-Werner使用Ruby on Rails編寫而成。
GitHub同時提供付費賬戶和為開源項目提供的免費賬戶。根據在2009年的Git用戶調查,GitHub是最流行的Git訪問站點。除了允許個人和組織創建和訪問代碼庫以外,它也提供了一些方便社會化軟件開發的功能,包括允許用戶跟蹤其他用戶、組織、軟件庫的動態,對軟件代碼的改動和 bug 提出評論等。GitHub也提供了圖表功能,用於顯示開發者們怎樣在代碼庫上工作以及軟件的開發活躍程度。
GitHub也提供一個粘貼箱風格的站點Gist,供軟件代碼庫使用的Wiki,以及通過git版本庫進行編輯和管理的網頁托管功能。
一.注冊
按照步驟注冊即可。一般選擇免費,上傳的代碼會公開;付費可以不公開托管的代碼。
二.修改用戶名
有時我們需要修改用戶名(用戶名很重要),登陸https://github.com/,點擊進入Personal settings,點擊
,如下圖:
點擊Change username修改用戶名。
三.安裝GitHub for Windows
https://github.com首頁的下方,
四.新建一個的repository,托管代碼到GitHub上
一個repository(倉庫)可以放一個項目。我們用GitHub for Windows軟件新建本地倉庫。
1.在新建之前我們先認識軟件。打開GitHub for Windows,登陸自己注冊的賬號,最左側是本地倉庫,中間是每次更新的Commit評論,最右側是倉庫的代碼,可以查看每次的修改和添加。
打開Options,根據自己的情況設置Clone path,也是新建repository的本地倉庫的默認位置,以后我們建的倉庫都會在位置的文件夾里。也可設置Congfigure git,其他默認。如下圖:
3.回到主界面,點擊軟件上方的,新建一個repository
我們可以看到,新建的倉庫是在默認位置的文件夾里並以倉庫名為文件夾。
注:
▪Name不允許單詞有空格,建議用“-”連接。
▪Local path是你默認地址+Name;當然我們也可以點擊Browse,選擇本地倉庫位置。
▪Git ignore忽略某些文件,項目中經常會生成一些Git系統不需要追蹤(track)的文件。典型的是在編譯生成過程中產生的文件或是編程器生成的臨時備份文件。一般默認。
點擊Create respository,我們可以看到如下界面:
.gitattibutes和.gitignore是默認生成的。本地倉庫已建成功。
我們點擊右上面的Publish Respository,將本地倉庫同步到遠程倉庫。
添加Description,對倉庫的描述。
發布成功后,Publish Respository圖標會變成Sync,代表已經同步。
若是新建的倉庫位置無代碼,我們要把代碼復制進來,右擊Front-end-engineer倉庫,
注:
▪View on GitHub是打開網頁,即Front-end-engineer的遠程倉庫。
▪Open in GIt Shell是打開命令。可以學習git命令,本文暫不介紹git命令。
▪Remove是將本地倉庫移除。但遠程倉庫並不影響,只是本地有改動不再更新遠程庫。
點擊Open in Explore,進入Front-end-engineer本地倉庫文件夾,然后將項目代碼復制到本地倉庫里。(當然若是選擇的代碼位置作為倉庫以上就不需要復制代碼了。)
我們再回到Windows for GitHub里,可以看到中間欄出現了Uncommit changes,以后每一次本地代碼更新都會產生一個Uncommit changes,
我們需要評論,提交Commit,才能將本地倉庫的改動同步到遠程倉庫。具體做法:
點擊Show,
這時我們可以看到最右側欄已經有我們添加的代碼了,然后填寫Summary(更新內容總結)和Description(更新的描述),最后點擊Commit to master(master是主分支,一般默認),就可以將更新同步至遠程倉庫了。
最后,我們還要為倉庫項目添加README.md,用來說明項目或程序。
4.README.md編輯
兩種添加方式:一登陸https://github.com/,選擇要添加README.md的倉庫,在遠程倉庫添加README.md,且在線編輯可預覽效果;二利用編輯器(如sublime)在本地添加README.md,再同步到遠程倉庫。
若已經有README.md,我們可以在遠程倉庫文件目錄中點擊,然后選擇進行修改。
README.md並不是隨便編寫的,它有特定的語法。
①關於標題
▪大標題
====在文本下面加上 等於號 = ,那么上方的文本就變成了大標題。等於號的個數無限制,但一定要大於0個。
▪中標題
-------在文本下面加上下划線 - ,那么上方的文本就變成了中標題,同樣的下划線個數無限制。
▪除此以外,關於標題還有等級表示法,分為六個等級,顯示的文本大小依次減小。不同等級之間是以井號 # 的個數來標識的。一級標題有一個 #,二級標題有兩個# ,以此類推。
#一級標題
##二級標題
###三級標題
####四級標題
#####五級標題
######六級標題
效果如下:
實際上,前文所述的大標題和中標題是分別和一級標題和二級標題對應的。三到六級沒有下面的橫線。
②顯示文本
▪要顯示一個超鏈接的話,就直接輸入這個鏈接的URL
▪給一段文字加入超鏈接的格式:[ 要顯示的文字]( 鏈接的地址"懸停顯示的字")。"懸停顯示的字"是可選項。
▪插入圓點符,在文字前加*,要注意的是星號* 后面要有一個空格。否則顯示為普通星號。此外還有二級圓點和三級圓點。就是多加一個Tab。第二行一個Tab,第三行兩個Tab。
③插入圖片
▪第一種方法:。"懸停顯示的字"是可選項。
▪第二種方法:GitHub倉庫里的圖片(建議使用這種方法,其他來源URL很可能會失效)。
前提是你的遠程倉庫有圖片,圖片鏈接的地址格式如下:
https://github.com/你的用戶名/你的項目名/raw/分支名/存放圖片的文件夾/該文件夾下的圖片
其中,raw表示原數據的意思;主分支master。一般默認。
④插入代碼
我們需要在代碼的上一行和下一行用``` 標記。第一行后可加語言,可加亮代碼。``` 不是三個單引號,而是數字1左邊,Tab鍵上面的鍵。 示例如下:
```ruby
require 'redcarpet'
markdown = Redcarpet.new("Hello World!")
puts markdown.to_html
```
如果你想使一段話中部分文字高亮顯示,來起到突出強調的作用,可以把它用 ` ` 包圍起來。
⑤插入表格
| First Header | Second Header |
| ------------- | ------------- |
| Content Cell | Content Cell |
| Content Cell | Content Cell |
⑥以上基本夠用了,不會的就用html標簽。
markdown支持大部分的html文本編輯標簽。例如換行,用<br>等。但markdown有些標簽寫起來要簡潔得多。附:markdown支持的html標簽。
五.對已有倉庫修改設置
登陸到https://github.com/,點擊用戶名,進入Contributions頁面
點擊你要設置的repository,
點擊右下角的Settings,可以設置倉庫,比如刪除倉庫
六.GitHub上找自己要的代碼,存到本地倉庫
1.登陸到https://github.com/,在搜索框中,輸入關鍵字搜索
2. 找到自己感興趣的項目,點擊fork,將別人的項目存到自己遠程倉庫里。
在Github中,開發者除了可以托管自己的項目源碼外,還可以Watch(關注)、Star(加星)、Fork(復制一份)、Pull Request(提交問題或申請功能)其他開發者的項目。
fork:克隆別人的代碼庫到自己的項目中,可以作為子模塊的形式使用,或二次開發。在開源項目中點擊fork按鈕,稍等一會兒,該項目便會拷貝一份到你的respositories中。
3.在GitHub for Windows中,將遠程fork的倉庫clone到本地,點擊,進入clone,如圖:
4.當然,你可以在網頁上直接下載項目或代碼。若要將別人的項目代碼存到自己的倉庫中,則用上面方法。
七.Create an organization
建立組織,邀請成員,共同開發,共同分享。
在https://github.com/上建立,點擊,New organization,如圖
進入頁面建立organization,命名規則同倉庫名命名規則。
建成后,可以邀請成員,可為organization建repository等。點擊用戶名進入用戶中心,在左下角,
點擊你的organization,為organization建repository,Invite someone。
八.利用GitHut構建網站
Github托管項目所支持的類型,一種是User/Organization Pages,另一種是Project Pages,這是兩種Github托管網站上支持的兩種基本類型。
User/Organization Pages
這個是Github為每個賬戶分配的一個二級域名,不過需要注意的是必須以那你的用戶名作為開頭,不然無法訪問。
Project Pages
除了上述提到以自己的名字來命名的倉庫,其他所建的都可以看成是Project Pages。不過要想實現對頁面的訪問,則就需要創建gh-pages分支來訪問。
我們用User/Organization Pages構建網站
1.用GitHub for Windows建立jingwhale.github.io倉庫,這里不再贅述。建網站,User/Organization Pages 個人或公司站點建設倉庫名必須為用username或organization。建立倉庫的步驟參考第四部分。
2.登陸https://github.com,進入所建的jingwhale.github.io倉庫,點擊settings,這時你可以看到你要建網站的域名http://jingwhale.github.io,找到Automatic page generator
點擊進去,看到跳轉的頁面:
Project Name:網站標題;Tagline:網站副標題;Body:這個就是網頁源碼了。
點擊" Continue to Layouts",選擇主題,然后發布
現在,你可以訪問自己的GitHub.io 上的主頁了,例如:http://jingwhale.github.io/。
注:http://jingwhale.github.io/若打不開,報404,可以等30分鍾左右;或者重復以上步驟,重新發布。
3.同步自己的網站到GitHub
將自己建的username.github.io(如jingwhale.github.io)遠程倉庫clone到本地,把你開發好的網頁復制到剛clone的本地倉庫里並同步到遠程倉庫,再訪問http://jingwhale.github.io/,就是訪問你自己寫的網站了。(注意,其中index.html是主頁)。
4.將自己的域名綁定到github pages上
①添加CNAME文件
登陸到https://github.com/,在username.github.io倉庫根目錄下添加一個CNAM文件,沒有后綴名,里面內容為你的域名(如:test.com),不需要添加http/www等前綴。
②記錄下IP地址
在https://github.com/,點擊help,進入help頁面,在搜索框里DNS,找到Tips for configuring an A record with your DNS provider。查詢到關聯GitHub時配置域名解析記錄的IP地址(192.30.252.153或192.30.252.154)。也有人ping username.github.io得到IP地址。
③配置A記錄
登陸你的域名管理界面。創建一條A記錄,指向192.30.252.153或192.30.252.154這個IP地址。
④驗證域名與github關聯是否成功。
先以github的鏈接方式訪問一次,查看界面;再以域名的方式訪問一次,查看界面;兩者所查看到的界面是一致。
注:
▪若域名不能立即訪問,需等待一段時間再訪問。
▪當github成功關聯到域名后,以github的鏈接方式進行訪問,其會自動轉化為域名訪問。
完
轉載需注明轉載字樣,標注原作者和原博文地址。