Git + VSCode相關(guān)操作

新建一個Git倉庫

  1. $git init :初始化一個倉庫

添加文件到倉庫中:

  1. $git add <file> : 可以反復(fù)多次使用,添加多個文件
  2. $git commit -m <message> : 全部提交給倉庫

查看當(dāng)前的狀態(tài):

  1. $git status : 查看當(dāng)前倉庫的狀態(tài),包括已經(jīng)修改了的還未提交到倉庫中的

跟工作區(qū)和版本庫都會有對比!

  1. $git diff : 查看當(dāng)前做了哪些修改(指的是在本地修改的和暫存區(qū)的不同之處

版本回退(是從commit記錄中回退):

  1. $git log : 查看修改歷史記錄(commit日志)

英文狀態(tài)下按 Q 退出查看

  1. $git log --pretty=oneline : 可以配合VSCode來查看Git history
  2. $git reset --hard HEAD^ :回退到上一個版本
  3. $git reset --hard id號 :回退到指定版本
  4. $git reflog :查看所有的commit記錄及其id號

工作區(qū)和暫存區(qū)

工作區(qū)就是電腦中能看到的目錄,比如Git文件夾

版本庫

三個區(qū).jpg

$git add 是將文件提交到暫存區(qū)

$git commit 是將暫存區(qū)中方的所有內(nèi)容提交到當(dāng)前分支

創(chuàng)建Git版本庫時,Git自動創(chuàng)建了一個master分支,所以git commit 都是提交到master分支上
每次commit都是把緩存區(qū)中的所有內(nèi)容提交到倉庫中

撤銷修改

  1. $git checkout -- readme.txt 把文件在工作區(qū)的修改全部撤銷。
    讓文件回到最近一次git commit或是git add時的狀態(tài)

  2. $git reset HEAD <file> 可以把暫存區(qū)的修改撤銷掉,重新放回工作區(qū)

暫存區(qū)回到最近一次提交,工作區(qū)還是已經(jīng)修改過的,$git diff 可以查出區(qū)別
也就是說暫存區(qū)是干凈的,工作區(qū)有修改

  1. 然后接著第二步, $git checkout -- <file> 就可以撤銷工作區(qū)的修改
    至此,整個世界都安靜了!

這時候,$git diff 和 $git status 都看不到修改了!

  1. 就算把不該提交的東西commit到了版本庫中,也是可以回退的,前提是沒有提交到遠(yuǎn)程倉庫中!
版本回退小結(jié).jpg

刪除文件

  1. $git checkout -- <file> 在工作區(qū)中刪除了文件,但是是誤刪,可以通過前邊的命令進(jìn)行恢復(fù)

其實就是撤銷修改

  1. $rm <file> 在工作區(qū)刪除一個文件

可以用 $git status 和 $git diff 查看到當(dāng)前的刪除記錄

  1. $git rm <file> 從版本庫中刪除文件
    接著$git commit -m <說明> 就行了

git查看用戶信息

  1. $git config user.name 查看用戶名
  2. $git config user.email 查看郵箱
  3. $git config --global user.name 'CYX' 修改用戶名
  4. $git config --global user.email "2344343332@qq.com" 修改郵箱

連接遠(yuǎn)程倉庫(Github、code.aliyun等)

  1. 本地倉庫與遠(yuǎn)程倉庫之間的傳輸是通過SSH加密的

因為Github需要識別出你推送的提交確實是你推送的,而不是別人冒充的

  1. git remote add origin git@github.com:XiaohuiSu/test.git

將本地倉庫與遠(yuǎn)程倉庫進(jìn)行關(guān)聯(lián)

  1. 接下來就可以用VScode進(jìn)行了
  1. 暫存所有更改 : 將工作區(qū)的更改add到緩存區(qū) 等同于 $git add xxx
  2. 放棄所有更改 : 恢復(fù)工作區(qū)或是緩存區(qū)
  3. 可以用VScode中的命令終端進(jìn)行回退

從遠(yuǎn)程倉庫clone

  1. 在github上新建一個repository
  2. $git clone git@github.com:XiaohuiSu/xxx.git

clone到當(dāng)前目錄下,文件夾名與倉庫名相同

分支

  1. $git branch dev 創(chuàng)建一個分支
  2. $git checkout dev 切換到創(chuàng)建的分支
  3. $git branch 查看當(dāng)前的分支
  4. $git merge dev 將dev分支的工作成果合并到master
  5. $git branch -d dev 刪除分支

沖突

master與分支發(fā)生沖突,修改了同一個文件的同一個位置,必須手動修改沖突,然后add并且commit

可以用VSCode進(jìn)行比對

多人協(xié)作

$git remote -v 顯示連接的遠(yuǎn)程庫 (如果沒有推送權(quán)限,就看不到Push地址)
$git push origin dev 推送分支,若遠(yuǎn)程倉庫中沒有該分支,則會新建一個

分支與沖突的處理.jpg

注明:本文是作者從廖雪峰Git教程吸收消化所得,詳細(xì)可見廖雪峰Git教程

最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請聯(lián)系作者
【社區(qū)內(nèi)容提示】社區(qū)部分內(nèi)容疑似由AI輔助生成,瀏覽時請結(jié)合常識與多方信息審慎甄別。
平臺聲明:文章內(nèi)容(如有圖片或視頻亦包括在內(nèi))由作者上傳并發(fā)布,文章內(nèi)容僅代表作者本人觀點,簡書系信息發(fā)布平臺,僅提供信息存儲服務(wù)。

相關(guān)閱讀更多精彩內(nèi)容

  • Git 基礎(chǔ) 基本原理 客戶端并不是只提取最新版本的文件快照,而是把代碼倉庫完整的鏡像下來。這樣一來,任何一處協(xié)同...
    __silhouette閱讀 16,203評論 5 147
  • Git 命令行學(xué)習(xí)筆記 Git 基礎(chǔ) 基本原理 客戶端并不是只提取最新版本的文件快照,而是把代碼倉庫完整的鏡像下來...
    sunnyghx閱讀 4,155評論 0 11
  • Git常用語法 [TOC] Git簡介 描述 ? Git(讀音為/g?t/。)是一個開源的分布式版本控制系統(tǒng),...
    君惜丶閱讀 3,953評論 0 13
  • 1,查看所有遠(yuǎn)程分支:%git branch -r 2, 拉取遠(yuǎn)程分支并創(chuàng)建本地分支git checkout -...
    will666閱讀 2,196評論 0 18
  • ?哇的一身哭聲,寶媽小吳從睡夢中悠悠轉(zhuǎn)醒。 孩子可能是餓了,小吳顧不得其他,披了件外套就下了床。已經(jīng)是數(shù)九隆冬的天...
    群美育兒閱讀 700評論 0 0

友情鏈接更多精彩內(nèi)容