本地倉庫創建和提交
-
mkdir gitSummary
---創建一個空目錄 -
cd gitSummary
---進入該目錄 -
git init
---將該目錄初始化為git倉庫 -
git add .
---將倉庫中所有文件添加到暫存區 -
git commit -m "這里為提交的說明文字"
---將暫存區內容提交到本地倉庫
添加到遠程倉庫
-
git remote add origin git@github.com:alsanbro/HelloWorld.git
---將本地倉庫與github上的遠程倉庫關聯,git@github.com:alsanbro/HelloWorld.git
為將要push
的遠程倉庫的地址origin
相當于遠程倉庫的名稱(或者別名),push
是要用到這個別名。 -
git push -v origin master
---push
到遠程倉庫,其中origin
為上面為遠程倉庫起的別名,master
為倉庫的分支
查看本地倉庫狀態
git status //查看本地倉庫的狀態
git diff //修改文件之后可以查看具體的修改內容
刪除文件
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 //根據版本號進行回退
克隆項目
git clone <遠程倉庫url> //該命令用來克隆一個項目到本地
如何將遠程倉庫的更新取回到本地工作區
git fetch/git merge
git fetch origin
---將遠程主機origin下的所有分支的更新取回本地git fetch origin master
---將遠程主機origin下的master分支的更新取回到本地倉庫(本地倉庫而非本地的工作區)git merge origin master
---將git fetch
取回到本地倉庫的origin/master
更新合并到本地的當前分支git merge origin/master
--- 將git fetch
取回的origin/master
更新同當前分支進行合并,也就是在本地分支上合并遠程分支-
git pull
命令的作用是,取回遠程主機某個分支的更新,再與本地的指定分支合并。它的完整格式稍稍有點復雜。git pull <遠程主機名> <遠程分支名>:<本地分支名>
git pull origin master:master
---取回遠程主機origin
的master
分支的更新,再同本地的master
分支進行合并-
如果遠程分支與當前分支合并,則冒號后面的可以省略,例如上面的例子中,如果本地分支就是
master
分支,則上面的命令可以簡寫為:git pull origin master
git pull
命令相當于先git fetch
,再git merge
在某些場合,Git會自動在本地分支與遠程分支之間,建立一種追蹤關系(tracking)。比如,在
git clone
的時候,所有本地分支默認與遠程主機的同名分支,建立追蹤關系,也就是說,本地的master
分支自動"追蹤"origin/master
分支。
Git也允許手動建立追蹤關系。
git branch --set-upstream master origin/next
上面命令指定master
分支追蹤origin/next
分支。
如果當前分支與遠程分支存在追蹤關系,git pull
就可以省略遠程分支名。
git pull origin
本地的當前分支自動與對應的origin主機"追蹤分支"(remote-tracking branch)進行合并。
如果當前分支只有一個追蹤分支,連遠程主機名都可以省略。
git pull
上面命令表示,當前分支自動與唯一一個追蹤分支進行合并。
查看分支
-
git branch -r
---查看遠程主機下的所有分支 -
git branch -a
---查看所有分支