天天看點

git的一些總結一、git的簡單了解二、如何使用三、操作(回退、工作區和暫存區stage、管理、撤銷、删除)--modified被修改

一、git的簡單了解

世界上最先進的分布式版本控制系統(沒有之一);

集中式版本控制系統最大的毛病就是必須聯網才能工作;

和集中式版本控制系統相比,分布式版本控制系統的安全性要高很多,因為每個人電腦裡都有完整的版本庫,某一個人的電腦壞掉了不要緊,随便從其他人那裡複制一個就可以了。而集中式版本控制系統的中央伺服器要是出了問題,所有人都沒法幹活了;

Git極其強大的分支管理,把SVN等遠遠抛在了後面;

二、如何使用

1、安裝(安裝完成後,在開始菜單裡找到“Git”->“Git Bash”,蹦出一個類似指令行視窗的東西,就說明Git安裝成功了)。

2、設定,在指令行輸入如下;

$ git config --global user.name "Your Name"
$ git config --global user.email "[email protected]"
           

注意

git config

指令的

--global

參數,用了這個參數,表示你這台機器上所有的Git倉庫都會使用這個配置,當然也可以對某個倉庫指定不同的使用者名和Email位址。

3、建立版本庫(又名倉庫,英文名repository,也可以了解為目錄,目錄裡面的所有檔案都可以被Git管理起來,每個檔案的修改、删除,Git都能跟蹤,以便任何時刻都可以追蹤曆史,或者在将來某個時刻可以“還原”);

  • 建立一個空目錄:mkdir learngit && cd learngit;
  • 初始化一個Git倉庫,使用

    git init

    指令把這個目錄變成Git可以管理的倉庫(多了一個.git檔案是git來跟蹤管理版本庫的,沒有的話ls-ah 指令可以看見);
  • 添加檔案到git倉庫分兩步;第一步:使用指令

    git add <file>

    ,注意,可反複多次使用,添加多個檔案;第二步,使用指令

    git commit -m "說明"

    ,完成。

三、操作(回退、工作區和暫存區stage、管理、撤銷、删除)--modified被修改

Git管理的是修改,而不是檔案呢

從來沒有被添加過的話,它的狀态是

Untracked files

紅色代表工作區  綠色代表暫存區  

vi readme.txt 進入編輯狀态,怎麼退出編輯呢

head表示最新版本

1、版本回退

怎麼檢視txt檔案内容

mkdir 檔案夾 && cd 檔案夾

git init 初始化

git add file 檔案名   添加到倉庫

git commit -m "說明"  送出到倉庫

git log  檢視送出日志

git log --pretty=oneline 檢視日志顯示一行

git reset --hard 版本号 (git reset --hard HEAD^ 回到上個版本)               --復原到某個版本 

git reflog     重回未來版本日志

git status  檢視狀态在哪個區,哪些未送出等

git diff HEAD -- readme.txt

指令可以檢視工作區和版本庫裡面最新版本的差別(如果不

add

到暫存區,那就不會加入到

commit

使用場景

場景1:當你改亂了工作區某個檔案的内容,想直接丢棄工作區的修改時,用指令

git checkout -- file

場景2:當你不但改亂了工作區某個檔案的内容,還添加到了暫存區時,想丢棄修改,分兩步,第一步用指令

git reset HEAD file

,就回到了場景1,第二步按場景1操作。-----因為

git reset HEAD file

可以把暫存區的修改撤銷掉(unstage),重新放回工作區,然後工作區再恢複到最新版本庫

場景3:已經送出了不合适的修改到版本庫時,想要撤銷本次送出,直接版本回退,不過前提是沒有推送到遠端庫。

删除檔案

del  ***.txt   window下删除txt檔案

1.現在你有兩個選擇,一是确實要從版本庫中删除該檔案,那就用指令

git rm

删掉,并且

git commit

$ git rm test.txt
$ git commit -m "remove test.txt"
           

2. 另一種情況是删錯了,因為版本庫裡還有呢,是以可以很輕松地把誤删的檔案恢複到最新版本:

$ git checkout -- test.txt