Прерывание

77
8

У меня было git pull, которое было прервано, и теперь я не уверен, что это испортило мой каталог.git. Могу ли я гарантировать целостность моего git-репо, запустив git fsck --full? Есть ли другие команды, чтобы узнать, не добавлено ли что-то наполовину в каталог?

спросил(а) 2021-01-25T14:54:33+03:00 4 месяца, 3 недели назад
1
Решение
77

Сделайте физическую копию проекта (который будет включать его каталог.git) в другое место, скажем ~/tmp, затем запустите git pull и посмотрите, что он вам скажет. Вы только тянете, и это откидная директория, поэтому вы будете изолированы от изменения чего-либо (пока вы не нажимаете, не будучи уверенным).

Итак, если вы используете каталог приложений: ~/blogger

делать

cd ~                 # "~" means your home directory
mkdir tmp # Make a temporary directory.
cp -r blogger ~/tmp # Copy the project there
cd /tmp/blogger # Go there
git pull # Try a pull to see what happens.

Если действие pull работает нормально, вы будете уверены в своем фактическом содержимом каталога (так что cd вернется к нему сейчас). Если у тяги есть проблемы, сохраните текущий код проекта и попробуйте свежее нажатие и посмотрите, нормально ли это.

например

cd ~
mv blogger old_blogger
# Go to github and click on the copy icon.
git clone [paste - ctrl-v or shift-ctrl-v]
# Now use your old_blogger directory as a source
# for any changes you want to (manually) copy the code from.

Если возникает проблема с новым git pull, подумайте о том, чтобы перейти в каталог проекта и удалить всю структуру .git а затем git init чтобы создать новый репозиторий git, а затем удалить (или переименовать в old_blogger) существующий github, создать его заново и git clone снова git clone затем git add. , git commit и git push. Это обвизуально самый экстремальный ("ядерный") вариант.

ответил(а) 2021-01-25T14:54:33+03:00 4 месяца, 3 недели назад
Ваш ответ
Введите минимум 50 символов
Чтобы , пожалуйста,
Выберите тему жалобы:

Другая проблема