GIT (DVCS) - блокировка или извлечение файла (как и svn) и конфликт слияния файлов

Я просто перехожу из SVN в GIT. Я просмотрел сообщения и комментарии, но не нашел эффективного решения.

У меня есть следующие вопросы:

  • Как проверить или заблокировать файлы, поэтому другой разработчик знает, что файл недоступен и выписан этот пользователь?

  • Если один пользователь обновил тот же файл, в котором работает другой пользователь, и оба из них вносят изменения в главный репозиторий. Теперь, как это разрешает конфликты или слияние.
    Как работает конфликт или слияние.
    У нас есть возможность управлять конфликтами в tortoiseGIT или внутренне управлять с помощью команды GIT repositories push.

Пожалуйста, дайте мне знать приведенные выше вопросы.

Спасибо.

Ответ 1

git - это распределенный vcs, поэтому все, что вы делаете, будет сделано в вашем локальном репозитории, который сам не знает о локальных репозиториях других разработчиков. Чтобы ответить на вопрос 1:
Поскольку git не имеет центрального репозитория сервера (вы можете сделать его, но это только центральный репозиторий по вашему определению, а не по дизайну git), нет экземпляра, который может блокировать файлы, такие как svn.

Ниже приведена подробная статья в командных рабочих процессах.

Согласование конфликтов управляется git, насколько это возможно. Если он не может решить проблему, это покажет, что конфликт слияния существует для ручного разрешения.

Ответ 2

Что касается 2., сначала перезагрузите свой локальный коммит поверх загруженной удаленной ветки (той, которую еще один разработчик уже нажал).
При необходимости rebase вызовет слияние. Вы разрешаете их локально, а затем нажимаете свои коммиты.