Git (Gitkraken) самопроизвольно показывает измененные файлы, когда я не вносил изменений - PullRequest
2 голосов
/ 07 мая 2020

Я не очень хорошо разбираюсь в Git, и я все еще использую Dreamweaver, если это говорит вам что-нибудь о том, где я нахожусь.

У меня есть две ветки веб-сайта, одна для обычных операций (который в настоящее время заморожен, но его необходимо время от времени обновлять, чтобы не отставать от изменений) и один для усеченной версии COVID.

Я переключаюсь с ветки COVID на ветвь Hotfix (обычные операции), внесите изменения в один файл (не в Dreamweaver, а в PDF) и вернитесь в Gitkraken, только чтобы найти одну из следующих вещей:

A) Gitkraken показывает около сотни изменений в Ветка исправлений, которую я, безусловно, не делал, и, похоже, это изменения, которые были внесены в ветку COVID месяцев go. Это происходит не со всеми файлами, только с 80-100 (без рифмы или причины, какие именно). Я не могу понять, как эти изменения, кажется, «просачиваются» из одной ветки в другую, в то время как я просто вношу изменения в один PDF-файл.

ИЛИ

B) Gitkraken показывает десятки новые файлы, которые являются пронумерованными дубликатами существующих файлов («файл. html» дублируется, и новый файл отображается в ветке репо под названием «файл 2 html»). Опять же, это не все файлы, всего пара дюжин (иногда больше).

В любом случае я закрою ветку и создаю новую с того момента, когда я в последний раз видел, как исправление ведет себя так, как ожидалось.

Это делает последнее (B) какое-то время, но поскольку это было действительно неприятностью (я могу удалить несколько дублирующихся файлов), я в основном игнорировал его.

Однако "утечка" изменений потенциально может чтобы нанести вред и уничтожить мою ветку исправлений, и мою способность go чисто вернуться к нормальной версии операционной системы, когда все это закончится. Я с ужасом смотрю на репо и вижу там сотню или больше изменений файлов, которых я не делал. Эта «утечка» началась только сегодня утром, насколько я могу судить, но мне уже пришлось отказаться от двух новых веток. Если я сделаю это снова, это будет соответствовать определению безумия.

Теперь я просто нырнул обратно в Gitkraken после перезапуска системы (Dreamweaver все еще был закрыт, поэтому я могу исключить его из уравнения) и теперь моя ветка COVID показывает такое же поведение в обратном порядке ! 98 Изменения из Hotfix теперь отображаются в ветке COVID.

Я вне себя. Есть ли у кого-нибудь предложения относительно того, что может быть причиной этого? Коррупция? Ошибка пользователя?

Ответы [ 2 ]

1 голос
/ 19 мая 2020

Вы упомянули, что ваше репо помещено в каталог, синхронизированный с iCloud: это определенно причина ваших проблем.

Вы можете:

  • Работать с репо, клонированным в другом месте
  • Отключите синхронизацию c во время работы
  • Если возможно: установите для локального клиента выгрузку изменений из этого каталога, но никогда загрузку их автоматически
1 голос
/ 19 мая 2020

Как и в случае со всеми подобными загадками, лучше всего сузить дерево возможностей с помощью своего рода бинарного поиска.

Вот некоторые отправные точки (и если вам повезет, конечная точка) тесты для удаления целых ветвей из дерева:

  • Загрузите Ma c в безопасном режиме .

    • Если проблема исчезла, следуйте инструкциям в разделе Если проблема не сохраняется в безопасном режиме по предоставленной ссылке.
    • Если он НЕ исчез, я бы пока отложил переустановку ОС. Это рекомендовано разделом . Если проблема не исчезнет в безопасном режиме, раздел и вам, возможно, придется это сделать, но сначала я бы исчерпал другие возможности (например, перечисленные ниже).
  • Создайте клон fre sh в другой папке и делайте там свою работу. Это скажет нам, связана ли проблема с этим c репо.

  • Создайте два бесплатных sh клона в разных папках , один из которых предназначен для каждая ветка. После клонирования и переключения на ветку, для которой этот клон выделен, НЕ переключайтесь снова. Учитывая ваш описанный рабочий процесс, я думаю, что это возможно ... Вы синхронизируете c изменений между репозиториями через центральный сервер.

    Это должно устранить вашу проблему (A). Если это так, это означает, что вы, вероятно, делаете что-то странное при переключении или манипулировании ветвями.

  • Отключить git интеграцию Dreamweaver . Если он был включен, и проблема исчезнет с его отключением, это связано с этой интеграцией или с тем, как вы ее используете.

  • Прекратите использовать GitKraken на данный момент . Либо используйте интеграцию Dreamweaver git, либо научитесь использовать командную строку. Последнее не так уж сложно, особенно если, как кажется, вы не делаете сложных вещей в git.

Я могу придумать больше, но давайте начнем с них.

...