实际操作
基本操作
-
git init --初始化仓库
.git 目录为该仓库的工作树;
-
git status --查看仓库的状态
-
git add --向暂存区中添加文件
-
git commit --保存仓库中的历史记录
-
git log --查看提交日志
git log --pretty=short 只显示第一行的简述信息
git log 文件名(目录名) 显示文件名或者目录下的日志信息
git log -p 文件名 显示文件前后的差别
-
git diff --查看更改前后的差别
该命令用于查看工作树、暂存区、最新提交之间的差别。
git diff HEAD 查看本次提交和上次提交之间的差别;
分支操作
-
git branch --显示分支一览表
-
git checkout -b --创建,切换分支
等同于 git branch feature-A (创建),git checkout feature-A(切换)
-
git checkout - --切换到上一个分支;
-
git merge --合并分支
首先切换到master分支,然后 ’git merge --no-ff 分支名‘ 记录记录中记下本次分支合并;
-
git log --graph --以图表形式查看分支
更改提交的操作
-
git reset --回溯历史版本
‘git reset --hard 目标时间点的哈希值’ 可以恢复至到时间点的状态;然后可以创建新的分支进行新得操作;
-
git reflog --查看当前仓库的操作日志
-
git commit --amend --修改提交信息
修改提交信息,保存,关闭编辑器;
-
git rebase -i --压缩历史
git rebase -i HEAD~2 可以选定当前分支中包含HEAD(最新提交)在内的两个最新历史记录为对象,并在编辑器中打开,将要删除的提交信息前的pick改成fixup,然后保存退出;
-
git commit -am “ 提交信息” 命令表示完成add和commit操作;
推送至远程仓库
-
git remote add --添加远程仓库
Git会自动将gitegithub.com:github-book/git-tutorial.git远程仓库的名称设置为origin(标识符)。
$ git remote add origin gitegithub.com:github-book/git-tutorial.git
-
git push --推送到远程仓库
$ git push -u origin master 推送至master分支;当前分支的内容就会被推送给远程仓库origin的master分支。-u参数可以在推送的同时,将origin仓库的master分支设置为本地仓库当前分支的upstream(上游)。添加了这个参数,将来运行git pul1命令从远程仓库获取内容时,本地仓库的这个分支就可以直接从origin的master分支获取内容,省去了另外添加参数的麻烦。
$ git push -u origin feature-D 推送至master以外的分支;在远程仓库的GitHub页面就可以查看到feature-D分支了。
从远程仓库获取
-
git clone --获取远程仓库
-
git branch -a 查看当前分支的相关信息,可以同时显示本地仓库和远程仓库的分支信息;
-
git checkout -b 本地仓库名(新建) orgin/远程仓库名 ---获取远程的分支;
-
git pull --获取最新的远程仓库分支
git pull <远程主机名> <远程分支名>:<本地分支名> //要取回origin主机的next分支,与本地的master分支合并 git pull origin next:master //与当前分支合并: git pull origin next //等价于: $ git fetch origin $ git merge origin/next