Показать сообщение отдельно
Старый 30.03.2010, 10:51   #8
Anti
Пользователь
 
Аватар для Anti
 
Регистрация: 12.03.2010
Адрес: Беларусь
Сообщений: 54
Сказал(а) спасибо: 8
Поблагодарили 24 раз(а) в 17 сообщениях
Записей в дневнике: 1
Anti На верном пути
Отправить сообщение для Anti с помощью ICQ Отправить сообщение для Anti с помощью Skype™
По умолчанию

Самой короткий и удобный вид лога.
Код:
git log --format=oneline
Как удалить патч, если он уже "глубоко" в древе изменений.
1ый вариант (простой):
Код:
git revert <hash>
Как найти хэш коммита смотрите ниже.

2ой варинт (замысловатый):
  1. Находим нужный к удалению коммит в логе, смотрим первые 6 знаков хешкода с помощью выше указанной команды.
    Я для своего репо имею следующее:
    Код:
    Admin@MICROSOF-5E78BF /d/Mangos/MyMangos (master|AM)
    $ git log --format=oneline
    cec0160170f296a5b0b881c4c189585894e16566 Imporovment in prev commit.
    4777a341ed4215a7b53e5da032b3128592b8065a Player can't go in instance if encounte
    07b0ab09189cb4fe145d78a65b208b50fa1c1b4e Cosmetic fix.
    8e654624499e5f2a555698ecac262af06a068532 Merge branch 'master' of git://github.c
    ca6696c4006ce664597f2846beb9a3949c7a9a87 [patch 119] Fixed spell 67356. Patch pr
    5b2d06169358a311007240c04c68f28e92356afc Delete useless code.
    a73e510e58f3674992e6f785b02fbf5d922475cb [9629] Replace some PQuery/PExecute by
    c9c99ecb428c3b823bcbc4eea9509dc91cb34755 Add loot rolling for chests.
    78b56805f8593e1c9be463d01748a3d4bef58ada [9628] Fix typo from [8408].
    723e09656c51f3fe38c7699ad735dcd00300ddad [9627] Make mail load async.
    cd9a7b2feb486072e1fa3a6f7abc04d454156972 [9626] Fix one wrong cast case and simp
    2c46a1c25d92d095a4426796b92737f9be13b9a4 [9625] Add absent empty lines in end of
    c7e87337241236af311e30bfda1e0c83decac0a5 [9624] varargs list (...) auto promote
    e3b9a113088a610c2386769d823c08ebd57fcd8d [9623] Fixed typo in mangos.conf commen
    b2987eca678d476a3fb43f1a9eb82508d88f7e32 [9622] Add keys for gameobject table.
    d27800585ecafcd75a27b2feed198609d2c5102f [9621] Typo in CastSpell.
    3351bb69c088b6782931cdb6f18e16563894871c Merge branch 'master' of git://github.c
    3167eb522165901ad5fa3d581aee9cb0218f7d33 Fix typo.
    1d93647bdbc1f637642bedaea0eaee088c2b7cc1 Disallow using of 2 potions inone time.
    31c6c3bedaef8d1def07ff45abbad29a606d2748 [9620] Resolve linking problems for scr
    de9282080e2bd4041cbe2af190c26a3ac7b7dac9 [9619] Reset more UNIT_FIELD_FLAGS at l
    4f75ef6813a896e75c9116c70e8b048992e6951a [patch 118] Fixed spell 53551 and ranks
    40a3533a1b4025fa5b9a06f9f1b556773d136f42 [patch 117] Fixes passed roll that was
    Мне нужно удалить c9c99ecb428c3b823bcbc4eea9509dc91cb34755
  2. Делаем следующее
    Код:
    git show c9c99e > tmp.patch
    Этой командой мы вызываем лог изменений определённого коммита и помещаем его в временный файл, либо куда-то ещё.
    ВАЖНО! ">" - есть вызов потока. В данном случае StreamOut. Потоки универсальны и могут использоваться для занесения любых выводов в файл. Если интересно, можете попробовать следующее.
    Код:
    git log --format=oneline > changelog.log
  3. И так после краткого отвлечения вернёмся к нашему коммиту, который надо удалить.
    Собственно удаляем изменения.
    Код:
    Admin@MICROSOF-5E78BF /d/Mangos/MyMangos (master|AM)
    $ patch -D -p1 < tmp.patch
  4. Далее нужно закомитить изменения например с помощью
    Код:
    Admin@MICROSOF-5E78BF /d/Mangos/MyMangos (master|AM)
    $ git commit -asm "Revert changes in c9c99e.

Последний раз редактировалось Anti; 04.04.2010 в 10:53.
Anti вне форума   Ответить с цитированием