Git基本用法,小白入門

不落不息發表於2020-09-29
  • 第一步 初始化git倉儲(在專案目錄右鍵開啟 git bash)

    • 命 令:git init
    • 會有.git隱藏檔案, .git對我們專案程式碼進行備份
    • 若是不小心關掉git bash視窗,可在還有.git目錄下重新開啟
  • 第二步:設定當前使用者名稱

    • 命 令:
      $ git config --global user.name “yourname”
      $ git config --global user.email “your@foxmail.com”
    • 沒有警告就是完成
  • 第三步:將程式碼放到.git倉庫

    • 命 令:
    • $ git add ./readme.txt
      • add後跟檔案目錄,這裡好比把程式碼放到門口(暫存區),
    • $ git add ./
      • 這樣可直接將當前資料夾中的修改過的或者新新增的檔案全部提交
    • $ git commit -m “這個檔案的說明”
      • 將程式碼送入.git倉庫內(版本庫),工作區指當前檔案
      • 不加-m,會進入vi編輯器
  • 第四步:檢視當前狀態

    • 命 令: $ git status
      • add之後在這裡插入圖片描述
      • commit之後在這裡插入圖片描述
      • 修改了檔案之後在這裡插入圖片描述
  • 第五步:一次性提交到.git倉庫

    • 命 令:$ git commit --all -m “說明文字”
      • –all:表示將所有修改的檔案提交到版本庫
  • 第六步:檢視提交日誌

    • 命 令:
      • $ git log
        • 檢視歷史提交日誌
      • $ git log --oneline
        • 檢視簡潔版日誌
  • 第七步:版本回退

    • 命 令:
      • $ git reset --hard Head~0
        • 版本回退到上0個
      • $ git reset --hard Head~1
        • 版本回退到上1個,以此類推
      • 指定版本號回退:
        $ git reset --hard 版本號
        • 可以切換到指定的版本,不管前後
          在這裡插入圖片描述
    • 檢視所有提交的版本號:$ git reflog
  • 第八步:建立分支,檢視分支

    在這裡插入圖片描述

    • 將未完成的任務提交到Name這個分支,其他操作一致。在分支中可檢視之前在主分支中的操作。
    • git branch 輸出的分支中,帶星號的分支為當前分支
      在這裡插入圖片描述
      • 融合時需要指定分支名
    • 刪除分支
      • $ git branch -d Name
        • 不能在當前分支刪除當前分支
    • 如果已在分支中完成了一個任務,忘記合併,又在主分支master中做了一些操作,此時合併會報衝突,這時需要到檔案中手動修改,然後提交。
  • 提交到github上面(git != github)

    • 操 作:在github介面,點選 + ,選擇new repository,在repository name框中寫入新建倉庫名字,選中public,點選建立,待建立完成後,選中HTTPS

      • 在這裡插入圖片描述
    • 命 令: $ git push https://github.com/Chen-free/yes.git master

      • 如果是初次上傳會彈出輸出GitHub使用者名稱和密碼的彈窗。上傳完畢後,重新整理GitHub專案頁面,出現提交的檔案則說明成功。
  • 從GitHub上獲取專案檔案

    • 法一:
      • step1:在電腦新建一個檔案
      • step2:用 git init初始化該檔案
      • step3:獲取需要下載的,GitHub上檔案的HTTPS地址
      • step4:在git bash視窗輸入命令 :git pull https://github.com/Chen-free/yes.git master
      • 下載完成後,git log命令檢視後,可按q鍵退出
    • 法二:
      • 新建一個檔案,在當前檔案開啟git bash,
      • $ git clone https://github.com/Chen-free/yes.git
    • 兩種方法區別:
      • pull多次執行不會覆蓋,clone多次執行會覆蓋本地內容
  • ssh方法上傳到GitHub

    • https的方式對於讓他人往自己倉庫裡傳東西並不安全方便,需要給對方自己的使用者名稱和密碼
    • 生成公鑰和私鑰
    • 在任意目錄下開啟git命令列
    • $ ssh-keygen -t rsa -C “xxx@foxmail.com”
    • 按下回車之後,根據提示直接按回車,或者y
    • 完成後,在C:\Users\xxx.ssh
      • xxx:指使用者名稱

      • 雙擊開啟.pub字尾名檔案,直接ctrl+a ctrl+c,不改動一點在這裡插入圖片描述

      • 點選GitHub網站你的頭像在這裡插入圖片描述

      • 選中setting,之後在這裡插入圖片描述

      • 在這裡插入圖片描述

      • $ git push [ssh地址] master

        • 將本地檔案上傳到GitHub(相當於遠端伺服器)
      • $ git pull [ssh地址] master

        • 在new repository完,選中SSH就可以獲取ssh型別地址
    • 如果對方提交修改後的檔案到伺服器,本地也做了修改,此時想push檔案到伺服器將會報錯
      • 先pull下伺服器的檔案,會出現 在這裡插入圖片描述
      • 然後開啟本地檔案會出現在這裡插入圖片描述
        • HEAD:指本地
        • 一串亂碼:是自動生成的識別符號,是伺服器修改的部分。
        • 這個時候就需要手動修改,然後提交到本地倉庫,最後push到伺服器(與分支合併之前又做修改的處理方法相同)
    • 當前目錄下,push、pull簡寫
      • $ git remote add varName https://github.com/Chen-free/yes.git
        • remote:遠端
        • varName:相當於https://github.com/Chen-free/yes.git地址了,一個變數名
      • $ git [push/pull] varName master
        • 之後變數名可以指代地址,但只能在當前專案
      • $ git push varName -u master
        • -u:將 本地master與遠端master關聯
      • $ git push
        • 關聯之後,就可以直接這樣使用,git pull同理
    • 換了一個目錄,-u 可能不起作用,這時候先執行 pull,把最新版本獲取下來,然後再使用 -u,或者嘗試這樣寫:git push -u varName master

相關文章