The OpenNET Project / Index page

[ новости /+++ | форум | теги | ]

форумы  помощь  поиск  регистрация  майллист  вход/выход  слежка  RSS
"git вернуть один файл до состояния последнего commit-а"
Вариант для распечатки  
Пред. тема | След. тема 
Форумы Программирование под UNIX (Public)
Изначальное сообщение [ Отслеживать ]

"git вернуть один файл до состояния последнего commit-а"  
Сообщение от devcoder (ok) on 18-Фев-09, 11:50 
Собственно, как?
$ git-reset <path>
fatal: Failed to resolve 'path' as a valid ref.
$ git-reset HEAD <path>
тоже не
Высказать мнение | Ответить | Правка | Cообщить модератору

 Оглавление

Сообщения по теме [Сортировка по времени | RSS]


1. "git вернуть один файл до состояния последнего commit-а"  
Сообщение от phpcoder email(??) on 18-Фев-09, 12:01 
>Собственно, как?

Попробуйте так:

- откатили изменения, сделанные последним коммитом для конкретного файла
  
  git diff HEAD^..HEAD file | patch -p1 -R

- "перекоммитили" последний коммит заново, с учетом откаченного файла

  git commit -a --amend

Высказать мнение | Ответить | Правка | Наверх | Cообщить модератору

2. "git вернуть один файл до состояния последнего commit-а"  
Сообщение от devcoder (ok) on 18-Фев-09, 13:55 
>[оверквотинг удален]
>
>Попробуйте так:
>
>- откатили изменения, сделанные последним коммитом для конкретного файла
>
>  git diff HEAD^..HEAD file | patch -p1 -R
>
>- "перекоммитили" последний коммит заново, с учетом откаченного файла
>
>  git commit -a --amend

Да, такой вариант сработает, но для чего же тогда
git-reset [--mixed] [-q] [<commit>] [--] <paths>...


Высказать мнение | Ответить | Правка | Наверх | Cообщить модератору

3. "git вернуть один файл до состояния последнего commit-а"  
Сообщение от Andrey Mitrofanov on 18-Фев-09, 14:10 
>Собственно, как?

git checkout HEAD^ file                                                            
/ версия файла --> в рабочую директорию

git commit --amend file
/ в последний коммит <-- "эту" версию файла

Высказать мнение | Ответить | Правка | Наверх | Cообщить модератору

4. "git вернуть один файл до состояния последнего commit-а"  
Сообщение от const86 (ok) on 18-Фев-09, 15:51 
>git commit --amend file

или без --amend

Высказать мнение | Ответить | Правка | Наверх | Cообщить модератору

5. "git вернуть один файл до состояния последнего commit-а"  
Сообщение от Andrey Mitrofanov on 18-Фев-09, 20:07 
>>git commit --amend file
>
>или без --amend

Лишний коммит не нужен, если _совсем_ уж не печься об неизменности истории. А это _обычно_ лишнее... Во всяком случае, не думаю, что вопрошающий успел опубликовать HEAD и тысячи со-разработчиков уже склонировали его. И кру-у-уто попользовали. Один лишний файл. %) Могу ошибаться, само собой. ;)

Это было, исходя из предположения, что в вопросе _предполагался_ "кривой" последний коммит с одним "лишним" файлом. Телепатия, да?

Если речь не про оследний коммит, а "просто" положить в раб.дир. "ту версию" файла, то вообще только первая команда нужна.

Если имелось в виду что-то четвёртое (уже рассмотрены три варианта), пятое или шестое, то дальнейшая :-D телепатия -- платно.

Высказать мнение | Ответить | Правка | Наверх | Cообщить модератору

6. "git вернуть один файл до состояния последнего commit-а"  
Сообщение от devcoder (ok) on 18-Фев-09, 21:54 
>Если имелось в виду что-то четвёртое (уже рассмотрены три варианта), пятое или
>шестое, то дальнейшая :-D телепатия -- платно.

Ух-ты сколько версий, ну и впрямь телепат.
Куда пожертвования нести? ;-)

> "git вернуть один файл до состояния последнего commit-а"

Это я кратко зашифровал след.: был некий _последний_ коммит,
после которого я изменил несколько файлов и не коммитил изменения.
Один из файлов я захотел откатить/сбросить до HEAD.
Если никто так и не понял, пойду возьму талончик к мозгологопеду.

Самый простой вариант - git-diff -R file | patch, подсказали выше,
но меня сразу заклинило на git-reset,
который мне так и не поддался и телепаты не помогли :-)
Хотя почему-бы не работать: git-reset <commit> <file>

Высказать мнение | Ответить | Правка | Наверх | Cообщить модератору

7. "git вернуть один файл до состояния последнего commit-а"  
Сообщение от Andrey Mitrofanov on 19-Фев-09, 10:32 
>Куда пожертвования нести? ;-)

Свечку за здравие ОпенНЕТ-а поствь, за неимением http:/openforum/vsluhforumID9/7791.html#1 кассы на. %)

>> "git вернуть один файл до состояния последнего commit-а"
>Один из файлов я захотел откатить/сбросить до HEAD.

Либо телепать, либо быть "слишком умным", сразу оба -- полный крах и того, и этого. :*)

>Самый простой вариант - git-diff -R file | patch, подсказали выше,
>Хотя почему-бы не работать: git-reset <commit> <file>

Потому что reset делает совсем не то.
А совсем то делает - сурпрайз! -

git checkout HEAD file

Высказать мнение | Ответить | Правка | Наверх | Cообщить модератору

8. "git вернуть один файл до состояния последнего commit-а"  
Сообщение от devcoder (ok) on 19-Фев-09, 13:19 
>git checkout HEAD file

Ну вот, другое дело.

Высказать мнение | Ответить | Правка | Наверх | Cообщить модератору

Архив | Удалить

Индекс форумов | Темы | Пред. тема | След. тема
Оцените тред (1=ужас, 5=супер)? [ 1 | 2 | 3 | 4 | 5 ] [Рекомендовать для помещения в FAQ]




Партнёры:
PostgresPro
Inferno Solutions
Hosting by Hoster.ru
Хостинг:

Закладки на сайте
Проследить за страницей
Created 1996-2025 by Maxim Chirkov
Добавить, Поддержать, Вебмастеру