Это довольно сложно объяснить в текстовом поле:).
Давайте разберем проблемы:
1. Как создать локальную копию Git-репозитория на новой машине.
Этот процесс называется клонированием. Вы бы использовали опцию Clone в Visual studio или из командной строки выдали бы команду git clone location.of.your.remote.repository
.
Это создаст локальную копию хранилища со всеми данными и ветвями в нем.
2. Как мне синхронизировать мои изменения
В Git вы сначала фиксируете изменения в локальном репозитории, а затем отправляете их дальше в центральный или удаленный репозиторий для совместного использования (теоретически вы также можете отправлять их непосредственно своему коллеге). Это происходит через «подталкивание» ваших изменений. По умолчанию ваши изменения будут перенесены в ветку с тем же именем, что и у вашей локальной ветки, если только вы не настроили ее иначе (установив «восходящую» ветку »).
Ваша первая ошибка «Der aktuelle Branch überwacht keinen Remotebranch» может быть решена одним из следующих способов:
- публикация ветки, которая создаст ветку с тем же именем на пульте и передаст изменения (панель синхронизации в Visual Studio будет иметь опцию публикации)
- объединение изменений из локальной ветки в ветку, отслеживающую ветку, которая уже существует в удаленной ветке, и отправка ее вместо этого.
- отправка изменений непосредственно в удаленную ветку из командной строки
git push remote-name target-branch-name
.
После успешного нажатия на пульт, вы можете «вытянуть» эти изменения на другую машину.
3. Как мне быть в курсе с пультом
Как вы уже заметили, Git предотвратит случайную перезапись изменений в удаленной ветке. Вам нужно локально разрешить конфликты, прежде чем вы сможете вносить новые изменения. Даже если ваши локальные изменения коснулись файлов, которые не были затронуты на пульте, вам потребуется сначала выполнить синхронизацию.
Сначала сохраните все ваши изменения локально. И совершить эти изменения. Затем вы выполняете «тянуть», чтобы получить изменения с пульта. Git заставит слияние при необходимости. После разрешения этих конфликтов слияния вы можете отправить локально слитые изменения обратно на пульт.
Здесь также есть альтернативные варианты, которые являются более продвинутыми шаблонами.
Примечание
Кнопка синхронизации немного плохая. Он пытается сделать слишком много вещей одновременно. По умолчанию «sync» будет пытаться выполнить: «fetch», затем «pull», сразу же после «push». Рекомендуется выполнять эти шаги по отдельности, пока вы действительно не поймете, что делаете.