1. 程式人生 > 其它 >Git基礎學習

Git基礎學習

技術標籤:Git

git基礎

建立版本庫

初始化目錄變成Git可以管理的倉庫:

git init

把檔案t1.txt新增到倉庫:

git add t1.txt

把檔案提交到倉庫

git commit -m "說明註釋"
  • 可以多次add,統一commit
  • Git命令必須在Git倉庫目錄內執行(git init除外),在倉庫目錄外執行是沒有意義的。
  • 新增某個檔案時,該檔案必須在當前目錄下存在,用ls或者dir命令檢視當前目錄的檔案,看看檔案是否存在,或者是否寫錯了檔名。

基礎操作

檢視倉庫狀態

git status

檢視檔案改動內容

git diff t1.txt

檢視修改日誌

git log

檢視簡單版修改日誌

git log --pretty=oneline

在這裡插入圖片描述

前面十六進位制資料表示的是commit id(版本號)

版本回退

HEAD表示當前版本,上一個版本是HEAD^,上上版本是HEAD^^,或者可以寫為HEAD~2

版本回退可以用

git reset --hard HEAD^

返回到最新版本可以用

git reset --hard <版本號前幾位(至少四位)>

如果不記得最新的版本號,可以用下面的命令查詢歷史中自己輸入的命令

git reflog

撤銷修改

  • 當你改亂了工作區某個檔案的內容,想直接丟棄工作區的修改時,用命令

    git checkout -- file
    

    git checkout其實是用版本庫裡的版本替換工作區的版本,無論工作區是修改還是刪除,都可以“一鍵還原”。

  • 當你不但改亂了工作區某個檔案的內容,還新增到了暫存區時,想丟棄修改,分兩步,第一步用命令

    git reset HEAD <file>
    

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

  • 已經提交了不合適的修改到版本庫時,想要撤銷本次提交,參考版本回退一節,不過前提是沒有推送到遠端庫。

刪除檔案

  1. git rm t1.txt
    
  2. git commit -m "delete t1.txt"
    

遠端倉庫

github配置公鑰

  1. 建立SSH Key,在使用者主目錄下,找到.ssh目錄(應該是隱藏目錄)

    ssh-keygen -t rsa -C "[email protected]"
    

    會生成id_rsa id_rsa.pub檔案。其中id_rsa是私鑰,自己儲存;id_rsa.pub是公鑰。

  2. 登陸github,開啟“Account settings”,“SSH Keys”頁面:然後點“Add SSH Key”,填上任意Title,在Key文字框裡貼上id_rsa.pub檔案的內容。

新增遠端庫

建立新倉庫
在這裡插入圖片描述

  1. 將本地倉庫與遠端倉庫關聯,遠端倉庫命名為origin

    git remote add origin [email protected]:zhm-super/gitlearn.git
    
  2. 將本地倉庫的內容推送到遠端庫上,加上-u引數,Git不但會把本地的master分支內容推送的遠端新的master分支,還會把本地的master分支和遠端的master分支關聯起來,便於後續推送簡化命令

    git push -u origin master
    
  3. 後續修改可以通過下面的命令將本地master分支的最新修改推送至github

從遠端庫克隆

git clone <倉庫地址>

git clone [email protected]:zhm-super/gitlearn.git

分支管理

建立與合併分支

檢視分支

git branch

建立分支

git branch <name>

切換分支

git switch <name>    或     git checkout <name>

建立+切換分支

git switch -c <name>    或    git checkout -b <name>

合併某分支到當前分支

git merge <name>

刪除分支

git branch -d <name>

遠端推送和抓取

檢視遠端庫

git remote

檢視遠端庫詳細資訊

git remote -v

推送分支

將本地master分支推送到遠端origin分支

git push origin master

抓取分支

git pull