還在記git命令?快試試SourceTree

baldwin發表於2018-09-29

簡介

背景

用過 git 版本管理的,對 SourceTree 應該不陌生的。它是 git 一個跨平臺的 GUI 工具。介面很不錯,而且功能也是很強大的。下面小編就針對SourceTree做一個小小的總結歸納,希望大家喜歡!

還在記git命令?快試試SourceTree

SourceTree下載官網下載地址Download for Mac OSX or Windows

這款軟體是免費的,但是需要註冊,登入授權;登入和授權這兩個步驟沒啥問題,但對於註冊需要科學上網才能註冊的了。

其實一些編輯器也是可以用作git提交程式碼的,包括合併程式碼等都行,之前整理過一 篇關於 Visual Studio Code如何提交程式碼的,在VS Code中也有很多git提交的外掛。但是對比了發現SourceTree更強大更專業一點。

還在記git命令?快試試SourceTree

新增倉庫

clone倉庫

還在記git命令?快試試SourceTree

新建分支

在GitHub或者gitlab上面新建一個新的遠端分支比較簡單,只需要規定從哪邊clone的即可。

還在記git命令?快試試SourceTree

⚡ 需要注意的是,新建的遠端分支也許在SourceTree上面沒顯示,這時候我們可以從origin在拉取一遍,也許資料沒有同步過來。

還在記git命令?快試試SourceTree

檢出分支

在本地開發的話,當然要新建一個某遠端分支相對應的本地分支,這時候 SourceTree的檢出功能就顯得很強大了。檢出分支相當於在本地建立一個和遠端程式碼同步的分支,在專案功能迭代的時候很常用,你可以在不同的分支上面提交不同的功能程式碼,互不影響。

origin裡面找到要同步檢出的遠端分支,右鍵檢出即可

還在記git命令?快試試SourceTree

你可以更改本地分支名,但是建議保持一致方便查詢

還在記git命令?快試試SourceTree
檢出後在分支標籤下顯示出分支,並切換成當前分支,你也可以雙擊分支完成切換

還在記git命令?快試試SourceTree

提交流程

先說下大致思路

提交流程很簡單,大致是這樣的,先暫存要提交的檔案,提交,拉取分支程式碼(這裡是拉取別人寫的程式碼),有衝突解決衝突(你和別人改了同一個地方了),再提交,最後推送上去即可。簡單吧!

暫存程式碼

在為暫存檔案裡面勾選即可暫存,暫存的意思就是說,我這裡面的檔案是準備要提交的。

提交

還在記git命令?快試試SourceTree

解決衝突

解決衝突這個工具處理的不是很好,這邊建議用編輯器解決,一目瞭然。Vs Code解決衝突

回滾提交

有些時候,我們提交的程式碼有問題,需要回滾回去。 將某次變更(在sourcetree裡是某個節點)右鍵選擇回滾提交。

還在記git命令?快試試SourceTree

總結

提交的流程很清晰,總之記住要先拉取推送就是了。

操縱分支

切換分支

切換分支很簡單,在分支標籤下雙擊一個分支即可

還在記git命令?快試試SourceTree

⚡ 需要注意的是,在切換分支之前儘量吧切換前分支程式碼的提交一下,不然要是程式碼有衝突的時候會報錯

合併分支(合併程式碼)

合併分支相當於在A遠端分支上 去merge B遠端分支的程式碼,做到A包含B的效果,大致流程就是,①先在本地切換成A分支,②merge B分支程式碼,③有衝突的話解決衝突,④提交完成合並。

這裡以master分支為例,merge jquery-seeds@1.0分支的程式碼:首先拉取jquery-seeds@1.0到master

方法一:

還在記git命令?快試試SourceTree

拉取過後要是有衝突檔案本地需要解決衝突(衝突過多的話建議用編輯器解決衝突)

還在記git命令?快試試SourceTree

解決衝突

還在記git命令?快試試SourceTree

提交(和正常提交流程一致)

方法二:

點合併分支

還在記git命令?快試試SourceTree
選合併已抓取,找到需要合併過來的分支,確定即可
還在記git命令?快試試SourceTree

合併好後,還可以在本地對比下新增了哪些檔案及所做的改動(有衝突解決衝突,推薦用編輯器解決衝突)

還在記git命令?快試試SourceTree
後面提交流程同上。

常見問題

1.每次用sourceTree拉程式碼都需要輸入密碼,如何解決?

如圖所示:

還在記git命令?快試試SourceTree

解決方案一:

在每個git或者gitlab倉庫上面拼上gitname@即可,如圖:

還在記git命令?快試試SourceTree

解決方案二:

在設定的網路裡面先刪除git分支對應的使用者,然後重試即可!

還在記git命令?快試試SourceTree
還在記git命令?快試試SourceTree

相關文章