Git 是什么宝剖?
作為程序員,被產(chǎn)品要求加需求歉甚,砍需求是常有的事情万细。而一個(gè)程序,從0.1到1.0纸泄,也肯定有過大大小小的修改赖钞。
如果每次都要把程序完整備份下來腰素,然后在修改,會(huì)很累人雪营。
而時(shí)間久了弓千,我們也會(huì)忘記這個(gè)版本我們到底改了什么。
git 是一種分布式版本管理技術(shù)献起,忠實(shí)地記錄程序和文件的所有修改计呈。
初始化
我們新建一個(gè)文件夾,然后切換到當(dāng)前文件夾里面征唬。
mkdir hello_git
cd hello_git
利用git初始化命令捌显,hello_git
文件夾就有了一個(gè)版本庫文件.git
,這個(gè)文件是隱藏的总寒,我們不用管扶歪。
而hello_git
這個(gè)文件夾,就是你的工作區(qū)
摄闸。
git init
你在工作區(qū)內(nèi)的所有文件修改善镰,都會(huì)被.git
記錄下來。
而通過這個(gè)命令年枕,我們就可以知道工作區(qū)的當(dāng)前狀態(tài)炫欺。當(dāng)前是一個(gè)空倉庫(empty respo)。
Git 組成
倉庫初始化以后熏兄,我們從一張圖品洛,大致看一下其組成。
Git 版本庫目錄是 Git 用來保存項(xiàng)目的元數(shù)據(jù)和對(duì)象數(shù)據(jù)庫的地方摩桶。 這是 Git 中最重要的部分.就是.git
文件
工作目錄就是你當(dāng)前的hello_git
桥状。這些從 Git 倉庫的壓縮數(shù)據(jù)庫中提取出來的文件,放在磁盤上供你使用或修改硝清。
暫存區(qū)域(stage)是一個(gè)文件辅斟,保存了下次將提交的文件列表信息。
Git基本操作--add,commit
我們?cè)诋?dāng)前文件夾下芦拿,新建一個(gè)txt文件--readme.txt
士飒。如果要用git把readme.txt
保存下來,以便進(jìn)行版本管理蔗崎,就要兩步酵幕。
第一步,利用 git add
命令將文件添加到 暫存區(qū)(stage)
(后面會(huì)講)
更改準(zhǔn)備提交
。
第二步,我們利用git commit
朱巨,把文本文件從暫存區(qū)
提交到版本庫
里面
git commit -m 'a new readme.txt'
commit 命令后面加 -m
表示可以添加提示信息,對(duì)修改有直觀的認(rèn)識(shí)番官。
文件的三種狀態(tài)
你的文件一般有三種狀態(tài):已提交(committed)
、已修改(modified)
和已暫存(staged)
已提交表示數(shù)據(jù)已經(jīng)安全的保存在版本庫
中钢属。
已修改表示修改了文件徘熔,但還沒保存到版本庫
中。
已暫存表示對(duì)一個(gè)已修改文件的當(dāng)前版本做了標(biāo)記--保存到stage
淆党,使之包含在下次提交的快照中酷师。
而這些狀態(tài),我們都可以通過git status
進(jìn)行查看染乌。