2016-08-05 2 views
0

Когда я работаю над git repo, чтобы сделать quickfix, я создаю новый локальный ветвь с использованием git checkout -b BRANCH_NAME, который заставляет новую ветвь i затем работать на этой ветке на некоторое время, а когда я готов, я делаю git checkout dev, а затем git merge BRANCH_NAME слиться с исправлением ветвью и я получаю сообщение branch already up to date .. которые оно не должно быть, потому что они являются отдельными ветвямиGit local branch auto merges

Это плохо, потому что если что-то пошло не так это значит, что мой Dev филиал будет уже обновлены? Я понятия не имею, почему это происходит, я все еще новичок в GIT, поэтому я хотел бы, чтобы кто-то объяснил, что я делаю неправильно.

+0

После выполнения некоторой работы над вашим «BRANCH_NAME» вы тогда «git добавьте <...>» и «git commit -m» ... "'? –

+0

Нет, я не использовал этот учебник по github: https: //try.github.io/levels/1/challenges/1 Не работает «git add-git commit -m», толкает его на удаленное репо? –

+0

Нет, это не так. Позвольте мне добавить ответ. Одну минуту, пожалуйста. –

ответ

1

В основном, что происходит, так как вы не add и commit ваши изменения. Когда вы выполняете слияние, ваш филиал dev будет обновлен, так как до git система связана с той ветвью, которую вы создали, так же, как и dev (ничего не изменилось).

Для того, чтобы получить вещи сделано должным образом, то, что вам нужно сделать, это сделать немного работы на вашей отрасли, то add всю эту работу, используя

git add <filename>.<extension> 

или, если они уже отслеживаются

git add . 

Эта инструкция помещает файл в зону . Подумайте об этом, как если бы вы приготовили задний пакет. Иногда вам хотелось бы добавить в него кое-что, и иногда вы можете извлечь из него все.

Затем совершить работу, используя

git commit -m "Describe here what you've done" 

Это будет в основном сделать снимок рабочего каталога на вашем локальной файловой системы. Подумайте об этом, как будто вы только что закончили сдавать все в свой пакет.

пойти в мастер филиала dev

git checkout dev 

Это просто переключит вас на ветку вы указали. В данном случае это dev

сливаться

git merge <branch> 

Примечание:<branch> с какой бы отрасли имя, которое вы работали над

Учитывая вы на dev отрасли, это будет сливаться ветвь вы в настоящее время в (dev) с любой ветвью, указанной в <branch> в приведенной выше инструкции.