|
0 / 0 / 0
Регистрация: 08.01.2015
Сообщений: 117
|
|
Как слить два локальных репозитория?14.03.2016, 17:32. Показов 9518. Ответов 16
Метки нет (Все метки)
Здравствуйте.
Есть два репозитория на локальном компьютере. Как их слить в один с сохранением истории каждого? Т. е., чтобы получились две ветки, которые потом сливаются в одну. Делал отдельно сайт и админскую часть. Т. е. было два репозитория. Никаких удалённых репозиториев нет, только локальные. Теперь сайт и админку в один движок хочу слить, соответственно и репозиторий правильнее будет вести один. Нужно текущие соединить в один и далее вести только его, но с сохранением истории текущих как бы в двух отдельных ветках-предках. Важно: речь идёт именно о локальных репозиториях.
0
|
|
| 14.03.2016, 17:32 | |
|
Ответы с готовыми решениями:
16
Как слить два кода с++ в один Как слить два DataTable'а в один? Как слить два запроса в один? |
|
|
||
| 14.03.2016, 20:26 | ||
Получается вот такое: Как там отмечено, сейчас появилась фича subtree, с помощью которой это тоже можно выполнить.
0
|
||
|
0 / 0 / 0
Регистрация: 08.01.2015
Сообщений: 117
|
|
| 15.03.2016, 02:09 [ТС] | |
|
Спасибо. Это что, самый простой способ? Пилец…
А где-то в нете есть достаточно обширный справоюник по Гиту на русском? А то везде только в основном стандартные частые возможности рассматриваются.
0
|
|
|
0 / 0 / 0
Регистрация: 08.01.2015
Сообщений: 117
|
|
| 15.03.2016, 12:46 [ТС] | |
|
С командами по отдельности я разобраться могу, а с логикой действий в цепочке пока проблемы. Не могли бы вы кратенько описать логику, что там и для чего происходит? Справочник этот ещё до́ просмотрел, но так и не нашёл, как обращаться именно с локальными репозиториями, как их локальные пути прописывать.
0
|
|
|
|
|
| 15.03.2016, 13:00 | |
|
Смысл такой: есть основной рабочая копия, к ней подключаем репозиторий другой рабочей копии, выкачиваем из другого нужную ветку и даём ей новое имя, объединяем нужную ветку основной рабочей копии и новую ветку из другой.
0
|
|
|
0 / 0 / 0
Регистрация: 08.01.2015
Сообщений: 117
|
|
| 15.03.2016, 13:48 [ТС] | |
|
Но мне нужно не отдельную ветку другого репозитория прикрепить, а всю историю всех его веток.
У меня так получилось, что две части одного проекта в двух разных репозиториях были, теперь нужно всё это слить в один репозиторий.
0
|
|
|
|
||
| 15.03.2016, 13:54 | ||
|
Получите один последний коммит, в нём будет история всех предыдущих. Его ветку и подключите.
Если слияние на самом деле окажется не нужно, просто не делайте merge.
0
|
||
|
0 / 0 / 0
Регистрация: 08.01.2015
Сообщений: 117
|
|
| 15.03.2016, 14:13 [ТС] | |
|
Хорошо, скажу по-другому, мне нужно объединить два репозитория, а не просто основные ветки сайта и админки. Т. е. будет один коммит у них общий в месте слияния их основных веток, но должна сохраниться и вся предыдущая история ветвления до слияния. И это всё локально. Как указать Гиту локальные пути до репозиториев? Какой синтаксис? Как ни пробовал, выдаёт ошибки.
0
|
|
|
|
|||||||
| 15.03.2016, 14:19 | |||||||
И не забывайте делать бэкапы перед такими махинациями.
1
|
|||||||
|
0 / 0 / 0
Регистрация: 08.01.2015
Сообщений: 117
|
|
| 16.03.2016, 13:38 [ТС] | |
|
Появилась проблемка с командой git mv stuff_REP_2 podpapka_2/stuff_REP_2.
Я пробую так: cd e:/papka_proekta git remote add -f podpapka_2 /f/papka_proekta/podpapka_2 mkdir podpapka_2 …??? У меня куча файлов, как их все сразу перенести в отдельную папку podpapka_2? Можно ли как-то сразу стянуть удалённый репозиторий в podpapka_2, без транзита через papka_proekta? Ещё раз моя ситуация: //существующее состояние papka_proekta —podpapka_1 —podpapka_2 //отдельный репозиторий в этой папке, назовём REP_2 —podpapka_3 //отдельный репозиторий в этой папке, назовём REP_3 —fajl_1 —fajl_2 //необходимое состояние papka_proekta//единый общий репозиторий проекта —podpapka_1 —podpapka_2 —podpapka_3 —fajl_1 —fajl_2 И ещё, я так понял, что в самом первом вашем примере некоторые команды для меня лишние.
0
|
|
|
0 / 0 / 0
Регистрация: 08.01.2015
Сообщений: 117
|
|
| 16.03.2016, 18:23 [ТС] | |
|
Да, всё именно так, как я указал, никак иначе.
0
|
|
|
0 / 0 / 0
Регистрация: 08.01.2015
Сообщений: 117
|
|
| 16.03.2016, 19:16 [ТС] | |
|
Спасибо, конечно, но ничего не разобрать, если не знать команды. Вы бы не могли перезалить с разрешением экрана или переснять с крупнейшим раза в 4 шрифтом? Можно даже просто снимки экрана для каждого шага сделать, но с таким же разрешением как у экрана. Мне жаль, что вы постарались для меня, а получилось не всё гладко.
0
|
|
|
|
||||||
| 16.03.2016, 19:19 | ||||||
|
Там надо качество 720p или 1080p поставить в настройках.
Лучше скачайте видеофайл с Youtube и посмотрите через более удобный плеер. Добавлено через 1 минуту История команд:
1
|
||||||
|
0 / 0 / 0
Регистрация: 08.01.2015
Сообщений: 117
|
||||||
| 17.03.2016, 04:43 [ТС] | ||||||
|
Там максимальное 720 и его не хватает, интерполяция из разрешения экрана всё размыла. Буду читать код. А видео вы сделайте в 1024, я нигде про слияние локальных репозиториев не нашол. Думаю, не только мне пригодится. Как разберусь со своим вопросом, выложу окончательное решение.
Добавлено через 9 часов 15 минут Окончательное решение задачи у меня получилось такое. //начальное состояние papka_proekta —podpapka_1 ——fajl_a ——fajl_b ——fajl_v —podpapka_2 ——.git //отдельный репозиторий в этой папке, назовём REP_2 ——fajl_a ——fajl_b ——fajl_v —podpapka_3 ——.git //отдельный репозиторий в этой папке, назовём REP_3 ——fajl_a ——fajl_b ——fajl_v —fajl_1 —fajl_2 Далее не в Гите, а Тоталом файлы репозиториев поместил в единственные папки, т. е. привёл к тому виду, в котором они должны быть в конечном результате, и закоммитил всё это для каждого репозитория. papka_proekta —podpapka_1 ——fajl_a ——fajl_b ——fajl_v —podpapka_2 ——.git //REP_2 ——podpapka_2 ———fajl_a ———fajl_b ———fajl_v —podpapka_3 ——.git //REP_3 ——podpapka_3 ———fajl_a ———fajl_b ———fajl_v —fajl_1 —fajl_2 Тоталом создал папку для слитого проекта и поместил туда все новые файлы и папки, которые уже не попали в существующие репозитории. Инициализировал новый репозиторий [REP_DLYA_SLITIYA] для слияния двух существующих и сделал первый коммит. papka_slitigo_proekta —.git //REP_DLYA_SLITIYA —podpapka_1 ——fajl_a ——fajl_b ——fajl_v —fajl_1 —fajl_2 Теперь дело только за Гитом.
Результат. papka_slitigo_proekta —.git //REP_DLYA_SLITIYA, единый общий репозиторий проекта —podpapka_1 ——fajl_a ——fajl_b ——fajl_v —podpapka_2 ——fajl_a ——fajl_b ——fajl_v —podpapka_3 ——fajl_a ——fajl_b ——fajl_v —fajl_1 —fajl_2 Всё, теперь два проекта стали одним с сохранением истории в отдельных ветках.
0
|
||||||
| 17.03.2016, 04:43 | |
|
Помогаю со студенческими работами здесь
17
Как слить вместе два текстовых файла? Как слить два упорядоченных массива в один?
как соединить два локальных диска
Искать еще темы с ответами Или воспользуйтесь поиском по форуму: |
|
Новые блоги и статьи
|
|||
|
Установка Qt Creator для C и C++: ставим среду, CMake и MinGW без фреймворка Qt
8Observer8 05.04.2026
Среду разработки Qt Creator можно установить без фреймворка Qt. Есть отдельный репозиторий для этой среды: https:/ / github. com/ qt-creator/ qt-creator, где можно скачать установщик, на вкладке Releases:. . .
|
AkelPad-скрипты, структуры, и немного лирики..
testuser2 05.04.2026
Такая программа, как AkelPad существует уже давно, и также давно существуют скрипты под нее. Тем не менее, прога живет, периодически что-то не спеша дополняется, улучшается. Что меня в первую очередь. . .
|
Отображение реквизитов в документе по условию и контроль их заполнения
Maks 04.04.2026
Алгоритм из решения ниже реализован на примере нетипового документа "ПланированиеСпецтехники", разработанного в конфигурации КА2.
Данный документ берёт данные из другого нетипового документа. . .
|
Фото всей Земли с борта корабля Orion миссии Artemis II
kumehtar 04.04.2026
Это первое подобное фото сделанное человеком за 50 лет. Снимок называют новым вариантом легендарной фотографии «The Blue Marble» 1972 года, сделанной с борта корабля «Аполлон-17». Новое фото. . .
|
|
Вывод диалогового окна перед закрытием, если документ не проведён
Maks 04.04.2026
Алгоритм из решения ниже реализован на примере нетипового документа "СписаниеМатериалов", разработанного в конфигурации КА2.
Задача: реализовать программный контроль на предмет проведения документа. . .
|
Программный контроль заполнения реквизитов табличной части документа
Maks 02.04.2026
Алгоритм из решения ниже реализован на примере нетипового документа "СписаниеМатериалов", разработанного в конфигурации КА2.
Задача:
1. Реализовать контроль заполнения реквизита. . .
|
wmic не является внутренней или внешней командой
Maks 02.04.2026
Решение:
DISM / Online / Add-Capability / CapabilityName:WMIC~~~~
Отсюда: https:/ / winitpro. ru/ index. php/ 2025/ 02/ 14/ komanda-wmic-ne-naydena/
|
Программная установка даты и запрет ее изменения
Maks 02.04.2026
Алгоритм из решения ниже реализован на примере нетипового документа "СписаниеМатериалов", разработанного в конфигурации КА2.
Задача: при создании документов установить период списания автоматически. . .
|