http://www.javashuo.com/article/p-zhqwaggj-cv.htmlgit
git add == git stage 安全
git reset 能够将一个分支的末端指向以前的一个 commit。而后再下次 git 执行垃圾回收的时候,会把这个 commit 以后的 commit 都扔掉。git reset 还支持三种标记,用来标记 reset 指令影响的范围:post
注意:由于 git reset 是直接删除 commit 记录,从而会影响到其余开发人员的分支,因此不要在公共分支(好比 develop)作这个操做。spa
git checkout 能够将 HEAD 移到一个新的分支,并更新工做目录。由于可能会覆盖本地的修改,因此执行这个指令以前,你须要 stash 或者 commit 暂存区和工做区的更改。插件
而后,从文件层面来讲:code
master和develop二合一而且不使用feature就是主干开发分支发布blog
git cherry-pick <commit-id>开发
git cherry-pick -x <commit_id>
get
增长 -x 参数,表示保留原提交的做者信息进行提交。jenkins
在 Git 1.7.2 版本开始,新增了支持批量 cherry-pick ,就是能够一次将一个连续的时间序列内的 commit ,设定一个开始和结束的 commit ,进行 cherry-pick 操做。
git cherry_pick <start-commit-id>…<end-commit-id>
能够看到,它的范围就是 start-commit-id 到 end-commit-id 之间全部的 commit,可是它这是一个 (左开,右闭] 的区间,也就是说,它将不会包含 start-commit-id 的 commit。
而若是想要包含 start-commit-id 的话,就须要使用 ^ 标记一下,就会变成一个 [左闭,右闭] 的区间,具体命令以下。
git cherry-pick <start-commit-id>^...<end-commit-id>