使用 SourceTree 管理ios項目

來源:互聯網
上載者:User

標籤:

 SourceTree 是一個非常優秀的版本控制軟體,他是一個用戶端,方便我們去接入 GitHub 、BitBucke 上面託管的代碼。


一、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年更新的)。
    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三、SourceTree&Git部分名詞解釋
    1. 複製(clone):從遠程倉庫URL載入建立一個與遠程倉庫一樣的本地倉庫
    2. 提交(commit):將暫存檔案上傳到本地倉庫(我們在Finder中對本地倉庫做修改後一般都得先提交一次,再推送)
    3. 檢出(checkout):切換不同分支
    4. 添加(add):添加檔案到緩衝區
    5. 移除(remove):移除檔案至緩衝區
    6. 暫存(git stash):儲存工作現場
    7. 重設(reset):回到最近添加(add)/提交(commit)狀態
    8. 合并(merge):將多個同名檔案合并為一個檔案,該檔案包含多個同名檔案的所有內容,相同內容抵消
    9. 抓取(fetch):從遠程倉庫擷取資訊並同步至本地倉庫
    10. 拉取(pull):從遠程倉庫擷取資訊並同步至本地倉庫,並且自動執行合并(merge)操作,即 pull=fetch+merge
    11. 推送(push):將本地倉庫同步至遠程倉庫,一般推送(push)前先拉取(pull)一次,確保一致
    12. 分支(branch):建立/修改/刪除分枝
    13. 標籤(tag):給項目增添標籤
    14. 工作流程(Git Flow):團隊工作時,每個人建立屬於自己的分枝(branch),確定無誤後提交到master分枝
    15. 終端(terminal):可以輸入git命令列
四、相關連結推薦
    1. →Github help for mac
    2. →Github help for win
  本篇部落格來自互連網,僅作為學習筆記。參考          書上得來終覺淺,絕知此事要躬行。

使用 SourceTree 管理ios項目

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.