Подтвердить что ты не робот

Перейти к следующему измененному файлу в git diff?

Я допустил ошибку в обновлении проекта Visual Studio с 2008 по 2010 год без предварительной проверки моих предыдущих изменений. Из-за этого у меня есть огромный сгенерированный системой файл (10k + lines), который изменил каждую четвертую строку.

Я обычно довольно хорошо разбираюсь в материалах, поэтому обычно я просто использую клавишу "вниз" для прокрутки моих изменений. В этом случае для прокрутки изменений в системном сгенерированном файле потребуется несколько жизней.

Есть ли способ перейти к следующему измененному файлу после того, как вы сделали git diff, чтобы вам не пришлось прокручивать каждое изменение в каждом файле?

4b9b3361

Ответ 1

По умолчанию git diff выводит свой вывод через less. Таким образом, вы можете использовать команды less для поиска следующего заголовка. Введите /^diff и нажмите Enter, чтобы перейти к следующему файлу.

Ответ 2

Для других полезных команд введите h для справки (находясь в git diff, который находится в less).

В частности:

                           JUMPING

  g  <  ESC-<       *  Go to first line in file (or line N).
  G  >  ESC->       *  Go to last line in file (or line N).
  p  %              *  Go to beginning of file (or N percent into file).
  t                 *  Go to the (N-th) next tag.
  T                 *  Go to the (N-th) previous tag.
  {  (  [           *  Find close bracket } ) ].
  }  )  ]           *  Find open bracket { ( [.
  ESC-^F <c1> <c2>  *  Find close bracket <c2>.
  ESC-^B <c1> <c2>  *  Find open bracket <c1>

Ответ 3

Я предлагаю вам использовать tig. Это интерфейс curses для git, и очень хороший.

С tig status вы можете увидеть статус индекса и нажав Enter на любом из файлов, вы увидите его diff. h показывает меню справки, но это интерфейс на основе vi-ярлыков.

Я думаю, что в любом дистрибутиве на основе debian вы можете просто apt-get install его, или вы можете сделать его со связанного сайта.

Ответ 4

Другой вариант - вызвать команду update-index и сказать ей, чтобы сделать вид, что один гигантский файл не изменился. Здесь более полный пример здесь.