轉(zhuǎn)載:http://www.reibang.com/p/be9f0484af9d
目錄
SourceTree簡介
SourceTree基本使用
SourceTree&Git部分名詞解釋
相關(guān)連接推薦
一、SourceTree簡介
SourceTree 是 Windows 和Mac OS X 下免費的 Git 和 Hg 客戶端,擁有可視化界面页藻,容易上手操作贩汉。同時它也是Mercurial和Subversion版本控制系統(tǒng)工具。支持創(chuàng)建、提交、clone、push签杈、pull 和merge等操作。
二鼎兽、SourceTree基本使用
(以下以SourceTree For Mac V2.0.5.2中文版為例答姥,托管平臺以Github為例)
基本安裝
1.1. 不建議在appstore直接搜索下載SourceTree,因為appstore里的版本已經(jīng)十分老舊(好像是2012年更新的)谚咬。建議前往官網(wǎng)下載安裝最新版鹦付,我這里也提供一個SourceTree for Mac V2.0.5.2的百度云的方便鏈接。傳送門→SourceTreeDownload
1.2. 拖動安裝择卦,Launchpad中打開敲长,continue,輸入github賬號按下一步完成即可秉继。沒有Github賬號的朋友祈噪,也可以跳過本步驟完成安裝
注冊GitHub(已有Github賬號的朋友請?zhí)^本步驟)
2.1. 打開Github官網(wǎng)傳送門→Github
2.2. 填寫必要的信息,點擊sigh up for github
Github Register 1
2.3. 默認選中免費賬號尚辑,點擊綠色的Finish sign up即可
Github Register 2
實踐入門-創(chuàng)建倉庫 clone&pull
3.1. 創(chuàng)建倉庫
用我們剛才創(chuàng)建的賬號登陸github辑鲤,在歡迎頁點擊“+ New repository“創(chuàng)建我們的倉庫
Create Repository 1
或點擊右上角的“+”,然后再New repository亦可
Create Repository 2
3.2. 按照個人需要填寫倉庫名杠茬、倉庫描述等月褥,建議勾選“Initialize this repository with a README”(注意此處免費賬戶只能選擇建立public(開源)倉庫)弛随,填寫完成后點擊Create repository
Create Repository 3
3.3. 至此,我們的倉庫已經(jīng)創(chuàng)建成功宁赤。創(chuàng)建成功后舀透,我們在頁面的右下角找到鏈接,點擊復制
Copy Link
3.4. 打開我們的SourceTree决左,點擊:“+新倉庫”愕够,選擇:“從URL克隆”
Clone 1
3.5. 粘貼我們的倉庫鏈接至源URL,SourceTree會自動幫我們生成目標路徑(本地倉庫路徑)以及名稱哆窿,點擊克隆
Clone 2
3.6. 等待數(shù)秒后链烈,SourceTree會為我們自動打開我們剛才克隆的倉庫,選擇master選項挚躯,這里我們可以看到我們倉庫里的所有文件
MainPage
3.7. 接下來我們想要上傳一個項目至我們的遠程Github倉庫內(nèi)。我們點擊右上角“在Finder”中顯示擦秽。然后SourceTree會幫我們打開我們的本地倉庫,我們將需要上傳的項目復制到本地的Finder文件夾內(nèi)缩搅,然后關(guān)閉文件夾硼瓣,回到主頁面堂鲤。我們會發(fā)現(xiàn)工作副本出現(xiàn)了更改提示
Change Notification
3.8. 我們點擊工作副本瘟栖,然后我們發(fā)現(xiàn)我們剛才上傳的文件都在未暫存文件當中半哟,此時寓涨,我們勾選“未暫存文件”
工作副本 1
3.9. 發(fā)現(xiàn)我們的文件變成了已暫存文件戒良。此時蔬墩,我們可以輸入更新信息,然后奏司,點擊提交按鈕
工作副本 2
3.10. 我們切換回master分支韵洋,會發(fā)現(xiàn)master分支以及推送(Push)按鈕黄锤,都出現(xiàn)了更改提示。這表示SourceTree已經(jīng)將我們剛才添加的文件成功提交到本地倉庫副编,而本地倉庫的內(nèi)容則比遠程倉庫超前了一個版本痹届。我們這個時候點擊推送(Push)即可將本地倉庫的內(nèi)容同步至遠程倉庫队腐。
Branch Master
3.11. 點擊推送(push),等待片刻即可为严,我們重新登錄github網(wǎng)站梗脾,會發(fā)現(xiàn)我們剛才本地倉庫的文件已經(jīng)成功推送到遠程倉庫
Push
實踐入門-參與開源 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倉庫,發(fā)現(xiàn)test已經(jīng)上傳到我們賬號的遠程倉庫Spoon-Knife當中
Success
4.3. 上傳完后形娇,我們點擊Github branch旁的綠色按鈕
Pull Request 1
4.4. 之后我們會進入一個Compare頁面,這個頁面用于比較作者倉庫與我們倉庫的文件的不同。Base fork:指的是作者倉庫目錄地址祷膳;Head fork:指的是我們賬號中fork后所產(chǎn)生的倉庫地址。我們點擊Create pull request即可
Compare
4.5. 然后我們會進入一個Pull Request界面,在這里勇皇,我們可以輸入自己更改的原因/更改的內(nèi)容罩句。這里寫的文字會顯示給源代碼作者,如果作者接受了我們的推送請求(pull request)后敛摘,我們的代碼將會上傳到源代碼作者的倉庫內(nèi)门烂,成功為開源做貢獻。如果作者拒絕了我們的推送請求(pull request)后,我們的代碼將不會上傳到源代碼作者的倉庫內(nèi)屯远。
Pull Request 2
4.6. 我們點擊Create Pull Request即可蔓姚,系統(tǒng)將自動跳轉(zhuǎn)到等待回復的頁面,這里會顯示作者是否接受我們的代碼更改慨丐。
Pull Request 3
三坡脐、SourceTree&Git部分名詞解釋
克隆(clone):從遠程倉庫URL加載創(chuàng)建一個與遠程倉庫一樣的本地倉庫
提交(commit):將暫存文件上傳到本地倉庫(我們在Finder中對本地倉庫做修改后一般都得先提交一次,再推送)
檢出(checkout):切換不同分支
添加(add):添加文件到緩存區(qū)
移除(remove):移除文件至緩存區(qū)
暫存(git stash):保存工作現(xiàn)場
重置(reset):回到最近添加(add)/提交(commit)狀態(tài)
合并(merge):將多個同名文件合并為一個文件咖气,該文件包含多個同名文件的所有內(nèi)容挨措,相同內(nèi)容抵消
抓取(fetch):從遠程倉庫獲取信息并同步至本地倉庫
拉取(pull):從遠程倉庫獲取信息并同步至本地倉庫,并且自動執(zhí)行合并(merge)操作崩溪,即pull=fetch+merge
推送(push):將本地倉庫同步至遠程倉庫浅役,一般推送(push)前先拉取(pull)一次伶唯,確保一致
分支(branch):創(chuàng)建/修改/刪除分枝
標簽(tag):給項目增添標簽
工作流(Git Flow):團隊工作時觉既,每個人創(chuàng)建屬于自己的分枝(branch),確定無誤后提交到master分枝
終端(terminal):可以輸入git命令行
四乳幸、相關(guān)鏈接推薦
上文均為個人拙見瞪讼,歡迎大家討論交流
作者:[SeaHub]
作者郵箱:[seahub@163.com]
關(guān)于轉(zhuǎn)載:歡迎轉(zhuǎn)載,但未經(jīng)作者同意粹断,必須在文章中給出原文連接符欠。