程式碼管理(三)sourcetree 的使用

weixin_33912246發表於2017-08-03

一、SourceTree簡介

  SourceTree 是 Windows 和Mac OS X 下免費的 Git 和 Hg 客戶端,擁有視覺化介面,容易上手操作。同時它也是Mercurial和Subversion版本控制系統工具。支援建立、提交、clone、push、pull 和merge等操作。

二、SourceTree基本使用

(以下以SourceTree For Mac V2.0.5.2中文版為例,託管平臺以Github為例)

    1. 基本安裝
      1.1. 不建議在appstore直接搜尋下載SourceTree,因為appstore裡的版本已經十分老舊(好像是2012年更新的)。建議前往官網下載安裝最新版,我這裡也提供一個SourceTree for Mac V2.0.5.2的百度雲的方便連結。傳送門→SourceTreeDownload
      1.2. 拖動安裝,Launchpad中開啟,continue,輸入github賬號按下一步完成即可。沒有Github賬號的朋友,也可以跳過本步驟完成安裝

    2. 註冊GitHub(已有Github賬號的朋友請跳過本步驟)
      2.1. 開啟Github官網 傳送門→Github
      2.2. 填寫必要的資訊,點選sigh up for github


      Github Register 1


      2.3. 預設選中免費賬號,點選綠色的Finish sign up即可


      Github Register 2
    3. 實踐入門-建立倉庫 clone&pull
      3.1. 建立倉庫
      用我們剛才建立的賬號登陸github,在歡迎頁點選“+ New repository“建立我們的倉庫


      Create Repository 1


      或點選右上角的“+”,然後再New repository亦可


      Create Repository 2


      3.2. 按照個人需要填寫倉庫名、倉庫描述等,建議勾選“Initialize this repository with a README”(注意此處免費賬戶只能選擇建立public(開源)倉庫),填寫完成後點選Create repository


      Create Repository 3


      3.3. 至此,我們的倉庫已經建立成功。建立成功後,我們在頁面的右下角找到連結,點選複製


      Copy Link


      3.4. 開啟我們的SourceTree,點選:“+新倉庫”,選擇:“從URL克隆”


      Clone 1


      3.5. 貼上我們的倉庫連結至源URL,SourceTree會自動幫我們生成目標路徑(本地倉庫路徑)以及名稱,點選克隆


      Clone 2


      3.6. 等待數秒後,SourceTree會為我們自動開啟我們剛才克隆的倉庫,選擇master選項,這裡我們可以看到我們倉庫裡的所有檔案


      MainPage


      3.7. 接下來我們想要上傳一個專案至我們的遠端Github倉庫內。我們點選右上角“在Finder”中顯示。然後SourceTree會幫我們開啟我們的本地倉庫,我們將需要上傳的專案複製到本地的Finder資料夾內,然後關閉資料夾,回到主頁面。我們會發現工作副本出現了更改提示


      Change Notification


      3.8. 我們點選工作副本,然後我們發現我們剛才上傳的檔案都在未暫存檔案當中,此時,我們勾選“未暫存檔案”


      工作副本 1


      3.9. 發現我們的檔案變成了已暫存檔案。此時,我們可以輸入更新資訊,然後,點選提交按鈕


      工作副本 2


      3.10. 我們切換回master分支,會發現master分支以及推送(Push)按鈕,都出現了更改提示。這表示SourceTree已經將我們剛才新增的檔案成功提交到本地倉庫,而本地倉庫的內容則比遠端倉庫超前了一個版本。我們這個時候點選推送(Push)即可將本地倉庫的內容同步至遠端倉庫。


      Branch Master


      3.11. 點選推送(push),等待片刻即可,我們重新登入github網站,會發現我們剛才本地倉庫的檔案已經成功推送到遠端倉庫


      Push
    4. 實踐入門-參與開源 Fork&pull request
      (以下以 [https://github.com/octocat/Spoon-Knife] 舉例)
      4.1. 首先開啟上述頁面,然後點選右上角“fork”按鈕。fork意味著將他人的倉庫複製到我們賬號中。如果我們想要參與開源專案,首先要fork下別人的專案,然後在我們複製過來的倉庫中,對別人的程式碼做修改。


      fork


      4.2. fork完之後,我們用上文提到的方法,將自己賬號中的[Spoon-Knife]倉庫克隆(clone)到本機SourceTree中,並在稍作更改後,推送(push)到自己賬號的遠端倉庫
       4.2.1 在SourceTree中建立新倉庫,並複製URL


      clone Spoon-Knife


       4.2.2 在本地倉庫中稍作更改(如圖我新建了一個Test)


      Example


       4.2.3 通過上文方法推送(Push),登陸Github,進入Spoon-Knife倉庫,發現test已經上傳到我們賬號的遠端倉庫Spoon-Knife當中


      Success


      4.3. 上傳完後,我們點選Github branch旁的綠色按鈕


      Pull Request 1


      4.4. 之後我們會進入一個Compare頁面,這個頁面用於比較作者倉庫與我們倉庫的檔案的不同。Base fork:指的是作者倉庫目錄地址;Head fork:指的是我們賬號中fork後所產生的倉庫地址。我們點選Create pull request即可


      Compare


      4.5. 然後我們會進入一個Pull Request介面,在這裡,我們可以輸入自己更改的原因/更改的內容。這裡寫的文字會顯示給原始碼作者,如果作者接受了我們的推送請求(pull request)後,我們的程式碼將會上傳到原始碼作者的倉庫內,成功為開源做貢獻。如果作者拒絕了我們的推送請求(pull request)後,我們的程式碼將不會上傳到原始碼作者的倉庫內。


      Pull Request 2


      4.6. 我們點選Create Pull Request即可,系統將自動跳轉到等待回覆的頁面,這裡會顯示作者是否接受我們的程式碼更改。


      Pull Request 3

      http://blog.csdn.net/hmh007/article/details/50864992

相關文章