#git
#git
Вопрос:
Я использую ubuntu, и недавно я пытался обновить git с моей текущей версии 2.28 до последней версии 2.29.2, используя инструкции здесь https://git-scm.com/book/en/v2/Getting-Started-Installing-Git и мне не удалось установить «docbook2X», который необходим для завершения установки этой версии git.
итак, моя проблема сейчас в том, что мой git, похоже, сейчас не работает должным образом. На моем компьютере есть репозиторий, где, если я попытаюсь выполнить проверку в другую ветку, произойдет сбой. таким образом, в основном, когда он пытается выполнить «проверку git», он внезапно останавливается и возвращает «Ошибку шины (сброс ядра)»
Поэтому, когда я проверяю с помощью «git status», некоторые файлы выглядят измененными командой git checkout, но git не изменил репозиторий
поэтому я удаляю .git/index.lock, а затем запускаю git restore. чтобы восстановить, затем снова очистить каталог, повторите процесс и получите тот же результат. Так что, по сути, я застрял на одной ветке и не могу перейти на другую.
Любая помощь будет высоко оценена
Комментарии:
1. Это указывает на то, что что-то не так — либо ошибка в Git, либо что-то не так с компьютером (аппаратное или программное обеспечение: может быть плохая память, плохая библиотека и т. Д.). Если вы создали свой собственный Git с нуля, вы можете попробовать создать его в режиме отладки и посмотреть, сможете ли вы таким образом отследить проблему. Обычно большинство людей просто устанавливают готовый пакет Git. Есть ли какая-то особая причина, по которой вам нужен 2.29.2 вместо 2.28?
2. Я думаю, что с одним репозиторием git что-то не так, потому что другие репозитории git, похоже, работают нормально. Похоже, в этом репозитории есть несколько файлов с ошибками, и я не уверен, как их исправить. Кроме того, мне нужна была версия 2.29.2 из-за какого-то инструмента, который я использую, но, похоже, он также не был установлен, когда я проверяю git —version Я все еще на 2.28, но процесс установки не вернул никаких ошибок.
3. Ах, тогда это, вероятно, неправильная установка: если вы сказали 2.29.2 установить себя и частично переписали версию системы 2.28 на 2.29.2, версии 2.28, которые вы используете, вызывают части 2.29.2 для выполнения задач и сбиты с толку их ответами. Обратите внимание, что когда вы создаете Git, вы указываете ему, где ожидать, что он будет установлен; когда вы позже устанавливаете Git, вы указываете ему, где установить. Вы должны соответствовать этим двум шагам.
4. Как вы думаете, мне следует попытаться найти установочные файлы для git 2.29.2 и удалить его? Каковы ваши рекомендации по решению этой проблемы?
5. Что ж, если вы действительно настроены на запуск 2.29.2, соберите его снова и переустановите, но соберите (и установите) с конфигурацией, которую используют люди Ubuntu, что бы это ни было.
Ответ №1:
Обновление: вот как я решил эту проблему.
-
К счастью, я удалил старый репозиторий, все мои ветки имели удаленное происхождение, поэтому я не потерял ни одной своей работы.
-
Я повторно клонировал репозиторий.
-
Затем я извлек каждую из ветвей по отдельности.
-
После получения каждой ветки я затем выполняю проверку в этой конкретной ветке, чтобы подтвердить, что теперь я могу выполнить проверку в этой ветке без получения ошибки шины.
git clone the_new_repo/ cd the_new_repo/ git fetch "https://github.com/my_username/project.git" "Branch_To_be_fetched" git checkout Branch_that_was_fetched
К счастью, снова все мои удаленные версии были обновлены с изменениями локальной версии, поэтому я не потерял никакой работы. Я считаю, что проблема возникла в результате повреждения файлов в .git
папке. Я не смог найти способ отладки этих ошибок, поэтому я выбрал delete and reclone the repo
решение.
Ответ №2:
Удалите / удалите git и установите его снова.
Шаг 1:
sudo apt-get remove --auto-remove git
Шаг 2:
sudo apt install git-core