|
26 / 26 / 15
Регистрация: 30.12.2015
Сообщений: 95
|
|
Одновременная работа с github нескольких человек15.06.2016, 01:21. Показов 5853. Ответов 5
Метки нет (Все метки)
Доброго времени суток. Не нашел форума по гиту, но т.к. разработка на С++, данный раздел больше подоходит... Проблема следующая: Над проектом работает несколько человек, все пушат изменения на гитхаб. Проблем нет, если все работают в разное время, одни пушат, другие забирают актуальную версию. Но если несколько человек работают одновременно (я не говорю про разрешение конфликтов, предположим, что все работают над своими файлами) то файл(ы) проекта должны обновляться, а конкретнее - проект студии и прочее, что с ним связано, т.к. иначе у каждого будет своя версия проекта без изменений, сделанных остальными. Понятно дело, магическим образом он сам не объединится... интересует вопрос, как такое реализуется на практике? Через третье лицо, которое объединяет все наработки?
0
|
|
| 15.06.2016, 01:21 | |
|
Ответы с готовыми решениями:
5
Одновременная работа нескольких xmlhttprequest Одновременная работа на нескольких одинаковых вкладках Одновременная работа нескольких USB-портов |
|
|
||
| 15.06.2016, 06:11 | ||
|
И через третье лицо. И самими программистами, если их не слишком много. Разработку надо вести в отдельных ветках до завершения фич. Всем пушить в 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
|
|
|
14 / 14 / 5
Регистрация: 10.03.2016
Сообщений: 35
|
|
| 26.06.2016, 14:37 | |
|
Так стоит сначала локально закоммитить свои изменения. Потом сделать git pull --rebase. При rebase-е, локальные изменения будут наложены сверху от тех, которые пришли с центрального репозитория.
Если есть какие-то файлы, которые зависят персонально от каждого пользователя (личные настройки и т.п.), из лучше прописать в .gitignore. Чтобы не было случайного мерджа.
0
|
|
| 26.06.2016, 14:37 | |
|
Помогаю со студенческими работами здесь
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(), которая. . .
|