初始版本控制工具-Git

  該博文徹底參考郭霖的《第一行代碼》git

 


 

安裝Gitgithub

Ubuntu系統:shell

  只須要打開shell界面,並輸入:windows

sudo apt-get install git-core

按下回車後輸入密碼,便可完成Git的安裝。ide

Windows系統:fetch

  先下載Git安裝包,下載地址:https://git-for-windows.github.io/,下載完成後點擊安裝包進行安裝,以後一直點擊「下一步」就能夠完成安裝。gradle

 

建立代碼倉庫ui

  1. 在「開始」裏面找到並打開Git Bash。
  2. 配置下你的身份,這樣在提交代碼時Git就知道是誰提交的,命令以下:
    git config --global user.name "zy"
    git config --global user.email "zy@gmail.com"
  3. 使用一樣的命令查看是否配置成功
    git config --global user.name
    git config --global user.email
  4. 開始建立本地代碼倉庫,先進入相應的工程項目根目錄下
    cd c:
    cd Pro/HelloWorld

    而後完成建立本地代碼倉庫的操做idea

    git init

    建立完成後,根目錄下會生成一個隱藏的.git文件夾(產生該文件夾就說明本地代碼倉庫建立成功),能夠經過ls -al命令查看。spa

    ls -al

    若是項刪除本地倉庫,只須要刪除這個文件夾就行。

 

提交本地代碼

只須要用到add和commit命令就能夠了。add用於把想要提交的代碼先添加進來,而commit則是真正的去執行提交操做

git add helloworld.c    //添加單個文件
git add .    //添加項目根目錄下全部文件
git commit -m "First commit"  //commit命令後面必定要經過-m參數來加上提交的描述信息

 

忽略文件

Git提供了一種可配性很強的機制來容許用戶將指定的文件或目錄排除在版本控制以外,它會檢查代碼倉庫的目錄下是否存在一個名爲.gitignore文件,若是存在的話,就去一行一行讀取這個文件中的內容,並把指定的文件或目錄排除在版本控制以外。好比:

*.iml        //任意以.iml結尾的文件
/build      //build文件夾
.gradle    //.gradle文件
/.idea/workspace.xml      //.idea文件夾中的workspace.xml文件

而後提交便可將上述文件或文件夾排除在版本控制以外

git add .
git commit -m "First commit"

 

查看修改內容

使用Git查看上次提交後文件修改內容,status命令會顯示出全部自上次提交後全部有變化的文件

git status

使用diff命令能夠查看到全部文件的更改內容

git diff
git diff /src/hello.c //只查看hello.c這個文件的更改內容

 

撤銷未提交的更改

只要代碼還未提交,全部修改內容都是能夠撤銷的。

  1. 當未執行過add命令時,可使用checkout命令來撤銷修改內容
    git checkout /src/hello.c     //這個命令執行後,咱們對hello.c這個文件所作的一切修改就都被撤銷了
  2. 當文件執行過add命令時,上述方式就沒法撤銷其修改內容,這個時候咱們須要使用reset命令取消添加,而後再使用checkout命令來撤銷修改內容
    git reset HEAD /src/hello.c
    git checkout /src/hello.c

     

查看提交記錄

使用log命令查看歷史提交信息,每次提交記錄都會包含提交id、提交人、提交日期以及提交描述這4個信息

git log

當提交記錄很是多的時候,若是咱們只想查看其中一條記錄,能夠在命令中指定該記錄的id,並加上-1參數表示咱們只想查看一條記錄

git log 1fa38afdj305fgjlj757 -1

若是想查看這條提交記錄具體修改了什麼內容,能夠在命令中加入-p參數

git log 1fa38afdj305fgjlj757 -1 -p

 

分支的用法

查看當前的版本庫中有哪些分支,前面帶有"*"的分支表明當前分支

git branch

建立新的分支

git branch version1.0

切換分支

git checkout version1.0

把version1.0分支上的修改合併到master上

git checkout master
git merge version1.0

刪除分支

git branch -D version1.0

 

與遠程版本庫協做

將版本庫中的代碼下載到本地

git clone https://github.com/example/test.git      //須要遠程版本庫的Git地址

使用push命令將本地修改的內容同步到遠程版本庫上,其中origin部分指定的是遠程版本庫地址,master部分指定的是同步到遠程版本庫的哪個分支上

git push origin master

將遠程版本庫的修改同步到本地,可使用fetch和pull命令

git fetch origin master      //將遠程版本庫的代碼同步到本地,不過同步下來的代碼並不會合併到任何分支上,而是會存放到一個origin/master 分支上
git diff origin/master       //咱們可使用diff命令查看遠程版本庫到底修改了哪些東西
git merge origin/master  //而後調用merge命令將origin/master分支上的修改合併到本地主分支上
git pull origin master      //pull命令則是將fetch和merge這兩個命令放在一塊兒執行,它能夠從遠程版本庫上獲取最新的代碼而且合併到本地
相關文章
相關標籤/搜索