мастер происхождения git pull не работает должным образом - PullRequest
0 голосов
/ 15 октября 2019

(Будучи новичком, я не утверждаю, что он не работает правильно, очевидно, есть проблемы с моим пониманием, поэтому слово ожидаемо) ...

Позвольте мне объяснить правильно .... Допустим, я клонируюgit repo с 10 файлами внутри него.

В настоящее время, поскольку я только что клонировал, и моя локальная копия, и репозиторий github точно такие же.

Теперь я делаю два изменения - одно в моем репозитории github. и другие в моей локальной копии. например. А) Я добавил файлы 11 и 12 в мое репозиторий github . B) Я удаляю файл 9 из моей локальной копии.

Теперь я хочу, чтобы моя локальная копия синхронизировалась с моим репозиторием github так, чтобы она точно отражала его (в основном это то же состояние, если бы яудалил мою локальную копию и заново ее скопировал)

т.е. A) он должен добавить новые файлы 11 и 12 из git repo B) он должен вернуть файл 9, присутствующий в git repo

После поиска в Googleнемного, я обнаружил, что мы можем использовать мастер происхождения git pull , чтобы обновить нашу локальную копию репозитория, но, выполнив это, сказал - уже в актуальном состоянии ...

gitНа пульте -v указывалось удаленное -origin, указывающее на мое репозиторий на github, так что отсутствие удаленности не является проблемой ..

Я предполагаю, что что-то упустил. Какой будет правильная команда для выполнения двух задач, о которых я упоминал выше.

Ответы [ 2 ]

1 голос
/ 15 октября 2019

Чтобы сбросить локальное хранилище в соответствии с удаленным, отбрасывая при этом любые незафиксированные изменения (и, возможно, потеряв некоторые коммиты, чтобы они могли быть отброшены будущей сборкой мусора), вы можете сделать:

git fetch origin
git reset --hard @{u}

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

0 голосов
/ 15 октября 2019

У меня есть несколько вопросов:

1: Что вы подразумеваете под добавлением 2 файлов в git repo?

2: Вы сделали "git add filename"?

3: Вы имеете в виду несколько новых файлов, присутствующих в вашем репо после того, как вы клонировали его?

Согласно моему пониманию, сначала вы должны добавить свои изменения, т.е. удалить файл9, используякоманда -

git add 'имя файла'

git commit -m "comment"

git push

А затем - мастер происхождения git pull ИЛИ gitслияние

Теперь на нем будут отображаться новые дополнения к вашему репо или конфликты слияния.

Вам необходимо разрешить эти конфликты слияния, чтобы синхронизировать ветку с репо.

...