大战熟女丰满人妻av-荡女精品导航-岛国aaaa级午夜福利片-岛国av动作片在线观看-岛国av无码免费无禁网站-岛国大片激情做爰视频

Git教程
Git標(biāo)簽管理
Git分支
Git操作
Git應(yīng)用
GitHub應(yīng)用
IDEA對于Git&GitHub的支持
Git與GitHub使用注意事項

Git創(chuàng)建版本庫

什么是版本庫呢?版本庫又名倉庫,英文名repository,你可以簡單理解成一個目錄,這個目錄里面的所有文件都可以被Git管理起來,每個文件的修改、刪除,Git都能跟蹤,以便任何時刻都可以追蹤歷史,或者在將來某個時刻可以“還原”。

所以,創(chuàng)建一個版本庫非常簡單,首先,選擇一個合適的地方,創(chuàng)建一個空目錄:

$ mkdir learngit
$ cd learngit
$ pwd
/Users/michael/learngit

pwd命令用于顯示當(dāng)前目錄。在我的Mac上,這個倉庫位于/Users/michael/learngit。

如果你使用Windows系統(tǒng),為了避免遇到各種莫名其妙的問題,請確保目錄名(包括父目錄)不包含中文。

通過git init命令把這個目錄變成Git可以管理的倉庫:

$ git init
Initialized empty Git repository in /Users/michael/learngit/.git/

瞬間Git就把倉庫建好了,而且告訴你是一個空的倉庫(empty Git repository),細(xì)心的讀者可以發(fā)現(xiàn)當(dāng)前目錄下多了一個.git的目錄,這個目錄是Git來跟蹤管理版本庫的,沒事千萬不要手動修改這個目錄里面的文件,不然改亂了,就把Git倉庫給破壞了。

如果你沒有看到.git目錄,那是因為這個目錄默認(rèn)是隱藏的,用ls -ah命令就可以看見。

也不一定必須在空目錄下創(chuàng)建Git倉庫,選擇一個已經(jīng)有東西的目錄也是可以的。不過,不建議你使用自己正在開發(fā)的公司項目來學(xué)習(xí)Git,否則造成的一切后果概不負(fù)責(zé)。

⒈ 把文件添加到版本庫

首先這里再明確一下,所有的版本控制系統(tǒng),其實只能跟蹤文本文件的改動,比如TXT文件,網(wǎng)頁,所有的程序代碼等等,Git也不例外。版本控制系統(tǒng)可以告訴你每次的改動,比如在第5行加了一個單詞“Linux”,在第8行刪了一個單詞“Windows”。而圖片、視頻這些二進(jìn)制文件,雖然也能由版本控制系統(tǒng)管理,但沒法跟蹤文件的變化,只能把二進(jìn)制文件每次改動串起來,也就是只知道圖片從100KB改成了120KB,但到底改了啥,版本控制系統(tǒng)不知道,也沒法知道。

不幸的是,Microsoft的Word格式是二進(jìn)制格式,因此,版本控制系統(tǒng)是沒法跟蹤Word文件的改動的,前面我們舉的例子只是為了演示,如果要真正使用版本控制系統(tǒng),就要以純文本方式編寫文件。

因為文本是有編碼的,比如中文有常用的GBK編碼,日文有Shift_JIS編碼,如果沒有歷史遺留問題,強(qiáng)烈建議使用標(biāo)準(zhǔn)的UTF-8編碼,所有語言使用同一種編碼,既沒有沖突,又被所有平臺所支持。

使用Windows的童鞋要特別注意:

千萬不要使用Windows自帶的記事本編輯任何文本文件。原因是Microsoft開發(fā)記事本的團(tuán)隊使用了一個非常弱智的行為來保存UTF-8編碼的文件,他們自作聰明地在每個文件開頭添加了0xefbbbf(十六進(jìn)制)的字符,你會遇到很多不可思議的問題,比如,網(wǎng)頁第一行可能會顯示一個“?”,明明正確的程序一編譯就報語法錯誤,等等,都是由記事本的弱智行為帶來的。建議你下載Notepad++代替記事本,不但功能強(qiáng)大,而且免費!記得把Notepad++的默認(rèn)編碼設(shè)置為UTF-8 without BOM即可:

言歸正傳,現(xiàn)在我們編寫一個readme.txt文件,內(nèi)容如下:

Git is a version control system.
Git is free software.

一定要放到learngit目錄下(子目錄也行),因為這是一個Git倉庫,放到其他地方Git再厲害也找不到這個文件。

和把大象放到冰箱需要3步相比,把一個文件放到Git倉庫只需要兩步。

第一步:用命令git add告訴Git,把文件添加到倉庫:

$ git add readme.txt

執(zhí)行上面的命令,沒有任何顯示,這就對了,Unix的哲學(xué)是“沒有消息就是好消息”,說明添加成功。

第二步:用命令git commit告訴Git,把文件提交到倉庫:

$ git commit -m "wrote a readme file"
[master (root-commit) eaadf4e] wrote a readme file
 1 file changed, 2 insertions(+)
 create mode 100644 readme.txt

簡單解釋一下git commit命令,-m后面輸入的是本次提交的說明,可以輸入任意內(nèi)容,當(dāng)然最好是有意義的,這樣你就能從歷史記錄里方便地找到改動記錄。

嫌麻煩不想輸入-m "xxx"行不行?確實有辦法可以這么干,但是強(qiáng)烈不建議你這么干,因為輸入說明對自己對別人閱讀都很重要。實在不想輸入說明的童鞋請自行Google,我不告訴你這個參數(shù)。

git commit命令執(zhí)行成功后會告訴你,1 file changed:1個文件被改動(我們新添加的readme.txt文件);2 insertions:插入了兩行內(nèi)容(readme.txt有兩行內(nèi)容)。

為什么Git添加文件需要add,commit一共兩步呢?因為commit可以一次提交很多文件,所以你可以多次add不同的文件,比如:

$ git add file1.txt
$ git add file2.txt file3.txt
$ git commit -m "add 3 files."

⒉ 疑難解答

Q:輸入git add readme.txt,得到錯誤:fatal: not a git repository (or any of the parent directories)。

A:Git命令必須在Git倉庫目錄內(nèi)執(zhí)行(git init除外),在倉庫目錄外執(zhí)行是沒有意義的。

Q:輸入git add readme.txt,得到錯誤fatal: pathspec 'readme.txt' did not match any files。

A:添加某個文件時,該文件必須在當(dāng)前目錄下存在,用ls或者dir命令查看當(dāng)前目錄的文件,看看文件是否存在,或者是否寫錯了文件名。

⒊ 小結(jié)

現(xiàn)在總結(jié)一下今天學(xué)的兩點內(nèi)容:

初始化一個Git倉庫,使用git init命令。

添加文件到Git倉庫,分兩步:

使用命令git add ,注意,可反復(fù)多次使用,添加多個文件;

使用命令git commit -m ,完成。

全部教程
主站蜘蛛池模板: 成人久久久 | 久久久国产这里有的是精品 | 色噜噜狠狠色综合免费视频 | 免费黄色在线观看 | 国产精品久久久久孕妇 | 午夜不卡影院 | 国产精品一区二区手机看片 | 综合亚洲一区二区三区 | 久久久久久久久综合 | 午夜视频免费国产在线 | 美女精品久久久久久国产潘金莲 | 欧美做爱毛片 | 国产美女久久精品香蕉69 | 亚洲国产精品综合欧美 | 精品欧美在线精品 | 精品国产91久久久久 | 欧洲毛片 | 免费亚洲一区 | 久久riav.com| 亚欧免费视频 | 久久国产精品国产自线拍免费 | 天天拍夜夜添久久精品免费 | 欧美视频在线观看 | 亚洲欧美日韩国产一区图片 | 人人狠狠综合久久亚洲婷婷 | 四虎网站最新网址 | 国产中文字幕亚洲 | 亚洲人成影院午夜网站 | 亚洲一区二区三区高清 | 国产青色| 日韩一级欧美一级毛片在线 | 免费视频网站一级人爱视频 | 日本高清在线一区二区三区 | 中文字幕一区在线 | 亚洲成人小视频 | 日本欧美韩国专区 | 亚洲欧美日韩人成 | 久久这里只精品国产99热 | 成人伊人青草久久综合网 | 成人免费黄色片 | 亚洲综合色区图片区 |