Инструменты пользователя

Инструменты сайта


soft:git:uderzhanie_lokalnogo_fajla_pri_proverke_statusa

Различия

Здесь показаны различия между выбранной ревизией и текущей версией данной страницы.

Ссылка на это сравнение

soft:git:uderzhanie_lokalnogo_fajla_pri_proverke_statusa [07.12.2009 10:39] (текущий)
Строка 1: Строка 1:
 +====== Удержание локального файла при проверке статуса ======
  
 +===== Описание =====
 +
 +Допустим, у нас есть следующий репозитарий:
 +
 +<code console>
 +$ git ls-files
 +file_for_hold
 +file_for_sync
 +$
 +</code>
 +
 +Изменяем оба файла:
 +<code console>
 +$ echo 'test' | tee file_for_hold > file_for_sync
 +$ head *
 +==> file_for_hold <==
 +test
 +
 +==> file_for_sync <==
 +test
 +$ git status
 +# On branch master
 +# Changed but not updated:
 +#   (use "git add <file>..." to update what will be committed)
 +#   (use "git checkout -- <file>..." to discard changes in working directory)
 +#
 +# modified:   file_for_hold
 +# modified:   file_for_sync
 +#
 +no changes added to commit (use "git add" and/or "git commit -a")
 +$
 +</code>
 +
 +git хочет закоммитить оба файла. Т.к. file_for_hold у нас уже в репозитории, то его добавление в git-ignores тем или иным способом не подходит.
 +
 +===== Решение =====
 +
 +Необходимо обновить данные индекса локального репозитория, чтобы изменения file_for_hold не учитывались:
 +
 +<code console>
 +$ git update-index --assume-unchanged file_for_hold
 +$ git status
 +# On branch master
 +# Changed but not updated:
 +#   (use "git add <file>..." to update what will be committed)
 +#   (use "git checkout -- <file>..." to discard changes in working directory)
 +#
 +# modified:   file_for_sync
 +#
 +no changes added to commit (use "git add" and/or "git commit -a")
 +$
 +</code>
 +
 +Что и требовалось получить.
 +
 +===== Информация =====
 +
 +Источник: [[http://juststuffreally.blogspot.com/2008/10/if-you-have-file-that-lives-in-git.html | Ignoring local changes to tracked files in Git]]
soft/git/uderzhanie_lokalnogo_fajla_pri_proverke_statusa.txt · Последние изменения: 07.12.2009 10:39 (внешнее изменение)