Форум программистов, компьютерный форум, киберфорум
Git
Войти
Регистрация
Восстановить пароль
Блоги Сообщество Поиск Заказать работу  
 
Рейтинг 4.93/29: Рейтинг темы: голосов - 29, средняя оценка - 4.93
26 / 26 / 15
Регистрация: 30.12.2015
Сообщений: 95

Одновременная работа с github нескольких человек

15.06.2016, 01:21. Показов 5853. Ответов 5
Метки нет (Все метки)

Студворк — интернет-сервис помощи студентам
Доброго времени суток. Не нашел форума по гиту, но т.к. разработка на С++, данный раздел больше подоходит... Проблема следующая: Над проектом работает несколько человек, все пушат изменения на гитхаб. Проблем нет, если все работают в разное время, одни пушат, другие забирают актуальную версию. Но если несколько человек работают одновременно (я не говорю про разрешение конфликтов, предположим, что все работают над своими файлами) то файл(ы) проекта должны обновляться, а конкретнее - проект студии и прочее, что с ним связано, т.к. иначе у каждого будет своя версия проекта без изменений, сделанных остальными. Понятно дело, магическим образом он сам не объединится... интересует вопрос, как такое реализуется на практике? Через третье лицо, которое объединяет все наработки?
0
cpp_developer
Эксперт
20123 / 5690 / 1417
Регистрация: 09.04.2010
Сообщений: 22,546
Блог
15.06.2016, 01:21
Ответы с готовыми решениями:

Одновременная работа нескольких xmlhttprequest
Объясните как можно несколько объектов использовать одновременно. Не понятно их поведение.

Одновременная работа на нескольких одинаковых вкладках
Друзья, не знаю где разместить вопрос. Скажите пожалуйста, как сделать так, допустим, у тебя в браузере открыты 3 одинаковые вкладки,...

Одновременная работа нескольких USB-портов
На компьюторе 4 USB-порта, но работать одновременно может только какой-нибудь один, тот который первый задействую, на других не...

5
Эксперт .NET
 Аватар для Rius
13097 / 7655 / 1673
Регистрация: 25.05.2015
Сообщений: 23,331
Записей в блоге: 14
15.06.2016, 06:11
Цитата Сообщение от elephants Посмотреть сообщение
Не нашел форума по гиту
https://www.cyberforum.ru/version-control/

И через третье лицо. И самими программистами, если их не слишком много.
Разработку надо вести в отдельных ветках до завершения фич. Всем пушить в master - зло.
A successful Git branching model.
1
14 / 14 / 5
Регистрация: 10.03.2016
Сообщений: 35
15.06.2016, 13:57
Есть два подхода: merge и rebase. Лучше почитать про них подробнее: https://www.atlassian.com/git/... alkthrough

Если кратко.
1. Как описано выше. Каждый заводит ветку, пушит ее в репозиторий, там ведет разработку. Потом делает merge с мастером. Основная проблема -- чем больше проект, тем нечитаемей становится граф.

2. Через rebase. Вы заводите только локальную ветку. Там ведете изменения локально, потом вытягиваете изменения из общего репозитория, и переносите все коммиты на голову мастера. Это пушите в общий репозиторий. Граф становится линейным.
1
26 / 26 / 15
Регистрация: 30.12.2015
Сообщений: 95
26.06.2016, 14:00  [ТС]
Не стал создавать новую тему, т.к. относится вопрос все к тому же. Предположим, 2 человека начали работу одновременно и каждый добавил файлы\фильтры в проект студии. Первый пушит все в мастер. Второй хочет забрать его наработки к себе и смержить со своими. При попытке пула гит напишет, есть локальные изменения, которых нет на гитхабе (или что-то в этом роде). Наткнулся на git stash, попробовал.

git stash
git pull
git stash apply

При такой последовательности команд файлы проекта и фильтров проекта мержатся криво, а ручной мерж не предлагает. В результате, проект не загружается вобще, загружается после правки файла проекта вручную. Фильтры сбрасываются, так же приходится править вручную (не ставит закрывающие тэги). Как решить такую проблему?..
0
Эксперт .NET
 Аватар для Rius
13097 / 7655 / 1673
Регистрация: 25.05.2015
Сообщений: 23,331
Записей в блоге: 14
26.06.2016, 14:02
Пользуйтесь git pull - -rebase
И освойте A successful Git branching model.
0
14 / 14 / 5
Регистрация: 10.03.2016
Сообщений: 35
26.06.2016, 14:37
Так стоит сначала локально закоммитить свои изменения. Потом сделать git pull --rebase. При rebase-е, локальные изменения будут наложены сверху от тех, которые пришли с центрального репозитория.

Если есть какие-то файлы, которые зависят персонально от каждого пользователя (личные настройки и т.п.), из лучше прописать в .gitignore. Чтобы не было случайного мерджа.
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
raxper
Эксперт
30234 / 6612 / 1498
Регистрация: 28.12.2010
Сообщений: 21,154
Блог
26.06.2016, 14:37
Помогаю со студенческими работами здесь

Одновременная работа нескольких админов с сайтом
Здравствуйте! Решил реализовать на сайте возможность работы нескольких администраторов одновременно. Есть список заказов, админы разбирают...

Одновременная загрузка нескольких страниц
Как реализовать код, что бы при открытии больше 3 страниц в 1 секунд выходило модальное окно-запрещающее данное действие

Одновременная загрузка нескольких страниц
Как реализовать код, что бы при открытии больше 3 страниц в 1 секунду выходило модальное окно-запрещающее данное действие

Одновременная запись нескольких файлов
Добрый вечер! Если есть опыт подскажите, какую платформу выбрать для следующей задачи. Каждые 10 мс: 1. обрабатываю буфер с CAN...

Одновременная прокрутка элементов в нескольких ListBox
Visual Basic 2008. Здравствуйте. Очень нужна помощь - по создаваемому проекту возникла претензия. Нужно сделать так, чтобы в...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
6
Ответ Создать тему
Новые блоги и статьи
SDL3 для Web (WebAssembly): Обработчик клика мыши в браузере ПК и касания экрана в браузере на мобильном устройстве
8Observer8 02.02.2026
Содержание блога Для начала пошагово создадим рабочий пример для подготовки к экспериментам в браузере ПК и в браузере мобильного устройства. Потом напишем обработчик клика мыши и обработчик. . .
Философия технологии
iceja 01.02.2026
На мой взгляд у человека в технических проектах остается роль генерального директора. Все остальное нейронки делают уже лучше человека. Они не могут нести предпринимательские риски, не могут. . .
SDL3 для Web (WebAssembly): Вывод текста со шрифтом TTF с помощью SDL3_ttf
8Observer8 01.02.2026
Содержание блога В этой пошаговой инструкции создадим с нуля веб-приложение, которое выводит текст в окне браузера. Запустим на Android на локальном сервере. Загрузим Release на бесплатный. . .
SDL3 для Web (WebAssembly): Сборка C/C++ проекта из консоли
8Observer8 30.01.2026
Содержание блога Если вы откроете примеры для начинающих на официальном репозитории SDL3 в папке: examples, то вы увидите, что все примеры используют следующие четыре обязательные функции, а. . .
SDL3 для Web (WebAssembly): Установка Emscripten SDK (emsdk) и CMake для сборки C и C++ приложений в Wasm
8Observer8 30.01.2026
Содержание блога Для того чтобы скачать Emscripten SDK (emsdk) необходимо сначало скачать и уставить Git: Install for Windows. Следуйте стандартной процедуре установки Git через установщик. . . .
SDL3 для Android: Подключение Box2D v3, физика и отрисовка коллайдеров
8Observer8 29.01.2026
Содержание блога Box2D - это библиотека для 2D физики для анимаций и игр. С её помощью можно определять были ли коллизии между конкретными объектами. Версия v3 была полностью переписана на Си, в. . .
Инструменты COM: Сохранение данный из VARIANT в файл и загрузка из файла в VARIANT
bedvit 28.01.2026
Сохранение базовых типов COM и массивов (одномерных или двухмерных) любой вложенности (деревья) в файл, с возможностью выбора алгоритмов сжатия и шифрования. Часть библиотеки BedvitCOM Использованы. . .
SDL3 для Android: Загрузка PNG с альфа-каналом с помощью SDL_LoadPNG (без SDL3_image)
8Observer8 28.01.2026
Содержание блога SDL3 имеет собственные средства для загрузки и отображения PNG-файлов с альфа-каналом и базовой работы с ними. В этой инструкции используется функция SDL_LoadPNG(), которая. . .
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2026, CyberForum.ru