@hirthwork

Тег git в блоге hirthwork

hirthwork

Дякую тобi Б-же, що в git есть --patch

hirthwork

сделал небольшой рефакторинг. поменялось ≈60 файлов. теперь хочу разбить это на три независимых коммита. внимание вопрос. можно ли как-то в git add указать некий "якорь", чтобы потом можно было закоммитить все staged изменения с этим якорем?

hirthwork

было два файла с кучей дублирующегося кода. написал базовый класс, а те два от него отнаследовал. вроде бы соотношение insertions/deletions должно стремиться к 1/2 справа, а на деле получилось 126 insertions(+), 481 deletions(-) и вот как такое соотношение могло получиться я не очень понимаю

hirthwork

какие аналоги vimdiff есть? сосноль, плиз

hirthwork

git difftool HEAD:govno.cpp 'HEAD^': govno.cpp

hirthwork
hirthwork

Открыл для себя волшебный мир git stash -u

hirthwork

git --no-pager diff --word-diff=color --word-diff-regex=\\S+

hirthwork

А вы тоже сначала накапливаете локально дюжину-две коммитов, а потому пушите всё это пачкой в репозиторий и кричите на весь опен-спейс «Кто последний — тот и мёржит!»?

hirthwork

пора начинать ненавидеть гит, пока это не стало мэйнстримом

hirthwork

вот у git diff есть --unified=<n>, а как сделать такое же для git checkout --patch?

hirthwork

как в гите сделать чтобы автоматически чистилась билдовая папка, когда свитчу ветку или чекаучу тэг?

hirthwork

посаны, есть вот одна моя библиотека, которая зависит от ещё одной 3rdParty библиотеки. так вот, 3rdParty либа сегодня обновила мажорную версию и более не обратно совместима. я хочу свою либу обновить, чтобы новую либу юзать, но до момента, когда этот светлый час настанет, мне нужно будет две версии поддерживать, вопрос, как это лучше делать в git? завести ветку для новой версии? как в этом случае подтягивать изменения в общую часть кода, не зависящую от 3rdParty? как потом изменения из ветки запихнуть в мастер?

hirthwork

Есть желание слить два git-репозитория в один. Вопрос, как это сделать с сохранением истории обоих реп?

hirthwork

Сижу, себе, хуярю код. Сделал коммит. Решил
запушить. Мне гит говорит «Авотхуй, ты не на ветке».
Делаю git branch, вижу:
* (no branch)
master

ну, ёпт. git checkout master. бля... а где ж мой коммит? как мне его вернуть и
запушить в remote?
Гугление и хождение по SO ничего не дало. Ни слова о том, как вернуть мой
драгоценный (на самом деле хуета редкостная) коммит.
Пришлось делать fgrep -r commit_message .git чтобы найти хэш проёбанного
коммита.

Вопрос: что это было?

hirthwork

потыкал палочкой в gitgutter. пришёл к выводу, что ненужно.

Добавить пост

Вы можете выбрать до 10 файлов общим размером не более 10 МБ.
Для форматирования текста используется Markdown.