@Charles відповідь правильна. У будь-якому разі я стільки разів використовував це, найбільше для відновлення конкретного конфігурації проекту
* a8f9182 (HEAD -> виробництво) виробнича конфігурація
| * конфігурація передпродукції daa18b7 (перед)
| /
| * d365f5f (локальна) локальна конфігурація
| /
* 27d2835 (dev) дивовижна нова функція, яка врятує світ
* | 56d2467 (майстер) нудний стан техніки для проекту
| /
що я створюю для нього нову команду:
$ cat ~ / bin / git-rebaseshot
COMMIT = $ 1
DEST = $ {2: -HEAD}
git rebase $ {COMMIT} ^ $ {COMMIT} - до $ 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 config
* a8f9182 (локальна) локальна конфігурація
* Конфігурація рівня журналу a8f9182 (налагодження)
* a8f9182 (dev) нова функція
|
Я думаю, це те, що люблять робити ковдри .
ця команда буде працювати в будь-якому випадку з будь-яким шагом / ref ви надаєте:
$ git rebaseshot <Feature branch> master
$ git rebaseshot <commit of XX> master