一去团、工作區(qū)抡诞、版本庫和暫存區(qū)的概念理解
工作區(qū):就是你在電腦里能看到的目錄,比如我的learngit文件夾就是一個(gè)工作區(qū)土陪。
版本庫:工作區(qū)有一個(gè)隱藏目錄.git昼汗,這個(gè)不算工作區(qū),而是Git的版本庫鬼雀。
暫存區(qū):Git的版本庫里存了很多東西顷窒,其中最重要的就是稱為stage(或者叫index)的暫存區(qū),還有Git為我們自動(dòng)創(chuàng)建的第一個(gè)分支master源哩,以及指向master的一個(gè)指針叫HEAD鞋吉。
前面講了我們把文件往Git版本庫里添加的時(shí)候出刷,是分兩步執(zhí)行的:
- 第一步是用git add把文件添加進(jìn)去,實(shí)際上就是把文件修改添加到暫存區(qū)坯辩;
- 第二步是用git commit提交更改馁龟,實(shí)際上就是把暫存區(qū)的所有內(nèi)容提交到當(dāng)前分支(本地版本庫)。
- 第三步是用git push上傳文件漆魔,實(shí)際上就是把當(dāng)前分支的內(nèi)容提交到git服務(wù)器(將本地版本庫的分支推送到遠(yuǎn)程服務(wù)器上對(duì)應(yīng)的分支)坷檩。
因?yàn)槲覀儎?chuàng)建Git版本庫時(shí),Git自動(dòng)為我們創(chuàng)建了唯一一個(gè)master分支改抡,所以矢炼,現(xiàn)在,git commit就是往master分支上提交更改阿纤。
可以簡單理解為句灌,需要提交的文件修改通通放到暫存區(qū),然后欠拾,一次性提交暫存區(qū)的所有修改胰锌。
二、add藐窄、 stash 區(qū)別
- git add是針對(duì)新建文件
- git stash是針對(duì)被修改文件
- 執(zhí)行add命令時(shí)资昧,可自動(dòng)將文件提交到暫存區(qū)
- 執(zhí)行stash命令時(shí),若該文件是新建文件卻沒有add荆忍,則stash無效格带,若該文件不是新建文件,則stash可自動(dòng)將文件提交到暫存區(qū)
三刹枉、diff叽唱、reset
相關(guān)參考:
使用git和github管理自己的項(xiàng)目---基礎(chǔ)操作學(xué)習(xí)
廖雪峰Git教程(推薦!)
git開發(fā)經(jīng)驗(yàn)