從0開始學Git——Git的常見操作

  • 2019 年 10 月 3 日
  • 筆記

Git常用命令

創建Git版本庫

git init [目錄]#創建目錄版本庫, 不寫的話是當前目錄 

該命令會在目錄中創建一個名為.git的隱藏目錄

文件提交

  1. 添加文件:
git add 文件名 #添加到下次commit提交的文件

已經管理過的文件可以使用 git add -u提交程式碼,這樣就不用再寫文件名了

git status #使用 git status檢查狀態:

On branch master

No commits yet

Changes to be committed

  1. 提交的程式碼

    git commit -m '注釋' # 提交目錄下的所有add的程式碼

使用 git log 可以查看提交的記錄

查看狀態

git status 
git diff 文件名 # 查看被修改改的行,

變更文件名

有這樣一個需求我們需要把test.txt改成test.md提交:

執行git commit

報一下錯誤:

On branch master
Changes not staged for commit:
deleted: test.txt

Untracked files:
test.md

no changes added to commit

意思是先要把test.txt刪除,然後再提交test.md

方式一:

  1. 提交更改後的文件

    git add test.md
  2. 刪除老文件

    git rm test.test

方式二 :

git mv test.txt test.md # 這種方法給簡單

查看git狀態:

git status

On branch master
Changes to be committed:
(use "git reset HEAD …" to unstage)

​ renamed: test.txt -> test.md

意思為test.txt重命名為test.md

查看歷史記錄

使用命令查看:

git log [--oneline] # 簡潔的看歷史記錄

–onelline : 簡潔的查看歷史記錄

-n數字: 查看最近的歷史記錄

–all : 查看所有版本分支的版本歷史

–graph: 查看整個倉庫

查看詳細資訊:

git show commit號 # commit號可以是一部分

從本地倉庫中撤銷程式碼

  • 撤銷已提交的程式碼
git reset --soft HEAD #撤銷已經commit的程式碼

–soft 比較柔和的撤銷

HEAD 撤銷最近一次提交, 也可以這樣寫:HEAD~1

  • 將文件移出暫存區

    git reset HEAD 文件名

這個撤銷請謹慎使用, 因為你可能把別人的程式碼刪掉

  • 取消add的程式碼

git checkout — .test.md

使用圖形化介面查看

gitk # 在工作目錄執行

刪除文件

先刪除本地文件

再使用命令:

git rm 文件名  git commit -m '刪除多餘文件'

忽略配置文件

在倉庫根目錄創建 .gitignore文件

在裡面配置: *.txt

分支

git  branch  分支名稱 #為當前提交創建分支  git  branch  分支名稱  commit hash#為指定前提交創建分支  git  branch   #查看分支  git branch -d 分支名稱# 刪除分支  git checkout 分支名稱 #切換分支  git checkout -b 分支名稱 #創建並切換分支

git checkout master #切換到主幹  git merge 目標分支 #將目標分支合併到當前所在分支

注意切換分支前要先commit修改

將程式碼推到遠程倉庫

git push -u origin master# 將本地master分支傳遞到遠程master上

origin 指GitHub

從遠端獲取程式碼

git clone  [email protected]:liuyanqing1023/xcEduService.git

協同工作需常用的命令

  • commit, 提交程式碼
  • pull,更新程式碼
  • push,往遠程推送程式碼

git目錄

git倉庫里有個.git文件夾

HEAD 存放當前倉庫正在工作的分支

refs

​ heads : 分支

​ tags : 標籤給commit打標籤

objects : 放的是對象

切換分支命令: git checkout master

Git對象直接的關係

有三種對象: commit, tree blob

一次提交就是一個commit

提交的樹形文件夾叫做tree

文件叫做blob, 只要文件名想通就是一個blob

  1. 設置倉庫級別的配置:

    #設置倉庫級別的配置,當然這個配置不是必須的  git config --local user.name  'admin01' #設置用戶名  git config --local user.email  '[email protected]'#設置email  #在倉庫中使用: git config --local --list 檢查是否創建成功  

    配置的原則是,範圍小的有限範圍大的

歷史庫和暫存區

執行 git add files 把程式碼放到待提交列表(暫存區)

執行 git commit 把程式碼放到本地倉庫(工作區)

執行git push把程式碼放到遠程倉庫


**** 碼字不易如果對你有幫助請給個關注****

**** 愛技術愛生活 QQ群: 894109590****