創(chuàng)建新倉庫
# 創(chuàng)建新文件夾轻黑,打開藐窄,然后執(zhí)行
git init
檢出倉庫
# 執(zhí)行如下命令以創(chuàng)建一個(gè)本地倉庫的克隆版本
git clone /path/to/repository
# 如果是遠(yuǎn)端服務(wù)器上的倉庫泡孩,你的命令會(huì)是這個(gè)樣子
$ git clone git@github.com:git用戶名/項(xiàng)目名.git
添加于提交
#你可以計(jì)劃改動(dòng)(把它們添加到緩存區(qū)),使用如下命令
git add <filename> 或 git add *
# 這是 git 基本工作流程的第一步粟誓;使用如下命令以實(shí)際提交改動(dòng)
git commit -m "代碼提交信息"
注意:現(xiàn)在,你的改動(dòng)已經(jīng)提交到了 HEAD起意,但是還沒到你的遠(yuǎn)端倉庫
推送改動(dòng)
# 你的改動(dòng)現(xiàn)在已經(jīng)在本地倉庫的 HEAD 中了鹰服。
# 執(zhí)行如下命令以將這些改動(dòng)提交到遠(yuǎn)端倉庫
# 可以把 master 換成你想要推送的任何分支
git push origin master
# 如果你還沒有克隆現(xiàn)有倉庫,并欲將你的倉庫連接到某個(gè)遠(yuǎn)程服務(wù)器揽咕,
# 你可以使用如下命令添加
git remote add origin git@github.com:git用戶名/項(xiàng)目名.git
提示:如此你就能夠?qū)⒛愕母膭?dòng)推送到所添加的服務(wù)器上去了
Git 分支管理
分支是用來將特性開發(fā)絕緣開來的悲酷。在你創(chuàng)建倉庫的時(shí)候,master 是“默認(rèn)的”亲善。在其他分支上進(jìn)行開發(fā)设易,完成后再將它們合并到主分支上
# 創(chuàng)建新分支
git branch test
# 創(chuàng)建一個(gè)叫做“test”的分支,并切換過去
git checkout -b test
# 切換回主分支
git checkout master
# 切換到新建的分支
git checkout test
# 查看本地分支
git branch
# 查看遠(yuǎn)程分支
git branch -a
# 獲取主干最新代碼
$ git pull
# 刪除本地分支
git branch -d test
# push本地分支到遠(yuǎn)程分支(本地jack_413:遠(yuǎn)程master)
git push origin jack_413:master
更新與合并
# 要更新你的本地倉庫至最新改動(dòng)蛹头,執(zhí)行
git pull
# 以在你的工作目錄中 獲榷俜巍(fetch) 并 合并(merge) 遠(yuǎn)端的改動(dòng)。
# 要合并其他分支到你的當(dāng)前分支(例如 master)渣蜗,執(zhí)行
git merge <branch>
# 兩種情況下屠尊,git 都會(huì)嘗試去自動(dòng)合并改動(dòng)。不幸的是
# 自動(dòng)合并并非次次都能成功耕拷,并可能導(dǎo)致 沖突(conflicts)讼昆。
# 這時(shí)候就需要你修改這些文件來人肉合并這些 沖突(conflicts) 了。
# 改完之后骚烧,你需要執(zhí)行如下命令以將它們標(biāo)記為合并成功
git add <filename>
# 在合并改動(dòng)之前浸赫,也可以使用如下命令查看
git diff <source_branch> <target_branch>
標(biāo)簽
# 在軟件發(fā)布時(shí)創(chuàng)建標(biāo)簽,是被推薦的赃绊。這是個(gè)舊有概念既峡,在 SVN 中也有。
# 可以執(zhí)行如下命令以創(chuàng)建一個(gè)叫做 1.0.0 的標(biāo)簽
git tag 1.0.0 1b2e1d63ff
# 1b2e1d63ff 是你想要標(biāo)記的提交 ID 的前 10 位字符碧查。
# 使用如下命令獲取提交 IDgit log
提示:你也可以用該提交 ID 的少一些的前幾位涧狮,只要它是唯一的
替換本地改動(dòng)
# 假如你做錯(cuò)事(自然,這是不可能的),你可以使用如下命令替換掉本地改動(dòng)
git checkout -- <filename>
# 此命令會(huì)使用 HEAD 中的最新內(nèi)容替換掉你的工作目錄中的文件者冤。
# 已添加到緩存區(qū)的改動(dòng)肤视,以及新文件,都不受影響涉枫。
# 假如你想要丟棄你所有的本地改動(dòng)與提交邢滑,
# 可以到服務(wù)器上獲取最新的版本并將你本地主分支指向到它
git fetch origin
git reset --hard origin/master
參考