公司讓我內部普及下GitHub,嗯好,拋磚引玉之。
定義
GitHub 是一個面向開源及私有軟體專案的託管平臺,因為只支援 Git 作為唯一的版本庫格式進行託管,故名 GitHub—來自百度百科
主要作用
- 學習優秀開源專案
- 團隊協作
- 基於 GitHub Pages 來搭建個人部落格
- 寫作
註冊
點選Sign up,填寫相關資訊
注意:使用者名稱建議取正式點,如果你以後想基於GitHub 搭建部落格,預設給你生成的部落格地址就是username.github.io
登入
點選Sign in,登入成功,點選頭像裡的your profile進入我的主介面
建立專案
- Private選項針對企業,收費的,我們個人只能Public,建立的專案,全世界都能看到
- 可以勾上Initialize this repository with a README,對專案有個介紹
git學習
先了解下git知識,克隆專案和提交程式碼需要。
1、下載:git-for-windows.github.io/
2、所有命令列
3、設定賬號
git config --global user.name "Your Name"
git config --global user.email "email@example.com"複製程式碼
這步是要告訴github,誰提交了程式碼
4、檢視配置資訊
要檢查已有的配置資訊,可以使用 git config --list 命令:
git config --list複製程式碼
克隆專案
有GitHub後,可以自由的 clone 或者下載其他專案,命令列:
git clone https://github.com/WuXiaolong/WeWin.git複製程式碼
其中github.com/WuXiaolong/… 就是專案的github地址:
SSH Key
github提交程式碼需要SSH授權,不然可以隨便提交程式碼了
1、建立SSH Key
命令列:
ssh-keygen -t rsa -C "youremail@example.com"複製程式碼
你需要把郵件地址換成你自己的郵件地址,然後一路回車,使用預設值即可。
如果一切順利的話,可以在使用者主目錄裡找到.ssh目錄,裡面有id_rsa和id_rsa.pub兩個檔案,
這兩個就是SSH Key的祕鑰對,id_rsa是私鑰,不能洩露出去,id_rsa.pub是公鑰。
2、設定GitHub
登陸GitHub,開啟“Account settings”,“GitHub”頁面
點“Add SSH Key”,填上任意Title,在Key文字框裡貼上id_rsa.pub檔案的內容。
提交程式碼
本地提交
使用命令
git add README.md
git commit -m "first commit"複製程式碼
關聯遠端庫
如果是直接clone下來,這步跳出,clone已經關聯了,本地新建,使用命令以下命令關聯:
git remote add origin https://github.com/WuXiaolong/WeWin.git複製程式碼
推送程式碼
使用命令
git push origin master複製程式碼
視覺化工具
如果不想使用命令列,可以使用:
GitHub Desktop:desktop.github.com/ 只能提交github
tortoisegit:tortoisegit.org/
SourceTree:www.sourcetreeapp.com/
GitHub與Android studio
Android studio已經整合了github
配置GitHub賬號
配置git
可以點選Test,檢測下是否成功
匯入專案
提交程式碼
真實專案中,一般先pull,防止衝突,然後add、commit提交,再push推送。
其他
Issue
問題的意思,比如你發現某個開源專案有bug,你可以提Issue給作者,作者可以修復bug,修復完畢可以一個個 Close 掉。圖為新建Issue:
Pull request
發起請求,這個其實是基於 Fork 的,比如你Fork別人專案,你修改,想提交給原作者,可以通過Pull Request方式,原作者覺得你的程式碼沒問題,選擇Merge pull request,合併你的提交的程式碼。圖為新建Pull request:
我與GayHub
我是2013年5月6日註冊GitHub,12年工作,當時根本不知道GitHub,經常泡在安卓巴士和eoeandroid,接觸GitHub是從Android-Universal-Image-Loader開始,這個庫是朋友介紹的,漸漸玩GitHub了,14年,基於 GitHub Pages 搭建了屬於自己的技術部落格:wuxiaolong.me/ ,自此,棄論壇,專注自己的部落格。GitHub起初我只是下載程式碼學習,後來留意github有個README.md,知道這肯定是文字,卻是md結尾的,於是瞭解並自學了點markdown語法,也慶幸那點好奇,才為後來的個人部落格打了基礎。15年嘗試分享了一個RecyclerView下拉重新整理和上拉載入的庫PullLoadMoreRecyclerView,之後又分享了Android常用工具類的庫AndroidUtils,也分享了一個完整的專案WeWin,還寫了幾個sample,AndroidMVPSample,DesignSupportLibrarySample等,從中我“被迫”去學習了git相關知識,如何Issue,如何 Pull request。有時候,為了解決需求,可能要學習很多相關知識,學海無涯,回頭是岸!哈哈!總之GitHub是好東西,趕緊註冊個號玩起!
相關閱讀
手把手教你建github技術部落格by hexo
Markdown常用語法
Android Design Support Library使用
Android MVP+Retrofit+RxJava實踐小結
PullLoadMoreRecyclerView
WeWin
聯絡我
我的微信公眾號:吳小龍同學,歡迎關注交流~