48 lines
3.0 KiB
Markdown
48 lines
3.0 KiB
Markdown
---
|
||
title: Override Local Files with Git Pull
|
||
localeTitle: Переопределение локальных файлов с помощью Git Pull
|
||
---
|
||
# Когда вам нужно перезаписать локальные файлы?
|
||
|
||
Если вы чувствуете необходимость отбросить все свои локальные изменения и просто перезагрузите или перезапишите все с помощью копии из удаленной ветви, вы должны следовать этому руководству.
|
||
|
||
Важно: если у вас есть локальные изменения, они будут потеряны. С помощью или без опции, любые локальные фиксации, которые не были `--hard` , будут потеряны.
|
||
Если у вас есть файлы, которые не отслеживаются Git (например, загруженный контент пользователя), эти файлы не будут затронуты.
|
||
|
||
## Рабочий процесс Overwrite:
|
||
|
||
Чтобы перезаписать локальные файлы, выполните следующие действия:
|
||
```
|
||
git fetch --all
|
||
git reset --hard <remote>/<branch_name>
|
||
```
|
||
|
||
Например:
|
||
```
|
||
git fetch --all
|
||
git reset --hard origin/master
|
||
```
|
||
|
||
## Как это работает:
|
||
|
||
`git fetch` загружает последние данные с удаленного устройства, не пытаясь объединить или переустановить что-либо.
|
||
|
||
Затем сброс git сбрасывает ведущую ветвь на то, что вы только что выбрали. Опция `--hard` изменяет все файлы в рабочем дереве в соответствии с файлами в `--hard` `origin/master` файле.
|
||
|
||
## Дополнительная информация:
|
||
|
||
Стоит отметить, что можно поддерживать текущие локальные коммиты, создавая ветку от `master` или любой ветки, с которой вы хотите работать до сброса:
|
||
|
||
Например:
|
||
```
|
||
git checkout master
|
||
git branch new-branch-to-save-current-commits
|
||
git fetch --all
|
||
git reset --hard origin/master
|
||
```
|
||
|
||
После этого все старые коммиты будут храниться в транзакциях `new-branch-to-save-current-commits` . Однако незавершенные изменения (даже поставленные) будут потеряны. Удостоверьтесь в том, чтобы прикрыть и совершить все, что вам нужно.
|
||
|
||
## Attribution:
|
||
|
||
_Эта статья основана на вопросе переполнения стека [здесь](http://stackoverflow.com/questions/1125968/force-git-to-overwrite-local-files-on-pull/8888015#8888015)_ |