Sourcetree安裝與使用

WenBo丨星空灬發表於2018-01-10

前言

自從我進入公司工作後,第一個接觸到的專案版本管理工具便是SVNSVN是Subversion的簡稱,是一個開放原始碼的版本控制系統,相較於RCS、CVS,它採用了分支管理系統,它的設計目標就是取代CVS。現在公司的專案也是用的SVN,沒用用Git。個人習慣用圖形化工具,使用SVN的時候,沒有用命令列,而是用的Cornerstone_V3.0.3(有需要的朋友,可以自行下載)。這篇文章的重點不是瞭解Cornerstone的使用,而是這篇文章的主角Sourcetree,用Sourcetree還是有一段時間了,感覺還是挺好用的,Git命令能完成的這個軟體都能完成,並且還有視覺化的介面。自己平時託管到碼雲上的Demo也是用這個軟體進行管理,下面開始介紹Sourcetree的安裝與使用吧。

介紹內容

目錄

一、 Sourcetree簡介
二、下載與安裝
三、Sourcetree使用
四、常見問題解決

一、Sourcetree簡介

A free Git client for Windows and Mac

hero-mac-screenshot.png

Sourcetree simplifies how you interact with your Git repositories so you can focus on coding. Visualize and manage your repositories through Sourcetree's simple Git GUI.

Sourcetree簡化了你與Git倉庫的互動,這樣你就可以專注於編碼了。通過Sourcetree的簡單的Git GUI來視覺化和管理你的儲存庫。

二、下載與安裝

Sourcetree有MAC版本和Windows版本,這裡以MAC版本為例。

1、下載

2、安裝

  • 2.1 Sourcetree_2.6.3a.zip解壓縮後,雙擊Sourcetree.app檔案進行安裝,這裡需要註冊Atlassian賬號(可能要翻牆註冊),我已經註冊過了,這裡我選擇使用已有賬號,如下圖所示:
    螢幕快照 2018-01-08 下午10.23.05.png
    螢幕快照 2018-01-08 下午10.23.47.png
  • 2.2 配置賬號,這裡可以跳過設定,也可以在這裡配置好GitHub賬號和密碼。如下圖所示:
    螢幕快照 2018-01-08 下午10.25.25.png
  • 2.3 安裝完成後介面如下圖所示:
    螢幕快照 2018-01-08 下午10.25.59.png

注意

這裡我選擇使用SSH方式,沒有使用HTTPS,因此,你需要在MAC上配置生成SSH key,可以參考這篇文章配置MAC上Git安裝與GitHub基本使用

三、Sourcetree使用

1、首先,配置GitHub賬號

因為我在安裝的時候已經配置了,在賬戶列表中有我的GitHub賬號,如下圖所示:

螢幕快照 2018-01-08 下午10.53.56.png
安裝時沒有配置賬號,可以點選右上角設定按鈕或在偏好設定中配置,在賬戶中點選新增進行配置,如下圖所示:
螢幕快照 2018-01-08 下午10.53.39.png
螢幕快照 2018-01-08 下午10.54.22.png

2、克隆遠端倉庫到本地倉庫

前提是在你的GitHub賬號上已經建立過專案。

  • 2.1 通過GUI客戶端克隆遠端倉庫,配置好賬戶後,點選遠端選項卡會顯示GitHub賬戶上的專案列表,如下圖所示:
    7682CA2830DF69FB015CDB35EA075999.png
    這裡我克隆LearnGit這個專案,選擇克隆在桌面Git資料夾下(如果想讓本地的資料夾名和專案名稱一樣,在Git後新增/LearnGit,點選克隆後,就會自動建立LearnGit資料夾),如下圖所示:
    螢幕快照 2018-01-08 下午11.09.24.png
    克隆成功後,本地倉庫就會新增這個標籤:
    螢幕快照 2018-01-08 下午11.10.15.png
  • 2.2 通過SSH連結克隆到本地倉庫,首先在GitHub上覆制SSH地址,如下圖所示:
    螢幕快照 2018-01-08 下午11.16.29.png
    然後點選新建->從遠端URL克隆,貼上地址,設定儲存路徑,如下圖所示:
    螢幕快照 2018-01-08 下午11.17.33.png
    螢幕快照 2018-01-08 下午11.18.11.png
    到這裡,已經成功將遠端專案克隆到本地啦~

3、上傳本地倉庫到遠端倉庫

  • 3.1 雙擊本地->標籤或滑鼠右鍵開啟倉庫詳情,如下圖所示:
    螢幕快照 2018-01-09 上午10.41.23.png
    進入詳情如下圖所示,我對一些常用板塊進行了標註,如下圖所示:
    螢幕快照 2018-01-09 下午9.29.11.png
  • 3.2 開啟LearnGitDemo,新增程式碼,然後檢視倉庫詳情,如下圖所示:
    螢幕快照 2018-01-09 上午11.10.43.png
  • 3.3 提交暫存區檔案到本地倉庫,如下圖所示:
    螢幕快照 2018-01-09 下午3.23.13.png
  • 3.4 點選推送按鈕,將本地倉庫推送到遠端,如下圖所示:
    螢幕快照 2018-01-09 下午3.28.59.png
    完成之後,到GitHub上檢視,已經有本次的提交資訊了:
    螢幕快照 2018-01-09 上午11.24.54.png
  • 3.5 拉取最新遠端倉庫更新內容,如果遠端倉庫有更新,會有數字角標提示,如下圖所示:
    螢幕快照 2018-01-09 下午9.41.47.png
    螢幕快照 2018-01-09 下午9.42.32.png
    到這裡,就已經介紹完推送本地倉庫到遠端和拉取遠端倉庫到本地倉庫了。
  • 注意 在提交本地暫存區檔案到遠端的時候,最好拉取最新的遠端倉庫,以避免起衝突。

4、Sourcetree打標籤

在這文章MAC上Git打標籤介紹了使用命令打標籤操作,Sourcetree同樣也支援打標籤操作,並且是視覺化的,操作起來很是方便。

  • 4.1 Sourcetree建立標籤
    螢幕快照 2018-01-09 上午11.34.49.png
    滑鼠右鍵選擇新建標籤,如下圖所示:
    螢幕快照 2018-01-09 上午11.59.37.png
    GitHub上檢視是否成功:
    螢幕快照 2018-01-09 下午12.00.11.png
    檢視標籤資訊,如下圖所示:
    螢幕快照 2018-01-09 下午9.49.11.png
    螢幕快照 2018-01-09 下午9.49.25.png
  • 4.2 刪除標籤
    螢幕快照 2018-01-09 下午9.50.59.png
    螢幕快照 2018-01-09 下午9.51.15.png
    螢幕快照 2018-01-09 下午9.51.45.png
    在刪除標籤v1.0.2的時候,勾選上刪除所有遠端標籤,刪除的時候本地和遠端的標籤都會被刪除,刪除完成之後,去GitHub上檢視,如下圖所示:
    螢幕快照 2018-01-09 下午9.53.47.png
    螢幕快照 2018-01-09 下午9.54.24.png
    基本的標籤操作到這裡也介紹完了。

5、分支(Branch)

  • 5.1 建立分支,如下圖所示:
    螢幕快照 2018-01-09 下午10.03.42.png
    建立成功過後,本地分支就多了一個develop分支,如下圖所示:
    螢幕快照 2018-01-09 下午10.12.50.png
  • 5.2 提交改動到本地倉庫,如下圖所示:
    螢幕快照 2018-01-09 下午10.20.44.png
  • 5.3 在develop分支下,將改動推送到遠端,如下圖所示:
    螢幕快照 2018-01-09 下午10.23.44.png
    螢幕快照 2018-01-09 下午10.24.11.png
  • 5.4 合併分支,首先,切換到要合併的分支master,如下圖所示:
    螢幕快照 2018-01-09 下午10.37.53.png
    develop分支提交的內容合併到master分支,如下圖所示:
    螢幕快照 2018-01-09 下午10.41.10.png
    螢幕快照 2018-01-09 下午10.45.23.png
    合併過後,需將改動內容提交到遠端,如下圖所示:
    螢幕快照 2018-01-09 下午10.45.46.png
    到GitHub上檢視,分支是否合併成功,如下圖所示:
    螢幕快照 2018-01-09 下午11.04.42.png

四、常見問題解決

1、上傳檔案大小超過限制,不能上傳

  • 1.1 終端中修改,開啟終端輸入(全域性配置:設定大小500M):
git config http.postBuffer 524288000
複製程式碼

配置之後,用一下命令檢視,就會多出http.postbuffer=524288000這行:

git config -l
複製程式碼
  • 1.2 在Sourcetree中配置當前倉庫config檔案或者直接配置git中的config檔案,新增:
[http]
	postBuffer = 524288000
複製程式碼

螢幕快照 2018-01-10 下午12.49.17.png
螢幕快照 2018-01-10 下午12.49.28.png

  • 1.3 通過Git擴充套件**git-lfs**(Git extension for versioning large files )提交大檔案。
//1、安裝Homebrew
/usr/bin/ruby -e "$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/master/install)"

//2、安裝git-lfs
brew install git-lfs

//3、lfs初始化倉庫
git lfs install

//4、選擇想要管理的Git LFS檔案型別(或者編輯 .gitattributes)
git lfs track "*.zip"

//5、檢視git-lfs管理的檔案
git lfs track

//6、確保.gitattributes也被追蹤
git add .gitattributes

//7、提交到遠端倉庫
git add file.psd
git commit -m "Add design file"
git push origin master

複製程式碼

參考文章: Git Large File Storage

2、warning: templates not found /usr/local/git/share/git-core/templates

出現上面原因沒有克隆成功,是因為沒有建立相應檔案,可以用命令open /usr/local/git測試是否已經建立:

yanjiyoudeMac-mini:~ admin$ open /usr/local/git
The file /usr/local/git does not exist.
複製程式碼

沒有建立則建立:

//建立git資料夾
sudo mkdir /usr/local/git
//建立share資料夾
sudo mkdir /usr/local/git/share
//建立git-core資料夾
sudo mkdir /usr/local/git/share/git-core
//建立templates夾
sudo mkdir /usr/local/git/share/git-core/templates
//建立templates夾
sudo chmod -R 755 /usr/local/git/share/git-core/templates
複製程式碼

建立完成之後,重新克隆,就能克隆到本地了。

總結

本篇文章也只記錄了Sourcetree的一些基本操作,公司現在的專案也沒有用Git管理,自己現在用Git主要是託管自己寫的工具demo,我也不知道自己怎麼接觸到這款軟體,安裝這款軟體的時候需要註冊Atlassian 賬號,於是就找同事問翻牆的方法,翻牆過後也成功安裝了這款軟體。其中一些使用方法,也是自己慢慢摸索,可能也有不對的地方,也請諒解。通過寫這篇文章,我發現自己對Git一些概念不是很理解,對於一些常用命令也不是很熟悉,文章也沒有講到Git工作流,看來自己確實需要補一下Git命令相關的知識了,不管是使用Git命令還是GUI,都還是要多實際操作,才能更加記憶深刻。以後工作中如果有更多實際應用或使用過程遇到問題,也會在本文章中補充。有興趣的朋友可以自己下載安裝使用吧!

參考文章

相關文章