2017-02-22 8 views
9

Есть ли возможность сделать git do rebase с --preserve-merges по умолчанию? Я знаю об псевдонимах, но мне не нравится идея помнить их имена, а также делает все сложнее сделать на чужом компьютере, когда вы привыкаете к ним.Опция Git для `--preserve-merges`?

+0

Какую версию Git вы используете? – VonC

+0

Последнее на данный момент, 2.12.1 –

ответ

1

Эта особенная потребность является одной из причин существования функций оболочки.

git() { 
    case $1 in 
    rebase) shift; set -- rebase --preserve-merges "[email protected]" ;; 
    esac 
    command git "[email protected]" 
} 

Что касается

Я знаю о псевдонимами, но мне не нравится идея, чтобы помнить их имена, а также он делает все труднее делать на чужом компьютере, когда вы привыкнете к ним.

Я думаю, что метод получения команды вести себя по-другому на чужом компьютере, но только тогда, когда вы ее используете, нужно будет задать как отдельный вопрос для правильного ответа.

+0

Извините, но в моем вопросе четко указано, что мне нужна опция * git *, а не какие-либо другие способы достижения этой функциональности. Вот почему я упомянул псевдонимы - не получать ответы вроде этого. –

+0

Вы указали две причины этого требования. Это удовлетворяет первой ('git rebase' будет работать так, как вы хотите, но не вводит новое имя). Я подозреваю, что второй может быть ошибочным, не могли бы вы объяснить, как вы ожидаете, что git будет вести себя по-другому для вас лично, когда вы на «чужом компьютере»? – jthill

+0

Я не использую git aliases (и объяснил почему) и попросил вариант * git *. Мне не нужны обходные пути, мне нужна только опция * git *, если она существует. –