Git 命令笔记

2016-11-03  本文已影响0人  沙拉薯条

故事的开端在某个目录下:

$ git init

推送修改到暂存区(从工作区到暂存区):

$ git add <file1 file2>

提交修改到当前分支(从暂存区到分支):

$git commit -m "introduction"

提交说明应该写的简洁明了,参见Angular 规范,或者这里。Head提要如下:

type(必需)、scope(可选)和subject(必需)

type用于说明 commit 的类别,只允许使用:feat:新功能(feature)、fix:修补bug、docs:文档(documentation)、style: 格式(不影响代码运行的变动)、refactor:重构(即不是新增功能,也不是修改bug的代码变动)、test:增加测试、chore:构建过程或辅助工具的变动

scope用于说明 commit 影响的范围,比如数据层、控制层、视图层等等,视项目不同而不同

subject是 commit 目的的简短描述,不超过50个字符。以动词开头,使用第一人称现在时。第一个字母小写。结尾不加句号(.)

查看库状态:

$git status

查看文件改动:

$ git diff

查看改动日志(--pretty=oneline 可以使显示更简洁):

$ git log

带参数$ git log --graph --pretty=oneline --abbrev-commit。

查看所有commit id:

$ git reflog

改变当前版本指针(HEAD是当前位置,加一个^表示上一个,HEAD~100表示前100个,也可以直接接commit ID):

$ git reset --hard HEAD^

版本库里的版本替换工作区的版本:

$ git checkout -- file

从版本库中删除该文件,git rm删掉,并且git commit。

把本地库的所有内容推送到远程库上:

$ git push -u origin master

$git checkout master仅切换分支,git checkout命令加上-b($git checkout -b)参数表示创建并切换分支。用git branch命令查看当前分支。合并某分支到当前分支$git merge <name>。$git branch -d 删除分支。

$git merge --no-ff -m"merge with no-ff" 保存合并记录的分支合并方式。

$git stash 保存当前工作现场。$git stash list查看保存的工作。$git stash apply恢复,但是恢复后,stash内容并不删除,你需要用git stash drop来删除。或者直接git stash pop,恢复的同时把stash内容也删了。

敲命令git tag 可以打一个新标签。

可以用git show <tagname>查看标签信息。

上一篇 下一篇

猜你喜欢

热点阅读