假设我有一个非常快速的测试脚本的小项目,我只想将所有内容从最初的提交到当前的提交一分为二.我怎样才能做到这一点?
为了澄清,我不想浪费时间来识别一个好的提交和一个糟糕的提交,所以我正在寻找一种快速的方法来将最新的提交标记为坏,并且初始提交是好的.
Zaz*_*Zaz 12
git bisect start
git bisect good
git bisect bad `git rev-list --max-parents=0 HEAD`
git bisect run ./test.sh
Run Code Online (Sandbox Code Playgroud)
或者将这些命令合并到别名中,例如:
bisect-all = !git bisect start && git bisect bad &&\
git bisect good `git rev-list --max-parents=0 --first-parent HEAD`
Run Code Online (Sandbox Code Playgroud)
然后使用git bisect-all
,git bisect run ./test.sh
.
创建别名来处理整个过程稍微复杂一些:
quick-bisect = !sh -c 'git bisect start && git bisect bad &&\
git bisect good `git rev-list --max-parents=0 --first-parent HEAD` &&\
git bisect run "$@" && git bisect reset' -
Run Code Online (Sandbox Code Playgroud)
但有了这个,你可以简单地运行git quick-bisect ./test.sh
.
如果您使用的是早于1.7.4.2的git版本,则您将无法使用该--max-parents
选项,因此需要使用类似的功能git rev-list HEAD | tail -n 1
.
归档时间: |
|
查看次数: |
250 次 |
最近记录: |