天天看點

git的使用大全 git的曆史 git的基本操作 GitHub tortoisegit 等 第一部分

現在插播一個git的操作部落格

從git是什麼 git的安裝 使用什麼的 開始寫起 篇幅會非常長 但是git說到底就是一個代碼托管倉庫 其中常用的重點會着重标出來

其實想學git的同學應該也知道git就是代碼托管倉庫 然後是平時用來協作開發的 那既然是這樣 電腦不可能都有網呀 是以倉庫會有本地倉庫和遠端倉庫 

是以用git進行團隊開發 流程一般是這樣的 是以我們的學習 肯定是了解完git後 學習在git中完成這些操作的指令是什麼 然後就是熟練的使用這些指令(代碼托管倉庫不止git一個呀 比如svn什麼的 我大學就了解過)

1.從遠端倉庫中克隆或拉取代碼到本地倉庫(clone/pull)

2.從本地進行代碼修改

3.在送出前先将代碼送出到暫存區

4.送出到本地倉庫。本地倉庫中儲存修改的各個曆史版本

5.修改完成後,需要和團隊成員共享代碼時,将代碼push到遠端倉庫

好了 開始正文吧

版本管理工具的特性一般有

1、記錄曆史版本、回退曆史版本

2、團隊開發中,友善合并代碼

版本控制工具用svn和git來說一下

git的使用大全 git的曆史 git的基本操作 GitHub tortoisegit 等 第一部分

  svn的缺點其實也是git的優勢

git的使用大全 git的曆史 git的基本操作 GitHub tortoisegit 等 第一部分

git的安裝 在網上搜尋git 然後去官網下載下傳自己電腦對應的版本 一步一步的安裝即可 我搜了以下 網站是 https://git-scm.com/ 下載下傳頁面是 https://git-scm.com/downloads (restful風格的網址 很舒服)

git的使用大全 git的曆史 git的基本操作 GitHub tortoisegit 等 第一部分

  這篇部落格寫的時候 版本是 2.31.1

git是指令行操作 也有可視化的操作 比如 tortoisegit這個工具 網上搜尋就行 網址是 https://tortoisegit.org/ 下載下傳頁面是 https://tortoisegit.org/download/ 下載下傳對應版本的就行 tortoisegit提供了中文漢化包 下載下傳對應的就行

先安裝git 路徑可以改自己想要的路徑 然後安裝tortoisegit這個工具 雖然指令行高大上 但是 能可視化提高效率還是可視化占優勢對吧 然後點選安裝你下載下傳的漢化包 也是下一步下一步就行

如果git的路徑改了 那麼安裝tortoisegit這個工具的時候 要把安裝步驟中git的啟動bin路徑改一下 這點要注意 

如果都完成後 那麼 在檔案夾中右擊應該是這樣的 

git的使用大全 git的曆史 git的基本操作 GitHub tortoisegit 等 第一部分
git的使用大全 git的曆史 git的基本操作 GitHub tortoisegit 等 第一部分

然後進入tortoisegit的設定 把中文改一下 然後再重新進入一次 語言就改成中文啦

先說下git的工作流程 使用對應的指令也就是完成git的一次工作流程

git的使用大全 git的曆史 git的基本操作 GitHub tortoisegit 等 第一部分

遠端倉庫在遠端 比如GitHub 本地倉庫 工作區 和  暫存區都是在我們的本機上 是以我們先從本機操作開始學習git

我們在本地工作區 就是寫代碼的地方寫好代碼 要先送出到本地的暫存區 然後送出到本地倉庫 在 push到遠端

下面是例子

首先建立一個檔案夾 然後右擊 在這個檔案夾下建立一個版本庫

git的使用大全 git的曆史 git的基本操作 GitHub tortoisegit 等 第一部分

 比如說我是在gittest這個檔案夾下測試 

git的使用大全 git的曆史 git的基本操作 GitHub tortoisegit 等 第一部分

 建立完成就會這樣 (這是一個隐藏的檔案夾 需要打開設定 檢視隐藏的項目才行)

工作區的意思就是目前.git檔案夾所在的檔案夾 就是我們的工作區

比如說我們建立一個辭職申請.docx

git的使用大全 git的曆史 git的基本操作 GitHub tortoisegit 等 第一部分

 接下來要把這個檔案送出到暫存區

我們使用tortoisegit進行操作 對這個檔案進行右擊 或者檔案夾空白處右擊都行 找到 tortoisegit這個工具的添加選項

git的使用大全 git的曆史 git的基本操作 GitHub tortoisegit 等 第一部分

 然後點選添加 

git的使用大全 git的曆史 git的基本操作 GitHub tortoisegit 等 第一部分

 就完成了

這就已經添加到暫存區了 一般來說做完操作的檔案圖示會有個變化 比如添加完 檔案圖示上有個藍色的+号 但是我的沒有 因為我電腦裝完沒有重新開機 如果你們重新開機了 應該會有的

如果你沒點确定 點的是送出 那麼會把這個暫存區的檔案再次送出到本地倉庫

接下來 我們再把這個暫存區的檔案送出到本地倉庫 同樣是右鍵 

git的使用大全 git的曆史 git的基本操作 GitHub tortoisegit 等 第一部分

 點選送出到master master就是主分支的意思 因為一個項目開發可能是多個分支同時開始 最後合并的 首次會讓你填寫名稱和郵箱

git的使用大全 git的曆史 git的基本操作 GitHub tortoisegit 等 第一部分

 然後會讓你填寫日志資訊 這個是一定要填的 比如你寫了什麼代碼 代碼什麼功能 要說清楚 

git的使用大全 git的曆史 git的基本操作 GitHub tortoisegit 等 第一部分

 這就完成了推送到本地倉庫 此時點選關閉就關閉了 點選推送那麼就是推送到遠端倉庫

好了 大家可以多試試這個過程 工作區 ---》暫存區---》本地倉庫

git的使用大全 git的曆史 git的基本操作 GitHub tortoisegit 等 第一部分

 比如我又添加 送出了一個辭職申請第二版

建立倉庫的方式不止這一種 使用git gui也可以建立

git的使用大全 git的曆史 git的基本操作 GitHub tortoisegit 等 第一部分

 建立一個檔案夾 然後點選git gui here 按照提示點選 就建立了一個倉庫了

其次我們也可以使用指令行來建立試試

還是建立一個檔案夾 然後在檔案夾下面右擊 點選git bash here 

git的使用大全 git的曆史 git的基本操作 GitHub tortoisegit 等 第一部分
git的使用大全 git的曆史 git的基本操作 GitHub tortoisegit 等 第一部分

 指令是 git init 

就好了 我們要不就用可視化工具 要麼就指令行 先把工具用熟 再去學指令

回到剛剛那個檔案夾 我又建立了一個檔案 辭職申請.txt  然後添加到暫存區 送出到本地檔案

git的使用大全 git的曆史 git的基本操作 GitHub tortoisegit 等 第一部分

在本地倉庫已經有的情況下 怎麼更新呢

比如在辭職申請.txt 裡面添加了一句話

git的使用大全 git的曆史 git的基本操作 GitHub tortoisegit 等 第一部分

 這是我們修改了一個檔案 我們隻要再送出到本地倉庫就行了

git的使用大全 git的曆史 git的基本操作 GitHub tortoisegit 等 第一部分
git的使用大全 git的曆史 git的基本操作 GitHub tortoisegit 等 第一部分
git的使用大全 git的曆史 git的基本操作 GitHub tortoisegit 等 第一部分

那麼我們就把更新内容送出到了本地倉庫 為什麼這裡不添加到暫存區 因為這個檔案之前已經被添加到暫存區 然後被送出到本地倉庫 是以這個檔案已經被git接管了 是以直接送出到本地倉庫即可

我電腦沒重新開機 是以檔案圖示沒改變 一般來說 圖示狀态有

git的使用大全 git的曆史 git的基本操作 GitHub tortoisegit 等 第一部分

比如建立了一個檔案 這個檔案還沒有被納入git版本控制 而隻要送出到了暫存區 那麼都屬于第二種 被納入到了git的版本控制 是以接下來隻要送出到本地倉庫即可

現在來看一下怎麼對比差異

我們對着辭職申請.txt 右擊 用tortoisegit工具檢視對比差異 

git的使用大全 git的曆史 git的基本操作 GitHub tortoisegit 等 第一部分

左邊就是本地倉庫中的版本 而右邊是我剛剛添加了一行字 是以是目前的工作區版本

檢視日志 我們要看一下送出過的日志

我們在檔案夾右擊 通過tortoisegit工具 檢視日志 

git的使用大全 git的曆史 git的基本操作 GitHub tortoisegit 等 第一部分

  就是這樣 剛剛操作過的日志在這裡 我們可以把滑鼠移到操作圖示上 

git的使用大全 git的曆史 git的基本操作 GitHub tortoisegit 等 第一部分

  也可以看到這個圖示的意思是什麼

沒有送出到暫存區的檔案沒有被納入到git版本管理 是以是不會顯示資訊的

知道了檢視曆史版本 那麼怎麼回退到曆史版本呢

還是進入到檢視日志界面 在想要退回的版本上點選 

git的使用大全 git的曆史 git的基本操作 GitHub tortoisegit 等 第一部分

 比如我想回到上個版本 那麼 點選重置master到此版本 

git的使用大全 git的曆史 git的基本操作 GitHub tortoisegit 等 第一部分

這裡選擇硬重置 就是會删除一些這個版本之後的一些檔案什麼的

git的使用大全 git的曆史 git的基本操作 GitHub tortoisegit 等 第一部分

 這就完成了 再打開看一下 

git的使用大全 git的曆史 git的基本操作 GitHub tortoisegit 等 第一部分

 此時檔案内容回去了 

再看一下日志 

git的使用大全 git的曆史 git的基本操作 GitHub tortoisegit 等 第一部分

  日志變成這樣了 也就是版本回退了

删除操作 删除也是一樣的 要把删除操作送出到本地倉庫 才算是納入了git的版本控制 才算是真正的删除

git的使用大全 git的曆史 git的基本操作 GitHub tortoisegit 等 第一部分

 比如我删除了那個檔案 然後右鍵送出到master 就會出現這個 

git的使用大全 git的曆史 git的基本操作 GitHub tortoisegit 等 第一部分

到這裡 才算是删除了 可以看看日志 也是有這個操作的 

git的使用大全 git的曆史 git的基本操作 GitHub tortoisegit 等 第一部分

删除也可以保留本地檔案 但是删除本地倉庫中檔案 意思也就是說 我不想要這個檔案被版本控制了 但是我還想在硬碟中留下這個檔案 那麼就

git的使用大全 git的曆史 git的基本操作 GitHub tortoisegit 等 第一部分

 在那個檔案右擊删除并保留本地副本 當然了 做完這個操作 還是要送出到本地倉庫才能生效的

git的使用大全 git的曆史 git的基本操作 GitHub tortoisegit 等 第一部分

誤删除也是可以恢複的 但是前提是要被納入git的版本控制 比如 誤删了 辭職申請.txt 那麼右鍵點選還原即可

git的使用大全 git的曆史 git的基本操作 GitHub tortoisegit 等 第一部分
git的使用大全 git的曆史 git的基本操作 GitHub tortoisegit 等 第一部分
git的使用大全 git的曆史 git的基本操作 GitHub tortoisegit 等 第一部分

這裡說一下忽略送出 因為一個項目裡面的檔案很多 有許多檔案是不需要送出的 是以可以給git添加一些忽略資訊什麼的

git的使用大全 git的曆史 git的基本操作 GitHub tortoisegit 等 第一部分

 比如說配置.iinn 這個檔案是不需要被送出的 

git的使用大全 git的曆史 git的基本操作 GitHub tortoisegit 等 第一部分

 将iinn結尾的都添加到忽略清單 

git的使用大全 git的曆史 git的基本操作 GitHub tortoisegit 等 第一部分
git的使用大全 git的曆史 git的基本操作 GitHub tortoisegit 等 第一部分

此時會産生上述的檔案 檔案内容如上

此時 我們再添加送出 git都不會把這種檔案納入版本管理了

這個部落格寫的實在是太長了 是以還是分成幾個部分吧 下一個部分是分支管理之類的