Хорошо. Ниже приведена стратегия, которой я бы следовал. Перед этим удалите .gitignore из вашего проекта. Теперь ваше рабочее дерево и область подготовки будут чистыми. И локальный, и удаленный репо будут иметь файлы .aux.
Шаг 1: Удалить последний коммит из локального репо.
git reset --soft head~1
Это удалит последний коммит, который эффективно переместит ваши файлы .aux из области коммита в область подготовки.
Шаг 2: Сильно протолкнуть локальное репо в удаленное репозиторий битбакетов.
git push -f origin master
На этом этапе, если вы проверите репозиторий Bitbucket, вы обнаружите, что ваш предыдущий коммит удален. Таким образом, половина ущерба будет восстановлена.
Шаг 3: Переместить все файлы области подготовки в рабочую область.
git reset head
Шаг 4: Добавить .gitignore
в проект.
Шаг 5: Выполните git status
, чтобы проверить, видите ли вы проигнорированные файлы. Я уверен, что вы их не увидите. Однако вы увидите все нужные файлы, которые вы хотели зафиксировать ранее, но получили вместе с ненужными.
Шаг 6: Добавьте все файлы рабочего каталога в область подготовки, зафиксируйте их и отправьте в удаленное хранилище.
git add .
git commit -m "message"
git push origin master