一、Mac安裝git
Mac上面安裝Git有兩種方式,推薦以下安裝方式:
1.在AppStore下載xcode,因?yàn)閤code自帶git.
2.安裝完成后,打開(kāi)terminal,輸入git此時(shí)已看到git已經(jīng)可以使用了.
3.最后一步設(shè)置用戶名(不設(shè)置也是可以的),在命令行輸入:
$ git config --global user.name "Your Name"
$ git config --global user.email "email@example.com"
二、創(chuàng)建版本庫(kù)
什么是版本庫(kù)呢?版本庫(kù)又名倉(cāng)庫(kù),英文名repository,你可以簡(jiǎn)單理解成一個(gè)目錄,這個(gè)目錄里面的所有文件都可以被Git管理起來(lái),每個(gè)文件的修改、刪除,Git都能跟蹤,以便任何時(shí)刻都可以追蹤歷史,或者在將來(lái)某個(gè)時(shí)刻可以“還原”。
1.找一個(gè)空地創(chuàng)建一個(gè)文件夾:
$ mkdir Git-reporsitory
$ cd Git-reporsitory
$ pwd
/Users/xxx/softdata/Git-reporsitory
pwd命令用于顯示當(dāng)前目錄。在我的Mac上,這個(gè)倉(cāng)庫(kù)位于/Users/xxx/softdata/Git-reporsitory
2.通過(guò)git init命令把這個(gè)目錄變成Git可以管理的倉(cāng)庫(kù):
$ git init
Initialized empty Git repository in /Users/xxx/softdata/Git-reporsitory/.git/
//注意:可以發(fā)現(xiàn)當(dāng)前目錄下多了一個(gè).git的目錄,這個(gè)目錄是Git來(lái)跟蹤管理版本庫(kù)的,沒(méi)事千萬(wàn)不要手動(dòng)修改這個(gè)目錄里面的文件。
如果你沒(méi)看到.git文件,可以通過(guò) ls -ah 查看隱藏文件;
或者在finder中按住command + shift + . 查看;
三、把文件添加到版本庫(kù)
編寫(vi)一個(gè)readme.txt文件,內(nèi)容如下:
Git is a version control system.
Git is free software.
注意:一定要放到Git-repository目錄下(子目錄也行),因?yàn)檫@是一個(gè)Git倉(cāng)庫(kù),放到其他地方Git再厲害也找不到這個(gè)文件。
1.用命令git add告訴Git,把文件添加到暫存區(qū)(stage):
$ git add readme.txt
執(zhí)行上面的命令,沒(méi)有任何顯示,這就對(duì)了,Unix的哲學(xué)是“沒(méi)有消息就是好消息”,說(shuō)明添加成功。
2.用命令git commit告訴Git,把文件提交到版本庫(kù):
$ git commit -m "wrote a readme file"
[master (root-commit) cb926e7] wrote a readme file
1 file changed, 2 insertions(+)
create mode 100644 readme.txt
簡(jiǎn)單解釋一下git commit命令,-m后面輸入的是本次提交的說(shuō)明,可以輸入任意內(nèi)容,當(dāng)然最好是有意義的,這樣你就能從歷史記錄里方便地找到改動(dòng)記錄。
git commit命令執(zhí)行成功后會(huì)告訴你,1個(gè)文件被改動(dòng)(我們新添加的readme.txt文件),插入了兩行內(nèi)容(readme.txt有兩行內(nèi)容)。
為什么Git添加文件需要add,commit一共兩步呢?因?yàn)?code>commit可以一次提交很多文件,所以你可以多次add不同的文件,比如:
$ git add file1.txt
$ git add file2.txt file3.txt
$ git commit -m "add 3 files."
小結(jié)
1.git init用于初始化被git管理的本地倉(cāng)庫(kù)(即我們后面會(huì)講的工作區(qū)的概念);
相對(duì)于把大象放進(jìn)冰箱需要三步來(lái)說(shuō),git將文件上傳到版本庫(kù)只需要兩步:
1.git add將文件添加到暫存區(qū)(stage)中;
2.git commit將暫存區(qū)的文件提交到版本庫(kù)中;