2013-12-06 3 views
3

В этом вопросе Git command to commit all changes including files removed or created ответ дал позволяет мне добавить, фиксации и нажать все изменения, сделанные в моей master ветви в одной команде с:команды Git для добавления, фиксации, и нажать на правильную ветку

git commitall "a message describing what you did" 

где это определенная пользователем команда:

commitall = "!func(){ git add -A && git commit -am \"$1\" && git push origin master; }; func" 

хранится в файле ~\.gitconfig в разделе [alias].

Проблема в том, что эта команда работает только тогда, когда я помещен в ветку master. Как я могу обобщить эту команду, чтобы она проверила, в какой ветке я сейчас позиционируюсь и нажимаю изменения на , что ветвь?

ответ

3

Если вы сделали (см «git - push current vs. push upstream (tracking)»):

git config push.default simple 
# or at least 
git config push.default current 

Тогда ваш git push origin (ни одна ветвь указано) всегда будет толкать только текущую ветвь.

Если нет, то замените git push origin master в псевдонима с:

git push -u origin \"$(git rev-parse --abbrev-ref HEAD)\" 

Больше на "Git alias on current branch".

+0

Я не делал 'git config push.default simple', я даже не знаю, что это такое. Не могли бы вы немного рассказать? – Gabriel

+0

'git config push.default current'? –

+0

Мне также интересно, какая разница между простым и текущим. – crea1

Смежные вопросы