Существует ли очевидный способ для обработки двух исходных репозиториев мерзавца, которые запустились с того же содержания?

Opencart v.2.1.0.2 , v.2.2.0.0 и amp; v.2.3.0.2

В /catalog/controller/api/
- cart.php
- coupon.php
- [113 ]
- customer.php
- login.php
- order.php
- payment.php
- [118 ]
- shipping.php
- voucher.php

Это то, что вы можете использовать.
Для всего остального вам придется построить его самостоятельно.

5
задан Otto 27 December 2008 в 04:11
поделиться

3 ответа

Вы могли бы хотеть посмотреть на пересадки ткани мерзавца. Некоторая информация доступна здесь: http://git-scm.com/docs/git-filter-branch

в основном то, что Вы хотите сделать, должно фальсифицировать родословную.

Вы сделали начальную фиксацию на обеих машинах - давайте назовем их 'baseA' и 'baseB'. Затем Вы создали вторую фиксацию к тому же с обеих сторон - 'secondA' и 'secondB'. То, что Вы хотите сделать, говорят мерзавцу, что 'secondB' не имеет 'baseB' как предка, но вместо этого имеет 'baseA' как родителя.

Вы можете это при помощи пересадок ткани. Например, поместите это в свой .git/info/grafts файл:

secondB baseA

(но затем использование реального SHA). Теперь, если Вы посмотрите в GitX, то Вы будете видеть, что истории соединены. Для внесения изменения постоянным необходимо выполнить ответвление фильтра мерзавца.

Обновление из комментариев

Я не уверен, что Вы сделали 'исправить', хотя это будет работать. Если Вы сделаете то, что Вы сделали, то Вы доберетесь как история:

 BaseA --- SecondA -- .. - ..  - Merge
   \ BaseB --- SecondB ... - .. /

Который будет работать (и слияние успешно выполнится без проблем). Однако то, что немного более хорошо, является этим:

 BaseA --- SecondA -- .. - ..  - Merge
   \ SecondB ... - .. /

который в основном отбрасывает "BaseA" как фиксацию и устанавливает "BaseA" как родителя для SecondB. Это должно быть возможным использованием правила пересадки ткани, которое я сказал Вам.

Для демонстрации этого я создал небольшой репозиторий, который можно загрузить здесь.

При рассмотрении истории в GitX ("gitx основной second_master"), Вы будете видеть, что истории разъединяются. При перемещении .git/info / _ файл пересадок ткани к .git/info/grafts Вы получите вторую, привлекательную историю.

Я также добавил .git/info/wrong_grafts файл. При использовании того Вы получите историю, которую Вы создали.

При рассмотрении SHA в файле пересадок ткани Вы будете видеть, что _grafts файл в основном имеет это:

SecondB BaseA

и wrong_grafts файл имеет это:

BaseB BaseA
4
ответ дан 14 December 2019 в 13:50
поделиться

Как Мерзавец может сказать между тем, что такое "изменение конфигурации" и что такое "редкая вещь"? Есть ли только определенные файлы, которые Вы хотите совместно использовать между этими двумя, как файлы типа пантомимы?

Как насчет того, чтобы разбить общие части в отдельные файлы и использовать Apache Включают директиву и добавляющий какие-либо файлы, которые Вы хотите проигнорировать к .gitignore?

0
ответ дан 14 December 2019 в 13:50
поделиться

Это - интересное использование Мерзавца; я, возможно, использовал его для обработки нескольких веб-сайтов, которые основаны на той же кодовой базе Wiki, но имеют совсем другие конфигурации.

Настройте Мерзавца repo с Вашим начальным содержанием и сделайте отдельные ответвления для каждой машины, которые содержат ее текущую конфигурацию. Клон к другой машине и набору каждая машина как удаленный из другого.

Теперь можно внести изменения на одной машине и продвинуть их на ее ответвление по другой машине каждый раз, когда Вы фиксируете их.

Если Вы фиксируете общие элементы отдельно от необщих элементов, Вы можете затем

$ git checkout [localmachine bracnch]
$ git cherry-pick [SHA1 of common commit1]
$ git cherry-pick [SHA1 of common commit2]

И, если Вы не знаете то, что Вы захотите снова использовать до окончания фиксации на одной машине, можно использовать git add --patch щипнуть отдельный diffs от одного ответвления и подготовить их их для посвящения себя другому ответвлению.

Больше чем для двух машин/сайтов Вы могли объединить общие изменения на MASTER и слияние изменяется на MASTER на каждое из ответвлений.

2
ответ дан 14 December 2019 в 13:50
поделиться
Другие вопросы по тегам:

Похожие вопросы: