При работе на патч исправления для конкретного, отслеживаемой вопроса, наш рабочий процесс выглядит следующим образом:Git толкать новую локальную ветку к удаленным, без указания имени
1. git checkout patch; git pull upstream patch; # make sure we're up-to-date
2. git checkout -b issue-435-db-integrity-exception
3. # code some awesome
4. git commit -am "Fixes issue #435"
5. git push -u origin issue-435-db-integrity-exception
Затем мы открываем запрос нагрузочный от origin/435
к upstream/patch
, так что обзор кода может состояться на GitHub/Bitbucket. Затем мы только начинаем с шага №1.
Но, хотя это может показаться немного плаксивый, было бы здорово, если бы мы не должны явно назвать удаленную ветку, мы хотим создать:
git push -u origin issue-435-db-integrity-exception
Это не очень весело чтобы снова набирать имя ветки, и я не согласен с ее изменением только на 435
или что-то более компактное.
Есть ли способ (1) заставить Git нажимать текущую ветвь на аналогичную ветвь, , создавая ее, если необходимо, не называя ее явно? Не глобально, просто на месте вид флага.
Или это возможно (2) доступ к текущей ветви в псевдоним Git, и написать что-то вроде:
[alias]
pnew = push -u origin $(git symbolic-ref --short HEAD)
(Но это не работает - он считает, что вариант --short
предназначен для push
)
Отлично, спасибо! –
@CraigOtis вы могли бы даже сделать это в псевдоним, если хотите, что-то вроде 'git config -global alias.magic 'push origin -u head" ', тогда использование будет' git magic'! –
Использование '@' для меня не работает, но 'head' работает. Может быть, что-то изменилось – Dineshs91