Git: Групповая работа

Идём дальше, и теперь рассмотрим сценарий, когда у нас появляется второй разработчик на проекте.

Для большей наглядности я создадим новый репозиторий  bitbucketdemorepo2 и первый пользователь закоммитит в него первый файл:

Screen Shot 2015-12-01 at 17.13.10

 

После этого, второй пользователь склонирует себе репозиторий и закоммитит второй файл:

Screen Shot 2015-12-01 at 17.16.11

 

Но как первый пользователь может узнать о том, что в репозитории появился ещё один файл?

Проще всего увидеть изменения в GUI клиенте:

Screenshot at Dec 01 17-18-30

 

Нужно понимать, что основная команда git fetch скачает все изменения последнего своего выполнения или с момента выполнения clone, если после clone команда git fetch выполняется впервые.

Обратите внимание, данные которые скачивает fetch не мерджаться автоматически с локальными данными, это очень здорово – ведь над одним файлом могут одновременно работать несколько человек.

Чтобы увидеть изменения нужно сделать git merge после git fetch:

Screen Shot 2016-06-23 at 19.42.24

Но здорово это не всегда, поэтому предусмотрена команда git pull, которая не только скачает данные, но и сделает merge. Именно эту операцию нам и предлагает выполнить SourceTree в данном случае.

Но выполним git pull мы из командной строки:

Screenshot at Dec 01 17-19-24

 

Рассмотрим следующий сценарий, в котором второй пользователь изменит файл, который уже есть у первого пользователя в локальной копии git-a:

Screen Shot 2015-12-01 at 17.21.26

 

В этом случае, мы снова сделаем git pull под первым пользователем, но на этот раз используя GUI и другие опции:

Screen Shot 2015-12-01 at 17.22.49

 

Обратите внимание как наглядно показан процесс слияния на примере нескольких изменений:

Screenshot at Dec 01 17-24-43

А с помощью git diff можно быстро увидеть разницу в файле(ах):

Screen Shot 2016-06-23 at 19.45.38

Оглавление цикла статей по Git.

Надеюсь озвученная информация будет полезной, а если нужна будет помощь — используйте форму на главной странице моего сайта.