前言
當我們對Git的提交、分支已經熟悉了之后,可以熟練使用命令操作Git后,再使用GUI工具,就可以更高效。Git有很多圖形界面工具,例如很經典的小烏龜。
今天我們簡單的來聊聊SourceTree,也是不錯的選擇哦!
首先從官網下載好SourceTree安裝,然后直接運行它。
配置SSH密鑰
首先如果你是沒有密鑰的,重新生成一個即可。
點擊工具 --> 選項

一般選項設置

添加倉庫
添加本地文件夾
如果是第一次使用時,是沒有git倉庫的,如果本地以及擁有的倉庫的話,我們可以直接添加文件夾進來,然后就成功添加了一個本地git倉庫。

clone遠程庫
這里我們直接點擊Clone選項,輸入需要克隆的倉庫地址,然后等待克隆成功。

成功之后就會來到主界面

點擊History,可以查看倉庫的提交記錄。與此同時,我們打開我們本地倉庫的路徑,發現已經多了一個.git文件夾和一個新的README.md文件

提交
我們先對文件進行更改,再進行提交測試。
這時我們點擊文件狀態,這里會監測到文件被改過。左上角的提交按鈕也會有數字顯示,有多少個文件被更改過。因為我們是在本地工作的副本進行,所以要先提交到本地倉庫,然后在推送到遠程倉庫。

要提交,我們先進行第一步,暫存文件

有3個暫存選擇
- 暫存所有:一次性把所有文件暫存
- 暫存所選:只暫存你選中的文件
- 文件后邊的加號(+):暫存當前文件
暫存之后,會出現在上邊已暫存文件的位置,也有取消暫存的操作
我們先點擊提交,然后再進行推送

提交,提交成功之后可以看到歷史中已經提交了新的,但是只是提交到了本地倉庫,而不是遠程倉庫

此時github的還是原來的文件,沒有發生改變

我們可以看見推送有個數字1,我們直接選擇推送代碼,等待推送成功

推送成功之后,我們可以看到分支中多了2個遠程的分支,github中的也同步更新了。

獲取
提交代碼已經看完了,我們先在遠程倉庫中更新一下文件,然后再進行拉代碼。

獲取是將遠程倉庫的代碼更新到本地倉庫,拉取是將本地倉庫的代碼更新到本地工作副本。回到sourceTree,點擊獲取按鈕

之后我們可以看到拉取和分支那里都有一個數字,分支中的數字表示有更新需要拉到本地工作副本,這時候本地文件是沒有更新的。

點擊拉取按鈕

等待成功之后我們發現待拉取的提示已經消失了,本地文件也更新了

分支
當我們要新增一個功能的時候,有不打破原有的代碼的功能上,我們新增一個分支,然后進行功能的開發。等待完成后再合並到主分支上。
點擊分支,輸出名稱,然后創建就會生成一個新的dev分支

這是我們的分支就創建成功了,但是目前還是存在本地的分支。節點是顯示的是 dev,origin/master,origin/HEAD,master。帶有origin就表示是遠程倉庫所存在

接下來,我們點擊推送,勾選dev分支,將本地的dev分支推送到遠程dev分支

等待推送完成,可以看到本地dev和遠程dev已經同步了。多了一個origin/dev

然后我們在dev分支上新增一個測試功能,選中dev分支,進行提交。

我們提交完之后,可以看到一個變化,dev分支比master分支多了一個提交記錄
dev分支

master分支

加入我們現實功能實現了,並也通過了測試。現在呢,就要合並到主分支上了。
將當前分支切換到master分支(雙擊即可),分支前面有個小圓點說明你處於當前分支上,鼠標單擊到dev分支(會有個灰色的背景),右鍵,選擇合並develop至當前分支,也即是主分支。

然后點擊確定

這是我們可以看到master的本地倉庫多了一條推送的記錄。如圖所示的紅框內圖標2,說明dev分支新增的測試功能已合並到本地倉庫的master分支。

推送合並的測試功能,可以看到master分支也有了新增的測試功能

