Git基礎操作

一、流程與概念

首先在使用git之前我們需要了解它的幾個概念和基礎使用流程,在git操作中有四個重要的地方,你所有的操作都是在和他們打交道。

  • workspace : 工作目錄是對項目的某個版本獨立提取出來的內容。 這些從 Git 倉庫的壓縮數據庫中提取出來的文件,放在磁盤上供你使用或修改。
  • index : 暫存區 , 一個本地的緩衝區。暫存區域是一個文件,保存了下次將提交的文件列表信息,一般在 Git 倉庫目錄中。 有時候也被稱作`‘索引’',不過一般說法還是叫暫存區域。
  • local repository : 本地倉庫,裏面有遠程分支和本地分支, 處於本地,你不可以直接對其經行修改
  • remote repository :  遠程倉庫是 Git 用來保存項目的元數據和對象數據庫的地方。 這是 Git 中最重要的部分,從其它計算機克隆倉庫時,拷貝的就是這裏的數據。

流程圖:

二、安裝git

在不同的操作系統上安裝方式不同

Debian/Ubuntu

apt-get install git

Fedora

yum install git

window需要下載,http://windows.github.com

mac可以通過homebrew來安裝

三、配置git

Git 自帶一個 git config 的工具來幫助設置控制 Git 外觀和行爲的配置變量。你的配置也是要通過該工具完成,當然你也可以通過修改配置文件的方式。

1.配置用戶名和郵箱

此處設置的用戶名和郵箱可以隨意設置,每必要和你的github一模一樣,這個只是在提交的時候附加上去,標明這次提交時誰幹的,出事了就找這個人。

$ git config --global user.name "John Doe"
$ git config --global user.email [email protected]

如果使用了 --global 選項,那麼該命令只需要運行一次,因爲之後無論你在該系統上做任何事情, Git 都會使用那些信息。 當你想針對特定項目使用不同的用戶名稱與郵件地址時,可以在那個項目目錄下運行沒有 --global 選項的命令來配置。

2.配置文件編輯器

如果你對文本編輯器有特殊的習慣,可以配置此項,當 Git 需要你輸入信息時會調用它。 如果未配置,Git 會使用操作系統默認的文本編輯器。謹慎配置,如果你對這些編譯器不熟悉最好還是保持默認

$ git config --global core.editor Vim

3.配置github

你可以配置github賬號和token

git config --global github.user s15603333319
git config --global github.token 241236a041eab12345dcba1df1b6d1c546f24f95

4.查看配置

如果你想檢查你的配置,可以使用此命令

git config --list

如果你想查看某一項配置,你需要按照git config <key>的格式,比如查看用戶名

git config user.name

5.獲取幫助

如果你有什麼不懂的可以使用hlep來獲取命令的使用方法

$ git help <verb>
$ git <verb> --help

例如想知道config命令的使用方法

$ git help config

四、基礎操作

如果你想克隆一份git倉庫的代碼,你就可以使用git clone [url]

git clone [email protected]:s15603333319/AndroidOpenGL.git

如果你打算使用 Git 來對現有的項目進行管理,你需要使用git init來初始話該項目

git init

使用git add filename來添加文件到暫存區,如果你想添加本目錄下所有文件,可以使用git add .

git add .

所有的變更,最終都需要提交,才能在本地持久化報存

git commit -m "提交所附加的信息"

要上傳到遠程服務器上,你還要指定你的遠程倉庫地址

git remote add origin https://github.com/s15603333319/AndroidOpenGL.git

最後一步,你就可以把你commit到本地倉庫的代碼push到遠程了,指定分支

git push origin master

五、其它操作

檢查當前文件狀態

git status

忽略文件

我們總會有一些文件不需要納入git的管理,這種情況下,我們可以創建一個名爲 .gitignore 的文件,在其中列出要忽略的文件樣式。

$ cat .gitignore
*.[oa]
*~

熟悉正則表達式的看這個很容易明白,不懂的可以去學一下,正則表達式還是很重要的一個東西的。

第一行告訴 Git 忽略所有以 .o.a 結尾的文件。

第二行告訴 Git 忽略所有以波浪符(~)結尾的文件

文件 .gitignore 的格式規範如下:

  • 所有空行或者以 開頭的行都會被 Git 忽略。
  • 可以使用標準的 glob 模式匹配。
  • 匹配模式可以以(/)開頭防止遞歸。
  • 匹配模式可以以(/)結尾指定目錄。
  • 要忽略指定模式以外的文件或目錄,可以在模式前加上驚歎號(!)取反。

GitHub 有一個十分詳細的針對數十種項目及語言的 .gitignore 文件列表,你可以在 https://github.com/github/gitignore 找到它.

查看提交歷史

git log

 他有許多參數可以配置, 比較常用的一個常用的選項是 -p,用來顯示每次提交的內容差異。 你也可以加上 -2 來僅顯示最近兩次提交。

撤銷提交

有時候我們提交信息寫錯了,或者漏改了一個地方,我們就需要撤銷操作。該命令可以覆蓋第一次提交的結果

git commit --amend

創建分支

團隊開發必然是要創建分支的,不可能大家都在主線上提交和改動

git branch 分支名稱

切換分支

git checkout 分支名稱

如果你在此命令上加上參數-b 就表示創建並切換此分支

查看分支

git branch

該命令會列出所有分支,前面帶*號的那個是當前分支

合併分支

git merge 分支名稱

該命令用戶合併指定分支到當前分支上

刪除分支

git branch -d 分支名字

合併後的分支就可以刪掉了,刪除分支要謹慎

這些都是使用率比較高的命令,也很基礎,如果你對git有更多的要求,可以查看官方文檔學習

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章