Отсутствуют файлы после git pull? - PullRequest
2 голосов
/ 07 июля 2010

У меня есть пульт, такой же или похожий на проект rails в моем текущем каталоге. Для синхронизации двух я делаю

git init
git remote add origin blah@blah
git pull

Проблема в том, что некоторые файлы, которые у меня были в моей рабочей копии, были добавлены (т.е. не на удаленном компьютере), поэтому, когда я делаю

git status 

это должно показать кучу неотслеживаемых файлов. Вместо этого я вижу файлы из репо, которые устарели.
Почему он не попросил меня разрешить конфликты в этих файлах? А где мои старые файлы?

Ответы [ 3 ]

3 голосов
/ 07 июля 2010

При слиянии, подразумеваемом в "git pull", должны быть перезаписаны локальные файлы, которые не были зафиксированы.

Я бы предложил эту последовательность:

git init
git add .
git commit -m"local"
git remote add origin blah@blah
git fetch origin

На этом этапе наблюдайте репозиторий с помощью "gitk --all"

Объединить с

git merge remotes/origin/master

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

0 голосов
/ 07 июля 2010

Что если после команд, которые вы сделали выше, вы попытаетесь это сделать?

git checkout blah
git pull origin blah

Я все еще изучаю git, так что я не уверен, но только предположение.(Может понадобиться заменить blah на blah@blah в приведенных выше командах.)

0 голосов
/ 07 июля 2010

Если у вас есть локальное репо (с его рабочим каталогом), вам не нужно ничего 'git init'.

git remote add origin blah@blah
git pull

должно быть достаточно.

Если вы сделали git init, это должно быть в пустом хранилище, куда вы затем импортировали основной контент 'origin'.


У меня не было локального репо, только локальные файлы.

Затем вам нужно сначала добавить их (см. r-mercado s ответ ).

С git pull справочной страницы :

Предупреждение: выполняется git pull (на самом деле, базовый git merge) с незафиксированными изменениями не рекомендуется: хотя это возможно, он оставляет вас в состоянии, от которого трудно отказаться в случае конфликта.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...