1.基本概念
git 是由linux kernel創始人linus設計發布的乙個版本控制軟體。
git倉庫就是那個.git目錄,其中存放的是我們所提交的文件索引內容,git基於檔案內容儲存,實現版本控制。.git目錄位於工作目錄內。
(1)工作目錄:使用者本地目錄
(2)index(索引):講工作目錄下所有檔案(包括子檔案)生成快照,存放到乙個臨時儲存區域,git稱該區域為索引
(3)倉庫:將索引通過commit命令提交到倉庫中,每一次提交都意味這版本在進行一次更新。
在命令列中輸入: git , 如果輸出git命令使用資訊,說明git已經安裝成功了~
3.配置git
git有乙個工具成為git config,它允許你獲得和設定配置變數,這些變數可以控制git外觀和操作等。
(1)配置變數被儲存在三個不同的位置:
(a) /etc/gitconfig 檔案: 這個檔案包含了用於系統所有使用者和所有庫的值。如果你傳遞引數選項「--system」給git config,它將讀寫這個檔案。
(b) ~/.gitconfig 檔案: 具體到你的自己的使用者。可以通過傳遞「--global」 給git config,使其讀寫這個檔案。
(c) 位於git目錄的config檔案(即.git/config): 無論你當前在用的庫使什麼,特定指向該單一的庫。
(2)配置你的使用者名稱和郵箱
$git config --global user.name "your name"
$git config --global user.email youremail@***.***
(3)配置編輯器和比較工具
$git config --global core.editor yourediter
$git config --global merge.tool your diff tool
git預設情況先使用你系統預設編輯器,通常可能使vim,vimdiff
(4)檢查配置
$git config --list
或者直接開啟~/.gitconfig檢視
4.建立git庫
(1)建立乙個空的庫test,很簡單,使用 git init就可以了。
$mkdir test
$cd test
$git init
這樣乙個空的版本庫就建立好了,並在當前目錄test下建立了乙個子目錄.git,以後檔案的變化資訊都會儲存到這個目錄下.
(2)配置庫test
在 test/.git/目錄下有乙個config配置檔案,上面已經說過,這個配置檔案是test這個庫單獨使用的。
初始內容如下:
[core]
repositoryformatversion = 0
filemode = true
bare = false
logallrefupdates = true
ignorecase = true
precomposeunicode = false
我們需要加入如下內容:
[user]
name=yourname
email=youemail@***.***
這樣乙個名為test的版本庫就建立好了,但它是空的,不能做任何事,下一步就是要向裡面新增檔案。
(注: 如果你想忽略某些檔案,可以在.git目錄下建立乙個gitignore檔案,在裡面新增希望過濾掉的的檔案型別)
5. 向git庫中新增檔案
比如在庫目錄test下面有乙個需要新增的檔案file1,把file1新增的庫中的過程如下:
(1)先把file1新增到索引中(緩衝區) --git add
$git add file1
(可以利用git status 檢視版本庫狀態)
(2)把file1檔案(改動)提交到head中 -- git commit -m "提交資訊"
(假設提交資訊寫的是commit by abc)
$ git commit -m "commit by abc"
6.分支管理
在第一次執行 git init 時,系統就會建立乙個名為「master」的主分支。你要手工建立一些其他分支,然後在新建立的分支上進行開發,最後把他們合併到主分支master上。
一般的分支策略:
(a) 建立乙個屬於自己的個人工作分支,可以避免對主分支master造成太多干擾,也方便與他人交流;
(b) 進行高風險工作時,建立乙個試驗性分支;
(c) 合併別人工作的時候,最好建立乙個臨時分支來合併,合併後再「fatch」到自己的分支。
分支管理操作只要有:
(1) 建立分支
法1: git branch branch_name
建立乙個branch_name分支,但是不會切換到branch_name這個分支,需要執行 git checkout branch_name 切換到branch_name分支
法2: git checkout -b branch_name
建立乙個branch_name分支,並且切換到branch_name分支
(2) 刪除分支
git branch -d branch_name
(3) 切換分支
git checkout branch_name
(4) 合併分支
(a) git merge 合併的目標分支 合併的**分支
例如: $ git checkout master (切換到master分支)
$ git merge master branch1 (合併maste分支和branch1分支)
(b) git pull 合併的目標分支 合併的**分支
例如: $ git checkout master (切換到master分支)
$ git pull . branch2 (合併當前分支和branch2分支)
(5)撤銷操作
如果你的工作目錄裡搞的一團糟,但現在還沒有提交,你可以使用如下命令,讓工作目錄回到上次提交時的狀態(last committed state)
$ git reset --hard head
如果你已經做了乙個提交(commit),但馬上又後悔了,你可以建立乙個新提交(commit),在新提交裡撤銷老提交所作的修改。
$git revert head
你還可以撤銷上上次的提交(commit)
$git revert head^
還可以還原到制定的版本,但是需要提供那個版本號
$get revert 9a932ab7ecaba140b18ca821e050d04f0045c856
7. clone
一般 git clone 是使用頻率很高的命令了。使用這個命令,你可以從遠端完整獲取乙個git庫,並可以通過一些命令和遠端git互動。
基於git**管理的組織結構,往往形成乙個樹狀結構,開發者一般從某個**模組的管理者git庫通過git clone 來取得開發環境,在本地迭代開發後,再提交給該模組的管理者,該模組的管理者檢查這些提交並將**合併到自己的庫中,並向更高一級**管理者提交自己的模組**。
為了clone乙個倉庫,我們需要知道這個專案倉庫的位址(git url). git能在許多協議下使用,所以git url可能是以 ssh://, http://, https://, git:// ,或者只是以乙個使用者名為字首。
例如: git本身的源**可以使用git://協議來訪問
$git clone git:
Mac下Git的使用 上
開啟terminal,輸入 brew install git以下為最最常用的git指令 通過檢視git版本來測試是否安裝成功 git version建立乙個全球使用者名稱和郵箱 git config global user.name your name git config global user....
mac下sublime 配置使用markdown
sublime text作為乙個優秀的文字編輯器,擁有很多的擴充套件外掛程式。我們可以利用這些外掛程式為sublime text 增加擴充套件的功能。mac常用編輯器強烈推薦sublime,當前出到sublime text 3。官方主頁 2.安裝package control 使用快捷鍵ctrl 開...
mac環境下,git安裝和使用
選擇對應的版本,安裝即可 檢視git版本 git version 安裝homebrew usr bin ruby e curl fssl homebrew安裝完成以後檢查一下 brew v 通過brew來安裝git brew install git安裝完成以後即可使用git version來檢視版本...