@Charlesの応答は正しいです。とにかく、私はこれを何度も使ってしまい、何よりもプロジェクトの特定の構成をリベースするために
* a8f9182(HEAD->本番)プロダクション構成
| * daa18b7(プリ)プリプロダクション構成
| /
| * d365f5f(ローカル)ローカル構成
| /
* 27d2835(dev)世界を救う驚くべき新機能
* | 56d2467(マスター)プロジェクトのための退屈な最先端技術
| /
そのための新しいコマンドを作成します。
$猫〜/ bin / git-rebaseshot
コミット= $ 1
DEST = $ {2:-HEAD}
git rebase $ {COMMIT} ^ $ {COMMIT} --onto $ DEST
通常は、そのコマンドのブランチ名をオートコンプリートしたいので、この関数のソースとして追加します(.bashrcまたは.profileに追加します)。
_git_rebaseshot()
{
__gitcomp_nl "$(__ git_refs)"
}
git autocompleteはそれを検索します
このコマンドは次のように使用できます。
# rebase config on prepro on actual HEAD
$ git rebaseshot prepro
# rebase config on local onto dev
$ git rebaseshot local dev
# rebase production config on master
$ git rebaseshot pro master
フィーチャを正しく分割すると、可能性は無限大です。
* a8f9182(HEAD-> postgres)BBDD設定
* a8f9182(ローカル)ローカル構成
* a8f9182(デバッグ)ログレベル設定
* a8f9182(dev)の新機能
|
これはキルトの人々がしたいことだと思います。
このコマンドは、提供する任意のsha / refで動作します。
$ git rebaseshot <Feature branch> master
$ git rebaseshot <commit of XX> master