本地倉庫創(chuàng)建和提交
-
mkdir gitSummary
---創(chuàng)建一個空目錄 -
cd gitSummary
---進(jìn)入該目錄 -
git init
---將該目錄初始化為git倉庫 -
git add .
---將倉庫中所有文件添加到暫存區(qū) -
git commit -m "這里為提交的說明文字"
---將暫存區(qū)內(nèi)容提交到本地倉庫
添加到遠(yuǎn)程倉庫
-
git remote add origin git@github.com:alsanbro/HelloWorld.git
---將本地倉庫與github上的遠(yuǎn)程倉庫關(guān)聯(lián),git@github.com:alsanbro/HelloWorld.git
為將要push
的遠(yuǎn)程倉庫的地址origin
相當(dāng)于遠(yuǎn)程倉庫的名稱(或者別名),push
是要用到這個別名贴妻。 -
git push -v origin master
---push
到遠(yuǎn)程倉庫樟结,其中origin
為上面為遠(yuǎn)程倉庫起的別名病线,master
為倉庫的分支
查看本地倉庫狀態(tài)
git status //查看本地倉庫的狀態(tài)
git diff //修改文件之后可以查看具體的修改內(nèi)容
刪除文件
rm gitSummary.md //從工作去刪除gitSummary.md
git rm gitSummary.md //從版本庫中刪除gitSummary.md
git commit -m "刪除之后要提交"
查看提交記錄
git log
git log --pretty=oneline //單行查看
版本回退
git reset --hard HEAD^ //回退至上一次提交
git reset --hard HEAD^^ //回退至上上次提交
git reset --hard ~100 //回退往上100個版本
git reset --hard 926c72 //根據(jù)版本號進(jìn)行回退
克隆項目
git clone <遠(yuǎn)程倉庫url> //該命令用來克隆一個項目到本地
如何將遠(yuǎn)程倉庫的更新取回到本地工作區(qū)
git fetch/git merge
git fetch origin
---將遠(yuǎn)程主機(jī)origin下的所有分支的更新取回本地git fetch origin master
---將遠(yuǎn)程主機(jī)origin下的master分支的更新取回到本地倉庫(本地倉庫而非本地的工作區(qū))git merge origin master
---將git fetch
取回到本地倉庫的origin/master
更新合并到本地的當(dāng)前分支git merge origin/master
--- 將git fetch
取回的origin/master
更新同當(dāng)前分支進(jìn)行合并,也就是在本地分支上合并遠(yuǎn)程分支-
git pull
命令的作用是危队,取回遠(yuǎn)程主機(jī)某個分支的更新衰倦,再與本地的指定分支合并座云。它的完整格式稍稍有點(diǎn)復(fù)雜疙赠。git pull <遠(yuǎn)程主機(jī)名> <遠(yuǎn)程分支名>:<本地分支名>
git pull origin master:master
---取回遠(yuǎn)程主機(jī)origin
的master
分支的更新,再同本地的master
分支進(jìn)行合并-
如果遠(yuǎn)程分支與當(dāng)前分支合并朦拖,則冒號后面的可以省略圃阳,例如上面的例子中,如果本地分支就是
master
分支璧帝,則上面的命令可以簡寫為:git pull origin master
git pull
命令相當(dāng)于先git fetch
捍岳,再git merge
在某些場合,Git會自動在本地分支與遠(yuǎn)程分支之間,建立一種追蹤關(guān)系(tracking)锣夹。比如页徐,在
git clone
的時候,所有本地分支默認(rèn)與遠(yuǎn)程主機(jī)的同名分支银萍,建立追蹤關(guān)系变勇,也就是說,本地的master
分支自動"追蹤"origin/master
分支贴唇。
Git也允許手動建立追蹤關(guān)系搀绣。
git branch --set-upstream master origin/next
上面命令指定master
分支追蹤origin/next
分支。
如果當(dāng)前分支與遠(yuǎn)程分支存在追蹤關(guān)系戳气,git pull
就可以省略遠(yuǎn)程分支名链患。
git pull origin
本地的當(dāng)前分支自動與對應(yīng)的origin主機(jī)"追蹤分支"(remote-tracking branch)進(jìn)行合并。
如果當(dāng)前分支只有一個追蹤分支瓶您,連遠(yuǎn)程主機(jī)名都可以省略麻捻。
git pull
上面命令表示,當(dāng)前分支自動與唯一一個追蹤分支進(jìn)行合并呀袱。
查看分支
-
git branch -r
---查看遠(yuǎn)程主機(jī)下的所有分支 -
git branch -a
---查看所有分支