Git學習 一 初始化倉庫 新增檔案 版本回退

2022-07-10 10:03:18 字數 2992 閱讀 4068

目錄

本文使用的命令列工具為cmder,部分顯示可能和cmd不同,但結果是一樣的

初始化乙個git倉庫,使用git init命令。在cmder軟體下初始化git後,目錄後面會多出這麼一串字元(master -> origin)

切換到非git倉庫路徑時,後面是沒有這串字元的

會在當前目錄下生成乙個.git資料夾

若想取消初始化,刪除改資料夾即可rm -rf .git,刪除後git目錄後面的 (master -> origin) 也不見了

首先建立乙個文字檔案

vim test.txt
內容為:

hello git!
這裡發現,當git倉庫內增加了檔案時,cmder目錄後面顯示的字串顏色發生了變化

接下來新增到git倉庫,分兩步:

使用命令git add,注意,可反覆多次使用,新增多個檔案;

使用命令git commit -m,完成。(message為提交檔案的描述資訊,以便獲知變更內容)

如圖,提交成功,同時在cmder軟體下,提交後目錄名後面的字串顏色變回原來的白色

git status命令可以讓我們時刻掌握倉庫當前的狀態

修改檔案資訊,第二行新增內容

this twoline
然後執行git status檢視倉庫狀態

然後將檔案改動提交,再次檢視

這裡可以發現cmder這個軟體會自動判斷git倉庫的檔案狀態,在提交後目錄後面的字串又變回了無變化的白色

如果想檢視具體修改了什麼內容需要用git diff這個命令

這裡沒有顯示資訊是因為我們已經提交過了

進入檔案將剛才加入的第二行內容刪除後再次檢視

前面有個-表示第二行的內容被刪除

在git中,我們可以用git log命令檢視歷史版本資訊

git log命令顯示從最近到最遠的提交日誌

圖中一大串類似97d9e...的是commit id(版本號),是乙個sha1計算出來的乙個非常大的數字,用十六進製制表示

這裡如果嫌輸出資訊太多,可以試試加上--pretty=oneline引數,每次提交只顯示一行內容

這裡我們先把剛剛刪除的操作提交再加上--pretty=oneline引數檢視:

head指的是最近一次的提交,所以這裡head變成了剛剛的這次提交

同時,上乙個版本就是head^,上上乙個版本就是head^^,當然往上100個版本寫100個^太過麻煩,所以寫成head~100

回退版本之前我們先隨便新增一些內容在test.txt檔案中提交:

**git reset 用法如下:**

用法:git reset [--mixed | --soft | --hard | --merge | --keep] [-q] [《提交》]

或:git reset [-q] [《樹或提交》] [--] 《路徑》...

或:git reset --patch [《樹或提交》] [--] [《路徑》...]

-q, --quiet 安靜模式,只報告錯誤

--mixed 重置 head 和索引

--soft 只重置 head

--hard 重置 head、索引和工作區

--merge 重置 head、索引和工作區

--keep 重置 head 但儲存本地變更

--recurse-submodules[=]

control recursive updating of submodules

-p, --patch 互動式挑選資料塊

-n, --intent-to-add 將刪除的路徑標記為稍後新增

初始化Git倉庫

cd srv mkdir gitrepo chown git git gitrepo cd gitrepo 建立乙個空的git倉庫,伺服器上的git倉庫通常都以.git結尾 git init bare project.git 將倉庫所屬使用者改為git chown r git git project...

git 初始化倉庫

1.git clone 從遠端倉庫轉殖下來 2.git add 新增所有檔案到本地倉庫 3.git commit m info 提交到本地倉庫 4.git push 推送到遠端分支1.mkdir 2.cd 3.git init 初始化當前目錄為git可管理的目錄 4.touch readme.md ...

建立git倉庫和初始化倉庫

1 建立版本庫 什麼是版本庫呢?版本庫又名倉庫,英文名repository,你可以簡單理解成乙個目錄,這個目錄裡面的所有檔案都可以被git管理起來,每個檔案的修改 刪除,git都能跟蹤,以便任何時刻都可以追蹤歷史,或者在將來某個時刻可以 還原 所以,建立乙個版本庫非常簡單,首先,選擇乙個合適的地方,...