看完就會用的GIT操做圖解分析

不管你是前端仍是後臺,不管是運維仍是移動端研發,GIT是逃避不了的東西,固然你說你要用SVN,那不在此次的討論範圍以內。很少說,請看下文GIT圖解分析,10分鐘學會git操做,固然下面的教程是爲實戰爲主,會跟你在別的網站看到的不同。前端

1.GIT是啥玩意呀?python

GIT原來是這樣子的

首先每個項目,咱們都把他變成一個git倉庫。linux

  • 一個git倉庫包含無數分支,默認分支爲master
  • 每一個分支都包含無數個版本庫
  • 每一個版本庫都包含無數個文件

注:具體包含關係看上圖哈,看這圖僅僅讓你知道git的樣子nginx

咱們爲何要用GIT呢?git

  • 咱們能夠每次修改一些文件以後,凍結住當前全部文件,而後定義成一個版本,讓本身有一顆後悔藥吃,能夠隨時拿到某個版本的文件內容。
  • 記錄下每一個人修改了什麼,能夠秋後算帳(後半句開玩笑啦)

2.建立一個git項目github

  • 尋找一家第三方git託管平臺商(知道就不看下面的圖片,不知道就看看下面的圖片哈)

git託管平臺注:國內的碼雲,coding,國外的github,Bitbucket,或者gitlab,哪家本身看名字比較喜歡就選哪家啦。都不喜歡,那麼能夠本身搭建git平臺。sql

  • 找到一家服務商以後,註冊帳號,而後在網頁點擊新建項目(下圖是我用github來作示範)

在網站新建項目的截圖

注:test改爲本身的項目名,那段中文改爲本身的項目描述,其它的不用理。(都說是實戰教程,只教你速成)編程

  • 建立完成以後,會跳轉到項目主頁(不要卡掉這個頁面先哈)

項目主頁是這個樣子的

3.在本身電腦安裝一個git客戶端centos

  • windown用戶:在官網下載一個安裝包,而後運行,不停點next就好,啥都默認便可。
  • linux用戶:拿centos作例子,執行命令yum install -y git 便可
  • mac用戶:抱歉,沒有錢買蘋果機來測試

4.把剛纔新建的項目同步到本地緩存

  • window用戶打開git終端
  • linux和蘋果用戶打開普通終端便可

而後在剛纔哪一個項目主頁,找到git地址,注意這玩意有兩個地址。一個是https,而另外一個是ssh。 咱們本着最簡單的原則,咱們選擇copy https 這個地址。 而後聽我命令,在命令行執行git clone 地址 假如提示你輸入帳號密碼就輸入帳號密碼,也有可能直接什麼都不用。 成功以後你就會發現本地多了一個文件夾,名字就是項目名。成功的例子

5.git實戰的第一步,生成一個版本

  • 首先,先隨意添加幾個文件
  • 而後,命令行先切換到工程目錄裏面(這個很重要)
  • 接着,執行git add 文件或文件夾相對路徑(能夠執行多條語句)
  • 上面的語句是告訴git你修改了那些文件,並把修改暫時存了起來。
  • 這個時候,距離生成一個版本只差一個命令,就是 git commit -m "備註",固然若是你是跟着本教程走下來的,恭喜你,遇到了一個崩潰的錯誤。

這錯誤來得措不及防

這個錯誤出現是咱們沒有配置git信息,咱們只須要配置一次便可。(執行下面的命令,中文本身替換哈)

git config --global user.email "你的郵箱" git config --global user.name "你的名字" 
  • 1
  • 2

而後繼續恢復執行git commit -m "備註",顯示成功。

生成一個版本成功

分析時刻:(請注意對照下圖來看) 首先咱們瞭解幾個概念,咱們當前的目錄叫作工做區,而後有一個叫作緩存區的東西,接着還有一個叫作版本庫的玩意兒。其實咱們添加,修改或者刪除了工程裏面的文件,git都會發現,而且標誌爲未跟蹤的文件,而git add 路徑這條命令就是告訴git把文件列入跟蹤文件列表,而git commit -m "備註"就是把跟蹤文件列表的操做清空,而清空前固然是記錄成一個版本啦。查看緩衝區的狀況只須要輸入git status。

git工做區

注:每次生成版本只須要,add,而後commit便可。

6.同步本地的版本庫到託管平臺

  • 簡單的按下git push origin master便可
  • 固然這個時候咱們須要輸入帳號和密碼

同步成功的樣子

  1. 同步服務器的版本庫到本地
  2. 簡單的按下git pull origin master便可
  3. 固然這個時候咱們須要輸入帳號和密碼

注意,若是服務器的版本庫的某個文件修改了,而本地又恰好修改了,必須把本地這個文件的變動變成一個版本,而後再執行上面pull命令。(通常同步的時候,代碼合併會成功的,固然也有失敗的狀況,下面會講解合併失敗的處理方案)



相信你看了上面的教程以後,就能夠耍耍git這兇殘的工具了。前方高能預警,git高級用法來了。(若是你要求能夠應付項目,下面的忽略便可) 

  • 我不要輸密碼,我不要輸密碼,我不要輸密碼(總要的事情說三遍) 方法一:本地記住密碼,只須要執行下面的這條命令
git config --global credential.helper store 
  • 1

方法二:還記得上面咱們使用了最簡單的https地址麼,只須要換成ssh地址,可是本地須要生成一個證書(執行下面的命令,要按三次回車)

ssh-keygen -t rsa -C "你的郵箱" 
  • 1

而後打開文件(linux在~/.ssh/idrsa.pub,window在C:\Users\用戶名.ssh\idrsa.pub),而後在第三方託管平臺添加公鑰,內容就是這個文件的內容。 而後就像平時那麼操做便可。

  • 我誤刪了一個文件,我要恢復it
git 版本號 checkout -- 文件路徑 
  • 1
  • 我想嘗試文件時光機 下面的命令會完全把本地狀態變成某個版本的狀態,回退後創建新版本,再調用push命令的時候須要加上-f參數
git reset --hard 版本號 
  • 1
  • 如何玩分支的
git branch #查看本地分支 git branch -r #查看遠端分支 git branch -a #查看全部分支,包括本地和遠程的 git branch 分支名 #新建一個分支 git checkout -b 分支名 #切換到一個分支(注意,本地文件也會變成分支的當前版本的文件) git branch -d 分支名 #刪除本地分支 
  • 衝突合併

通常出現衝突,文件都會出現一堆神奇的字符,咱們這個時候只須要二選一,把不須要的字符都刪掉,而後執行add,commit命令便可解決衝突。

 

注:該教程僅僅爲了讓第一次接觸GIT的同窗快速入門而已,並不面向有經驗的同窗。

編程書籍推薦(請點擊這裏),如需留言請在公衆號留言。

相關文章
相關標籤/搜索