如何把項目托管到GitHub


此篇根據他人經驗文章修改並測試

如何把項目托管到GitHub

  說明:本文主要介紹如何把一個OC項目托管到Github,重操作輕理論。

 

第一步:先注冊一個Github的賬號,這是必須的

  注冊地址:Github官網注冊入口

第二步:准備工作

  gitHub網站使用Git版本管理工具來對倉庫進行管理,注意它們並不等同。

  gitHub是全球最大的第三方開源庫集散地,Git是一款分布式的版本管理控制工具(除了git之外還有一些其他的版本管理控制工具如SVN等)。

  關於Git的基本介紹以及基本使用這里不會做更多介紹,如有需要請參考:Git教程

  關於Git使用的相關書籍:Git版本控制管理(第2版)| Git權威指南(電子版下載地址

  關於Github的介紹和說明可以參考書籍GitHub入門與實踐(部分內容已經過時暫無電子版提供下載)或者直接通過官網的幫助頁面查看。

第三步:在github上面建立空的倉庫(repositories)

  我們假設你已經擁有了一個github的賬號,並且登錄成功,那么你將能夠找到下面這樣的一個界面。

  

 

  簡單說明下:

  其中第1塊區域會顯示你的個人信息,比如昵稱,頭像,聯系方式等等。

  第2塊區域展示的相關的一些第三方庫。

  第3塊區域顯示你在github網站上面的活躍度,分別以各色的方塊來表示,其中一個小格子表示一天(人生說白了就是三萬多個小格子,說到這里趕緊算算還剩幾個沒用的),顏色越深表示活躍度越高。

  第4塊區域可以做一些配置操作等等的。

  看到這個界面之后,點擊上圖箭頭所指的+,選擇new repositories選項會跳轉到如下界面,簡單配置后即可創建一個空的倉庫。

  

  上圖中使用紅色線條框起來的地方是需要注意的,在創建倉庫的時候需要對該倉庫進行簡單的配置,如倉庫名稱等等的。

  其中repositories name處需要填寫的是倉庫的名稱。

  

  Initialize this repository with a README 表示在初始化倉庫的時候,是否生成一個readMe文件。我們在查看別人框架的時候,在框架主頁上會有對該框架版本信息,作用使用方法等等的介紹,這個文件就是readMe文件,在這里選擇勾上。

  Add .gitignore按鈕,點擊之后會出現一個下拉框,問你是否要設置倉庫的忽略文件。這個看你自己的需要,通常如果你的倉庫和代碼項目有關系,那么最好選擇相應的忽略文件(如OC項目可以選擇Object-C,swift項目可以選擇Swift),至於為什么請參考GIT的基本使用。

  Add a license按鈕,點擊之后會出現一個下拉框,需要你選擇一種開源協議,開源協議有很多種用的比較多的有MIT的或者是Apache的,不同的開源協議對項目的使用方式等有不同的規定,詳情可以參考Choose an open source license

  上面的信息都設置好之后,接下來只需要輕輕點擊Create respository按鈕即可創建一個空的倉庫。

第四步:了解倉庫主界面

  至此,一個空的倉庫就已經創建完成了,你將看到如下界面。

  

  這里先簡單介紹下這個倉庫的頁面信息。

  其中第1塊區域是該倉庫的名稱,你創建倉庫后別人可以通過搜索倉庫名的方式找到該倉庫。

  第2塊區域是和倉庫相關的一些信息,比如Code選項列出倉庫的內容(文件),ISSues選項會列出其他人對該倉庫的疑問,Pull Request選項提供其他開發者在對該倉庫進行維護時請求合並的入口,Setting選項列出對該倉庫可以進行的一些操作如刪除等等。

  第3塊區域列出該倉庫的提交次數、tag版本等等。

  第4塊區域列出該倉庫的內容,當前倉庫中只有三個文件,分別是.gitignore忽略文件,LICENSE開源協議以及初始化生成的ReadMe文件。在該區域右上角有一個clone or download按鈕,點擊Download Zip按鈕即可把該倉庫下載到本地。

  第5塊區域展示ReadMe.md文件的內容。

  第6塊區域列出有多少人關注該倉庫,倉庫的受歡迎程度,以及被fork的次數等。我們看一個框架是否受歡迎可以通過查看該倉庫Star的個數以及被fork的次數。

  上面是對github自動生成空白倉庫進行的簡單介紹,有了這個空白的倉庫之后我們才可以進行后面的操作。

第五步:連接遠程倉庫

    連接遠程倉庫的方式有很多種,可以使用第三方的GIT管理圖形界面工具如sourceTree,也可以使用終端(命令行),或者是XCode。在這里就選擇使用XCode來完成該操作。

    把MAC 上面的XCode打開,打開之后,左上角菜單選擇Xcode->Preference選項,如下圖所示:

  

    進入到XCode的配置信息窗口。

      

  切換到Accounts菜單,點擊左下角的+號,選擇Add Respository添加倉庫。出現如下界面,需要進行配置。

    

  Address需要輸入要連接的遠程倉庫地址,其實要連接遠程倉庫有兩種方式可以選擇一種是HTTPS請求的,一種是SSH密鑰對。在這里,我們先講解HTTPS請求應該如何處理,如何獲得倉庫地址呢?選擇clone with https后拷貝輸出框中地址,如下圖所示:

  

  Type:表示使用的版本管理方式可以選擇GIT和SVN,在這里只能選擇Git(因為GIThub只支持git的方式來管理)

  Authentication:表示認證的方式即驗證身份的,Github提供兩種驗證方式,HTTPS和SSH,我們當前選擇的是HTTPS的方式,所以此處選擇User Name and Password.

  User Name 和passWord兩處填入github網站登錄的用戶名和密碼即可。

  配置完成之后,點擊add按鈕,出現下面的窗口,則說明連接倉庫成功。

  

第六步:把遠程倉庫下載到本地

  連接上遠程倉庫之后,接下來我們把遠程倉庫下載到本地,如圖選擇菜單欄的source control->check out。

  

  之后會彈出如下界面,找到要下載的倉庫(通常在最后),點擊Next

  

  點擊Next按鈕之后,需要你選擇倉庫下載后的存儲位置,然后點擊Finsh完成即可。把倉庫下載完成之后,可以發現內部有一個.git的隱藏文件,即git的版本庫。

  補充:可以在終端輸入如下命令來顯示或者是不顯示隱藏文件

# 顯示隱藏文件   $ defaults write com.apple.finder AppleShowAllFiles Yes && killall Finder

# 不顯示隱藏文件$ defaults write com.apple.finder AppleShowAllFiles No && killall Finder

  

第七步:添加OC項目到倉庫中並推送到遠程服務器

  1)首先先新建一個項目,假設為Test,項目創建后保存到倉庫路徑下(和.git文件同級)如下圖

  

  2)打開項目,會發現在項目的導航欄中各個文件會顯示不同的狀態如?M等等,通過這種方法來初始化項目,項目本身已經被納入到git版本庫的管理范疇。

  

3)把修改提交到本地並推送到遠程服務器。

  XCode本身已經對git進行了很好的集成,點擊菜單欄上面的source control選項可以看到如下視圖:

  

  其中check out 等同於git 命令行中的clone指令,用於把遠程倉庫下載到本地。

  commit 等同於git命令行中的commit指令(無差別),用於把更改提交到本地git版本庫。

  push等同於git命令行中的push指令(無差別),用於把更改提交到遠程的git倉庫中。

  pull指令等同於git命令行中pull指令(無差別),用於獲取得到最新的遠程倉庫信息。

此處,我們需要先選擇commit選項,先把更改提交到本地的版本庫。選擇commit之后出現如下界面:

  

  其中,第1個區域表示要提交的內容,第2個區域輸入對此次提交的說明(注釋),第3個區域可以選擇勾上,如果勾上的話,那么當點擊右下角按鈕的時候,會先把所有的更改提交到本地的git版本庫,然后再把更改推送到遠程的git倉庫。

點擊提交之后,即可刷新github上面倉庫的主頁,此時顯示有新的更新,並且項目提交已經完成。如下圖所示,點擊可以查看項目文件。

第八步:命令行操作

  上面所有演示都沒有涉及到命令行,那如果不使用XCode而是使用命令行,應該如何處理增加、刪除、提交等常見操作呢?

  1)新創建文件,需要把創建的文件提交到本地的git版本庫。

    把終端打開,cd進入到倉庫路徑,然后創建一個NewFile文件,如下圖所示:

    

    新創建了NewFile文件之后,該文件默認並不會被git版本庫管理(可以使用git status命令查看),需要使用add 命令先把指定的文件添加到git的暫緩區,然后再提交到git的版本庫,如下圖所示。

    

  命令說明:

  $ ls -l 以列表的方式顯示當前目錄下面的文件(NewFile文件為剛剛創建的)

  $ git status 查看git倉庫文件狀態 (NewFile文件狀態為紅色,表示未被git管理)

  $ git add NewFile 把NewFile文件添加到git的暫緩區中(如果需要一次性提交多個文件,那么可以使用git add .命令)

  $ git status 重新查看狀態(此時NewFile文件狀態為綠色,表示更改已經提交到了暫緩區)

  $ git commit -m "創建了NewFile文件"  NewFile 表示把暫緩區中NewFile文件對應的更改提交到本地的git版本庫(如果要一次性提交所有的更改,那么可以直接把具體的文件省略即可)

  2)把文件提交到遠程(github)的倉庫

    

   說明:使用git push指令把本地的更改推送到遠程倉庫。

   此時重新刷新下github網站上該倉庫的主頁,可以發現NewFile文件已經提交。

  

3)修改文件,並把修改操作提交到遠程倉庫。

  假設我們修改了NewFile文件,然后把修改提交到git暫緩區,提交到本地的git版本庫之后,再推送到遠程的倉庫。

  

第九步:其他操作(tag標記)

  如果你的項目已經完成了里程碑開發,那么可以確定為一個新的版本,比如說發布為正式的1.0版本,而后續可能接着發布1.1.0或者是2.0版本等等,那么使用github托管的項目如何確定為一個新的版本呢?或者是如何進行tag標記。

  如果倉庫沒有發布特定的版本,那么release處顯示為0.

  

  假設當前的項目已經完成了階段性的開發,需要正式確定為Test1.0版本,那么應該如何處理?如下圖所示:

  

  上面的命令行~

  (1)先使用git tag指令查看當前被打上tag標簽的版本,最開始的時候無

  (2)然后把當前的倉庫打上tag標簽,為Test1.0版本,並添加注釋

  (3)再使用git tag指令查看,即可以發現有Test1.0版本

  確定了新版本之后,還需要把標簽推送到遠程服務器,命令行為git push origin 標簽名,具體操作如下圖所示:

   

  推送到遠程倉庫之后,刷新github上面該倉庫主頁,發現release處變為1,點擊該按鈕可以看到如下界面(提供標記版本的壓縮下載)    

  

 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM