SmarGit 操作指南(一)
阿新 • • 發佈:2019-02-05
Git
是一個很強大的版本控制工具。
SmartGit
一、理解基本命令
要理解SmartGit 首先要理解git的基本知識,比如一些常見的命令。已經熟悉使用命令列,可以略過本步驟。
cd 要管理的目錄
git init #初始化 在原始碼目錄內生成一個.git的目錄
git config --global user.name XXX #使用者名稱
git config --global user.email XXX # 使用者郵箱
git config –list #檢視使用者資訊
git add #把改好的檔案加入暫存區
git commit –m “xxx” #提交暫存區的檔案到當前的本地本地分支,“xxx“為必須天加的註釋。
git pull # 相當於是從遠端獲取最新版本並merge到本地
(在提交前要git pull --rebase一下,確保當前的本地的程式碼為最新。)
git fetch #相當於是從遠端獲取最新版本到本地,不會自動merge
(git fetch更安全一些,pull相當於fetch然後merge。因為在merge前,我們可以檢視更新情況,然後再決定是否合併)
git push #向伺服器提交
————————————殘酷的分割線——————————————————
這部分的命令可以不看,喜歡的還是可以瞭解下
git log #檢視版本資訊
git status #檢視當前程式碼庫的狀態
git reset --hard #回到原來編輯的地方,改動會丟失。
git reset --hard sdv143kvf…... #可回到指定的版本
二、理解Git的工作方式
1.檔案有改動
(2)程式設計師A、B、C將主分支克隆下來,並建立自己的分支如:A。
(3)A程式設計師在A分支完成了自己負責的模組,接下來就是合併了。
(4)切換到local/master,將origin/master pull到local/master。
(5)切換到A branch(分支),將local/master合併到A branch,此時可能需要解決衝突。
(6)上一步完美合併後,再checkout(切換)到local/master,並把A branch 合併進來。
(7)執行pull,A程式設計師完美滴提交了自己完成的模組到伺服器。
3.其他
以後再更新。
三、 SmartGit的基本操作
1.建立,匯入
從伺服器克隆一個
2.add、commit操作
我的操作是刪除了一張圖片。
於是ajenti.jpg 的檔案狀態變為missing,此時我們點選Stage把Files區的檔案加入暫存區。
點選commit提交到當前本地分支
分支視窗下,bobby 分支 比master分支多了一個提交操作。
3.分支合併
接著前面的例子:分支視窗下,雙擊即可切換到相應分支。雙擊切換到Local/maser
雖然沒顯示服務端master有更新,但是還是要先pull下,因為這工具有時不太智慧。
確認當前的分支是master,點選merge(合併)
是一個很強大的版本控制工具。
SmartGit
是一個強大的git 影象介面工具(GUI)。目前有Mac版和windows 版,本文主要介紹SmartGit的使用,如果不打算使用GUI,可以略過本文。
一、理解基本命令
要理解SmartGit 首先要理解git的基本知識,比如一些常見的命令。已經熟悉使用命令列,可以略過本步驟。
cd 要管理的目錄
git init #初始化 在原始碼目錄內生成一個.git的目錄
git config --global user.name XXX #使用者名稱
git config --global user.email XXX # 使用者郵箱
git config –list #檢視使用者資訊
git add #把改好的檔案加入暫存區
git commit –m “xxx” #提交暫存區的檔案到當前的本地本地分支,“xxx“為必須天加的註釋。
git pull # 相當於是從遠端獲取最新版本並merge到本地
(在提交前要git pull --rebase一下,確保當前的本地的程式碼為最新。)
git fetch #相當於是從遠端獲取最新版本到本地,不會自動merge
(git fetch更安全一些,pull相當於fetch然後merge。因為在merge前,我們可以檢視更新情況,然後再決定是否合併)
git push #向伺服器提交
————————————殘酷的分割線——————————————————
這部分的命令可以不看,喜歡的還是可以瞭解下
git log #檢視版本資訊
git status #檢視當前程式碼庫的狀態
git reset --hard #回到原來編輯的地方,改動會丟失。
git reset --hard sdv143kvf…... #可回到指定的版本
二、理解Git的工作方式
1.檔案有改動
檔案有改動會存在兩種狀態,一種是你已經改好了的,一種是正在修改當中的。此時,你可能想提交已經改好的,於是Git 提供了add命令,將需要提交的檔案放入暫存區,接著下一次commit命令的時候,Git 就會提交所以暫存區裡的檔案到本地倉庫的當前分支。
2. 團隊協作
commit是提交到本地,pull是提交到伺服器。如果每次改變都提交的伺服器的主幹分支,會很容易造成主分支(master)的混亂,甚至會導致無法挽回的損失,而且頻繁的網路訪問很耗費時間。所以通常的做法是:
(1)管理員在服務端建立主分支(2)程式設計師A、B、C將主分支克隆下來,並建立自己的分支如:A。
(3)A程式設計師在A分支完成了自己負責的模組,接下來就是合併了。
(4)切換到local/master,將origin/master pull到local/master。
(5)切換到A branch(分支),將local/master合併到A branch,此時可能需要解決衝突。
(6)上一步完美合併後,再checkout(切換)到local/master,並把A branch 合併進來。
(7)執行pull,A程式設計師完美滴提交了自己完成的模組到伺服器。
3.其他
以後再更新。
三、 SmartGit的基本操作
1.建立,匯入
從伺服器克隆一個
2.add、commit操作
我的操作是刪除了一張圖片。
於是ajenti.jpg 的檔案狀態變為missing,此時我們點選Stage把Files區的檔案加入暫存區。
點選commit提交到當前本地分支
接下來可以看到:
分支視窗下,bobby 分支 比master分支多了一個提交操作。
3.分支合併
接著前面的例子:分支視窗下,雙擊即可切換到相應分支。雙擊切換到Local/maser
雖然沒顯示服務端master有更新,但是還是要先pull下,因為這工具有時不太智慧。
果然,服務端master分支確實有新內容,比bobby多了一個提交。而我們剛剛也有一個提交,所以也比服務端多“另一個”提交。
確認當前的分支是master,點選merge(合併)
雙擊第一個,然後選fast-forward