Проблема с Git при попытке отменить изменения - PullRequest
1 голос
/ 17 мая 2011

я делаю git status:

# modified:   xxx/yyy/something.PNG
# modified:   xxx/yyy/something-l.PNG

, затем git checkout xxx / yyy / что-то .PNG и xxx / yyy / что-то-1.PNG, но когда я делаю git status снова, он снова показывает:

# modified:   xxx/yyy/something.PNG
# modified:   xxx/yyy/something-l.PNG

Я использую Snow Leophard

Спасибо

Ответы [ 3 ]

3 голосов
/ 17 мая 2011

Я вполне уверен, что вы обрезали вывод состояния git.Эти измененные файлы были в разделе «изменения должны быть зафиксированы».Они в указателе (область подготовки);то есть вы, вероятно, в какой-то момент выполняли git add xxx/yyy/something.PNG или, может быть, просто git add . или git add -u.

git checkout <path> проверяет версию данного пути из индекса, а не из текущего коммита.Если вы хотите вернуться к версии из текущего коммита, используйте:

git checkout HEAD xxx/yyy/something.PNG

HEAD относится к текущему коммиту.

2 голосов
/ 17 мая 2011

Возможно, вы уже поставили свои изменения.git diff ничего не показывает, в то время как git diff --staged показывает, что вы изменили файлы.

В этом случае вам придется удалить их, используя git reset HEAD xxx/yyy/something.PNG xxx/yyy/something-l.PNG.

В противном случае другая программа можетизмените файлы.

РЕДАКТИРОВАТЬ: Согласно вашему комментарию ниже, режим файла файлов 755.Похоже, что Windows коснулась их.Попробуйте chmod 644 xxx/yyy/something.PNG.

0 голосов
/ 19 мая 2011

Я решил проблему.Я удалил подпапку .git на /xxx/yyy/, и теперь все в порядке.

...