LINUX.ORG.RU

Подскажите альтернативу для git gui с intraline diff

 


0

3

Тулза должна быть максимально похожа на git gui. Следующие фичи git gui для меня максимально важны:

  • Есть возможность делать stage/unstage для отдельных блоков изменений и для отдельных строк
  • Есть отдельные списки для измененных файлов в дереве и содержимого индекса, если в файле часть изменений в индексе а часть нет, то должна быть возможность смотреть эти изменения по отдельности
  • Не тупит на огромных репозиториях с тысячами файлов и кучей изменений
  • Списки файлов находятся сбоку, оставляя большое рабочее пространство для просмотра диффа (а не амбразуру, порезанную сверху и снизу, как в некоторых хипстерских клиентах)
  • Поддерживает Linux :)

И всем git gui хорош, да только нет в нем подстветки изменений внутри строк. Есть ли альтернатива, которая это может, или придется git gui допиливать?

★★★★★

Не знаю на счёт огромных реп, но gitkraken вроде подходит. Минус - проприетарщина, но бесплатно для некоммерческого использования.

Я бы на твоем месте, конечно, пропатчил бы гит гуи. Такую фичу даже в апстрим бы приняли, думаю.

dsxl
()
Ответ на: комментарий от dsxl

Я бы на твоем месте, конечно, пропатчил бы гит гуи. Такую фичу даже в апстрим бы приняли, думаю.

По-любому бы приняли. Но, к сожалению, я не знаю Tcl/Tk и не планирую изучать эту технологию, поэтому придется кого-то нанимать

annulen ★★★★★
() автор топика
Ответ на: комментарий от dsxl

А кракен я пытался попробовать, но у меня на генте он тупо не запустился

annulen ★★★★★
() автор топика

И всем git gui хорош, да только нет в нем подстветки изменений внутри строк. Есть ли альтернатива, которая это может, или придется git gui допиливать?

Запускаешь git gui, открываешь меню Edit→Options. В левом столбце, в параметрах текущего репозитория в настройке «Additional Diff Parameters» добавляешь «–word-diff». Нажимаешь Save. Возможно, придётся закрыть и открыть git gui снова.

i-rinat ★★★★★
()
Ответ на: комментарий от i-rinat

Большое спасибо! git gui выплевывает в консоль ошибки парсинга, но при это все более-менее работает.

Правда формат хотелось бы немного другой, чтобы старая и новая строчка показывались отдельно и в них выделялись различия. Иначе строчки раздувает по горизонтали. Я смотрю там еще --word-diff=porcelain есть, жалко что git gui его не парсит

annulen ★★★★★
() автор топика
Ответ на: комментарий от i-rinat

--word-diff

Решение нерабочее, теперь при попытке застейджить блок или строчку вылетает «corrupt patch».

annulen ★★★★★
() автор топика
Ответ на: комментарий от xaizek

Спасибо, diff-highlight крутая штука. А в tig можно настроить отображение списков файлов сбоку для удобной навигации, или он только одной сплошной портянкой умеет показывать?

annulen ★★★★★
() автор топика
Ответ на: комментарий от xaizek

Эх, diff-highlight не определяет изменения в отступах

annulen ★★★★★
() автор топика
Ответ на: комментарий от annulen

В tig status он по нажатию открывает сплиты. Можно его размер настроить:

:set split-view-width = 75%
xaizek ★★★★★
()
Ответ на: комментарий от beastie

gitup, всё остальное тлен

Это же для макоси

annulen ★★★★★
() автор топика
Ответ на: комментарий от annulen

Из скрипта:

	# If we have mismatched numbers of lines on each side, we could try to
	# be clever and match up similar lines. But for now we are simple and
	# stupid, and only handle multi-line hunks that remove and add the same
	# number of lines.
xaizek ★★★★★
()
Ответ на: комментарий от xaizek

Елки-палки. С одной стороны хорошо, что скрипт не на тикле, но похоже его еще пилить и пилить

annulen ★★★★★
() автор топика
Ответ на: комментарий от RazrFalcon

git diff не подходит, так как в нем интерфейса для stage/unstage :)

diff-so-fancy лажается на примере, который я привел выше

annulen ★★★★★
() автор топика
Ответ на: комментарий от annulen

Ну у неё самый навороченный diff. В отличии от QtC, можно редактировать прямо в diff + «стрелки» рисует (как Kompare).

RazrFalcon ★★★★★
()
Ответ на: комментарий от RazrFalcon

Я пробовал CLion, он упал при разборе проекта и был благополучно забыт

annulen ★★★★★
() автор топика
Ответ на: комментарий от RazrFalcon

Может дифф у Идеи и продвинутый, но тема работы с индексолм вообще не раскрыта, даже SmartGit в этом плане лучше. Хотя может это я недопонял чего-то

annulen ★★★★★
() автор топика
Ответ на: комментарий от annulen

Да, я тоже git консольный использую, ибо idea какая-то топорная. Там даже общий diff нельзя посмотреть. Только для каждого файла отдельно.

RazrFalcon ★★★★★
()
Ответ на: комментарий от anonymous

Неохота в генту раст тащить, но попробую

annulen ★★★★★
() автор топика
Ответ на: комментарий от anonymous

Спасибо, работает. Теперь осталось выяснить, можно ли прикрутить эту штуку к tig вместо diff-highlight

annulen ★★★★★
() автор топика
Последнее исправление: annulen (всего исправлений: 1)
Вы не можете добавлять комментарии в эту тему. Тема перемещена в архив.