本地仓库创建和提交
-
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
---查看所有分支