Git學(xué)習(xí)筆記
從零開始創(chuàng)建一個(gè)git項(xiàng)目
1驮吱、首先在自己的github上創(chuàng)建一個(gè)項(xiàng)目倉庫repository茧妒,比如Notes,創(chuàng)建完成后拷貝該repository的地址:https://github.com/asmine/Notes.git
2左冬、在本地創(chuàng)建Notes目錄,
mkdir Notes
3桐筏、進(jìn)入Notes目錄,
git init
4拇砰、可以使用
git status
查看當(dāng)前目錄的情況梅忌,如有未提交的文件,則執(zhí)行g(shù)it add filename 命令進(jìn)行提交(該命令只是提交至本地暫存區(qū))除破,比如:
git add git學(xué)習(xí)筆記.md
5牧氮、提交至本地倉庫:
git commit -m "commit git學(xué)習(xí)筆記.md file."
6、添加遠(yuǎn)程倉庫:
git remote add origin https://github.com/asmine/Notes.git
7瑰枫、提交至遠(yuǎn)程倉庫repository:
git push -u origin master
8踱葛、從遠(yuǎn)程倉庫更新代碼至本地:
git pull https://github.com/asmine/Notes.git
9、刪除文件:
git rm filename
10光坝、一般情況下剖毯,可能會(huì)有一些文件無需納入git的管理,也不希望它們總出現(xiàn)在未跟蹤文件列表教馆,在這種情況下逊谋,可以創(chuàng)建一個(gè)名為.gitignore的文件,列出要忽略的文件模式.
11土铺、比較文件:
git diff
注意胶滋,git diff本身只顯示尚未暫存的改動(dòng)板鬓,而不是自上次提交以來所做的所有改動(dòng),如果暫存了所有更新過的文件究恤,git diff則什么也沒有.
12俭令、跳過使用暫存區(qū):只要在提交時(shí),
git commit加上 -a選項(xiàng)部宿,
git就會(huì)的自動(dòng)把所有已經(jīng)跟蹤過的文件暫存起來并一并提交抄腔,從而跳過git add步驟
13、重命名文件:
git mv filename_from filename_to
git mv命令實(shí)際相當(dāng)于運(yùn)行了下面三個(gè)命令:
mv filename_from filename_to
git rm filename_from
git add filename_to
14理张、查看提交歷史:
git log
不加任何參數(shù)的話赫蛇,會(huì)按提交時(shí)間列出所有的更新,最近的更新排在最上面
-p 用來顯示每次提交的內(nèi)容差異
-2 僅顯示最近兩次提交
Table 2. git log 的常用選項(xiàng) 說明
-p 按補(bǔ)丁格式顯示每個(gè)更新之間的差異雾叭。
--stat 顯示每次更新的文件修改統(tǒng)計(jì)信息悟耘。
--shortstat 只顯示 --stat 中最后的行數(shù)修改添加移除統(tǒng)計(jì)。
--name-only 僅在提交信息后顯示已修改的文件清單织狐。
--name-status 顯示新增暂幼、修改、刪除的文件清單移迫。
--abbrev-commit 僅顯示 SHA-1 的前幾個(gè)字符旺嬉,而非所有的 40 個(gè)字符。
--relative-date 使用較短的相對(duì)時(shí)間顯示(比如厨埋,“2 weeks ago”)邪媳。
--graph 顯示 ASCII 圖形表示的分支合并歷史。
--pretty 使用其他格式顯示歷史提交信息揽咕”幔可用的選項(xiàng)包括 oneline,short亲善,full设易,fuller 和 format(后跟指定格式)。
15蛹头、取消暫存的文件:
git reset HEAD filename
撤銷對(duì)文件的修改(注意顿肺,此命令會(huì)修改工作區(qū)的文件內(nèi)容,對(duì)那個(gè)文件做的任何修改都會(huì)消失--危險(xiǎn)命令):
git checkout -- filename
16渣蜗、查看遠(yuǎn)程倉庫repository:
git remote
也可以指定-v參數(shù)屠尊,會(huì)顯示需要讀寫遠(yuǎn)程倉庫使用的git保存的簡寫與其對(duì)應(yīng)的URL
17、添加遠(yuǎn)程倉庫:
git remote add **shortname** **url**
推送到遠(yuǎn)程倉庫: git push [remote-name] [branch-name],日字旁想將master分支推送到origin服務(wù)器耕拷,運(yùn)行該命令:
git push origin master
查看遠(yuǎn)程倉庫:
git remote show [remote-name]
參考文檔:
ProGit中文版:https://git-scm.com/book/zh/v2
廖雪峰的Git教程:http://www.liaoxuefeng.com/wiki/0013739516305929606dd18361248578c67b8067c8c017b000
Git簡易指南:http://rogerdudler.github.io/git-guide/index.zh.html
常用 Git 命令清單:http://www.ruanyifeng.com/blog/2015/12/git-cheat-sheet.html?bsh_bid=955669550
Git遠(yuǎn)程操作詳解:http://www.ruanyifeng.com/blog/2014/06/git_remote.html