Файлы не обновляются с помощью git pull

Я использую Git для сотрудничества с другими пользователями, но сегодня я не могу получить последние изменения в некоторых файлах, используя «git pull», и я не вижу изменений в «git log».

В чем может быть проблема?


person cao lei    schedule 14.12.2013    source источник
comment
Вы уверены, что они правильно продвинули свою работу?   -  person Jepessen    schedule 14.12.2013
comment
Вроде нечего там получать обновления. Вы уверены, что файлы правильно зафиксированы другим пользователем и в том же репозитории? No Logs не вызывает сомнений в этом направлении.   -  person Aditya    schedule 14.12.2013
comment
Вы уверены, что ваши подчиненные подтолкнули к той ветви, которую вы пытаетесь тянуть?   -  person Balram Tiwari    schedule 14.12.2013
comment
У меня такая же проблема (я единственный, кто работает с этой проблемой). Это сводит меня с ума! Последние несколько дней я выполнял слияние вручную, потому что подтягиваний просто не было. Но ручное слияние вызывает срабатывание всевозможных предупреждений, что пугает всю команду.   -  person SMBiggs    schedule 02.03.2016
comment
Какое у вас сообщение об ошибке или каковы результаты выполнения команды git pull?   -  person Strubbl    schedule 18.06.2020
comment
Со мной такое случалось не раз в git. Это очень странно. Я использую hg более 15 лет, и этого никогда не было.   -  person Iasmini Gomes    schedule 02.07.2020


Ответы (10)


что сработало для меня,

  1. удалить .git папку
  2. скопировать .git из другого репо
  3. сейчас git checkout

Перед удалением вы можете попробовать

git fetch --all 
git reset --hard origin/master

ВСЕГО НАИЛУЧШЕГО

person ganesh    schedule 04.05.2018
comment
Последние два шага (выборка и сброс) у меня сработали. Кстати, копирование .git из другого репо не должно работать, поскольку каждый .git содержит информацию, специфичную для репо, которому он принадлежит. - person Gaurav Singh; 12.06.2019
comment
У меня сработала последняя команда git reset --hard origin / master. - person user85; 12.08.2020
comment
у меня сработали последние 2 команды git fetch --all git reset --hard origin / master :) - person chiperortiz; 25.08.2020

Что сработало для меня,

git reset --hard origin/master

Он показал мне, что некоторые имена файлов были слишком длинными для git, чтобы вытащить их из моего репо, и, следовательно, несоответствие и неправильные сборки.

Итак, я побежал за исправлением и снова сделал полный сброс.

git config --system core.longpaths true

К счастью, это сработало.

person Dish    schedule 29.11.2018
comment
не будет ли это каких-то последствий? - person PatXio; 21.01.2021

В моем случае проблема заключалась в наличии файла index.lock в моей папке .git. Я удалил это, и тяга сработала.

person Alwyn Schoeman    schedule 01.03.2017
comment
По какой-то причине Git не упоминает об этом! - person CBHacking; 06.04.2017

Проверьте свою текущую ветку.

git status
git branch

Если вы не в ветке, значит, вы находитесь в отключенном режиме HEAD, и git pull ничего не объединяет.

git log --all --branches

Это git log поможет убедиться, что вы видите, есть ли новые коммиты в извлеченных ветвях (то есть в ветках удаленного отслеживания) .
Я использую этот псевдоним журнала git для отображения этих коммитов в виде графика.

person VonC    schedule 14.12.2013
comment
Хорошая мысль. Закройте край корпуса. - person Laereom; 16.01.2018

У вас может быть незавершенное слияние, которое предотвращает тягу. Проверьте, выполняется ли фиксация.

person Lucas Czekaj    schedule 14.12.2013
comment
Как вы проверяете, выполняется ли фиксация? - person SMBiggs; 02.03.2016

Я просто хотел добавить еще один случай, когда это могло произойти. Я использовал редкую кассу. По какой-то причине у меня был каталог в моем рабочем дереве, который, как я думал, был включен в разреженную проверку (я думал, что он был указан в .git/info/sparse-checkout), но не был (я удалил его из .git/info/sparse-checkout по какой-то причине, по какой-то причине я сейчас забыл). просто игнорировалось pull, checkout или reset или любыми другими командами. Это было очень запутанно, пока я не начал копировать конфигурацию разреженной проверки в новый, свежий клон и не осознал ошибку.

Это произойдет с вами только в том случае, если вы используете разреженную кассу. Если вы не используете разреженную кассу, этого не произойдет. (Проверьте конфигурацию git, чтобы узнать, включен ли sparseCheckout, и проверьте наличие .git / info / sparse-checkout, но вы бы знали, делали ли вы это, поскольку я думаю, что он в любом случае должен быть настроен пользователем вручную. ) (Погуглите, если вам интересно, что это такое - это простой механизм, позволяющий исключить файлы и каталоги из проверки, которые в противном случае были бы отслежены / извлечены / извлечены и т. Д.)

person Reed Hedges    schedule 19.01.2017

Есть 2 возможных сценария:
1. Если у вас есть учетная запись в Bitbucket, gitlab и т. Д.
Возможно, вам придется сначала выполнить синхронизацию с каталогом вилки, а затем выполнить git pull в локальной ветке. В основном вам нужно переустановить копию вилки, чтобы синхронизироваться с удаленным мастером, и выполнить git pull в вашей локальной копии.
2. Просто попробуйте переустановить локальную рабочую копию, чтобы она была синхронизирована с удаленным мастером.

person Vinod Kumar    schedule 11.11.2019

git reset --hard origin / master

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

person Krishan Gopal    schedule 18.06.2020

надеюсь, что мой комментарий будет кому-то полезен)) у меня была такая проблема. Я использую laravel на ubuntu, поэтому я решил это, сбросив opcache и перезапустив работника очереди.

person fariqa    schedule 03.12.2020

для меня это были коммиты, которые я делал локально. Эти коммиты изменяют то, что я хочу вытащить. Итак, git pull не получает файл из источника

person loser8    schedule 12.01.2021