Понимание Git и как использовать EGit (git плагин eclipse)

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

Что меня смущает, так это то, что когда я возвращаюсь к мастеру, изменения, которые я сделал в новой ветке, находятся там... хотя я не слился.

Я, очевидно, недопонимаю все это... любая идея Спасибо.

Ответ 1

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

Кроме того, отметьте этот вопрос, где перечислены некоторые Git учебные пособия.

Даже если вы ищете краткое руководство по началу работы, я рекомендую вам потратить время на чтение, по крайней мере, первых трех разделов Pro Git. Это даст вам общее представление о том, как использовать систему управления версиями, некоторые основы Git и способность разветвления и слияния. Затем ознакомьтесь с учебниками по второй ссылке, которую я разместил.

Что касается egit, там некоторая документация на официальном сайте. Как только вы получите руку на git, будет легче узнать, как использовать egit.

Ответ 2

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

Что меня смущает, так это то, что когда я возвращаюсь к мастеру, изменения, которые я сделал в новой ветке, находятся там... хотя я не слился.

Вы явно не сказали этого, но я предполагаю, что вы не совершали эти изменения. Git с радостью позволит вам переключаться между ветвями с незафиксированными изменениями - пока эти изменения не находятся в файлах, которые отличаются между двумя ветвями. Большая вещь, с которой это помогает, - это когда вы собираетесь совершить сделку и обнаружите, что вы проверили неправильную ветку.

Если вы внесли свои изменения, а затем переключили ветки, вы увидите, что они исчезнут точно так, как вы ожидаете.

(И, кстати, слияния - это операции, основанные на фиксации, - вы объединяете две (вообще) фиксации и создаете новую фиксацию с обоими исходными двумя в качестве родителей. Нет смысла думать о слиянии с незафиксированными изменениями. )

Что касается обучения использованию и, что более важно, понимания Git, здесь есть много отличных ссылок - например, Git Притча (беззаботное введение в основные идеи), ProGit и Git Community Book. EGit - это отличная вещь в принципе, что делает вещи доступными через IDE - но я бы предостерег вас не пропустить хорошее понимание того, как действительно работают под капотом. Вероятно, это спасет вас от нажатия кнопки, а затем произнесет: "О нет, что я сделал!"