GitHub - вытащить локально существующий проект и заменить существующие файлы, не удаляя несуществующий - PullRequest
0 голосов
/ 06 мая 2019

По некоторым причинам я работаю над одним проектом на двух разных компьютерах.

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

Проблема в том, что в моем проекте есть файлы, которые я надеваюне хочу загружать на GitHub (как учетные данные API, тестовые файлы и т. д.), и я объявил их в моем файле .gitignore.

Я хочу спросить вас, ребята, представьте, что у меня более старая версияпроект на моем компьютере со всеми учетными данными и тестовыми файлами на нем;Я cd к нему и делаю тягу: он просто заменит существующие файлы новой версией, сохраняя файлы, которые не содержатся в коммите GitHub, но находятся в моем локальном репозитории, или он просто разобьет вселокальный репозиторий, учетные данные и тестовые файлы?

Есть ли лучший способ достичь того, чего я хочу, без необходимости копировать несуществующие файлы вручную?

1 Ответ

1 голос
/ 06 мая 2019

Если вы извлекаете из домашнего компьютера, он может сделать одну из следующих вещей -

  1. Успешно вытащить изменения из удаленного в локальное, если git обнаружит, что нет конфликтующих изменений.
  2. Дайте ошибку, если изменения с пульта не могут быть приняты напрямую, т.к. в вашем местном отделении происходят противоречивые изменения.

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

Если в вашем репозитории есть некоторые неподтвержденные файлы, такие как кредиты API, тесты и т. Д., О которых вы упомянули, и если вы выполняете git pull, git выдаст вам сообщение об ошибке и сообщит вам о необходимости зафиксировать или сохранить ваши изменения.

Лучший способ сохранить локальные файлы и сохранить изменения с удаленного компьютера - Stash!

Если вы запустите

git stash

он переместит ваши незафиксированные файлы в область, которая называется Stash. Как только вы это сделаете, ваш локальный репозиторий будет очищен, и вы сможете получать изменения из удаленного. Если вы хотите вернуть свои изменения, вы можете сделать

git stash pop

Это добавит недавно спрятанные изменения в ваш репо! Вы можете хранить столько раз, сколько захотите, и git сохраняет их в списке. Доступ к ней можно получить

git stash list

и вы даже можете выборочно убирать предметы из списка с помощью -

git stash apply stashListNumber

Примечание. Вы сможете хранить только те файлы, которые отслеживаются Git. Если вы добавляете некоторые файлы и не фиксируете их вообще, вы можете сохранить их в своем репозитории, не беспокоясь о каких-либо конфликтах, и все равно можете успешно извлекать их с удаленного компьютера.

Надеюсь, это поможет.

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