git几个重要参数


git命令及参数很多,而且可以自由组合的使用,因此能够灵活运用命令行完成预期操作还需要熟知每个命令和参数的含义

1.版本回退类

  1. git reflog 查看git操作历史
  2. git log 查看git提交历史
  3. git reset [–mixed –soft –hard] 保留源码回退版本和index信息、保留源码回退版本、彻底回退版本
  4. git reset 会直接删除后面commit
  5. git revert 用新的一次commit和回滚之前的commit

2.

待续…

git合并某一个commit到指定的分支上

1.Git合并特定commits 到另一个分支

合并某个分支上的单个commit
首先用git log或GitX工具查看一下commits,然后找到要合并的commit hash码

比如,在mydev上的这个提交修正了一个非常重要的bug,我们要把它单独合并到master上,供所有人pull使用
而不合并其他commit,git给我们提供了一条非常有用的命令行:

1
git cherry-pick <hash>

cherry-pick和merge比较类似,不同的是前者只是合并某一个commit,而后者则是完全合并整个分支
并且遇到冲突时,都需要手动进行合并和添加commit。

2.合并某个分支上的历史commits

在某些特定的情况下,我们并不需要合并某个commit或整个分支,而是要合并某一历史段内的commits。这种情况下使用cherry-pick会显得很繁琐,
而rebase更加适合现在的场景。

1
git rebase --ontomaster <hash> ^

不同的是rebase选择的是hash段,表示从什么时候开始的所有commit

3.总结

git的最小基本单位就是commit,分支就是由一个或多个commit构成的,git几乎所有操作都是针对commit的,
commit还保存了文件修改的操作