Команды git некорректно молчат: git 2.17.1 в Ubuntu 18.04.1 LTS - PullRequest
0 голосов
/ 09 декабря 2018

Я только что обновил свою ОС и git, и такие команды, как git log, git diff и git branch, неверно молчат.

$ git clone git@github.com:ropensci/drake
Cloning into 'drake'...
remote: Enumerating objects: 482, done.
remote: Counting objects: 100% (482/482), done.
remote: Compressing objects: 100% (341/341), done.
remote: Total 35298 (delta 377), reused 205 (delta 136), pack-reused 34816
Receiving objects: 100% (35298/35298), 88.73 MiB | 13.48 MiB/s, done.
Resolving deltas: 100% (28670/28670), done.
$ cd drake/
$ echo 123 > newfile
$ git status
On branch master
Your branch is up to date with 'origin/master'.

Untracked files:
  (use "git add <file>..." to include in what will be committed)

        newfile

nothing added to commit but untracked files present (use "git add" to track)
$ git diff 
$ git log -1
$ git branch
$ git --version
git version 2.17.1
$ cat /etc/lsb-release
DISTRIB_ID=Ubuntu
DISTRIB_RELEASE=18.04
DISTRIB_CODENAME=bionic
DISTRIB_DESCRIPTION="Ubuntu 18.04.1 LTS"

Редактировать: с помощью GIT_TRACE:

$ GIT_TRACE=1 git log -1
08:13:20.414948 git.c:344               trace: built-in: git log -1
08:13:20.417438 run-command.c:646       trace: run_command: unset 
GIT_PAGER_IN_USE; LESS=FRX LV=-c pager

Ответы [ 3 ]

0 голосов
/ 09 декабря 2018

Итак, очевидно, версия 2.20 git была только что выпущена: https://github.com/git/git/releases. Я загрузил ее и установил ее из источника , и теперь я могу видеть всев консоли.Я до сих пор не знаю, что, если вообще что-то не так с git 2.17.

0 голосов
/ 09 декабря 2018

Отсюда довольно ясная проблема:

08:13:20.417438 run-command.c:646       trace: run_command: unset
GIT_PAGER_IN_USE; LESS=FRX LV=-c pager

(я не уверен, почему эта строка разбита на две части, как это).Команда git status, которая работала, была , а не , используя ваш пейджер.git clone также не использовал ваш пейджер.Однако git branch, git diff и git log all do используют ваш пейджер по умолчанию, который, по-видимому, имеет значение pager.

Команда pager или псевдонимв вашей системе, кажется, работает, читая стандартный ввод и ничего не показывая вообще.Следовательно, ветвь master, указанная git branch, разница, если она есть git diff, и список журналов от git log, были съедены этой командой pager и выброшены, так что вам нечего видеть.

Установка новой версии Git, вероятно, изменила ваш пейджер на более распространенную настройку less, вместо этой сломанной pager.

0 голосов
/ 09 декабря 2018

Они в порядке.

Если у вас нет вывода, в терминале ничего не будет.


git status

Вы создали новый файли вы не добавили и не зафиксировали его, поэтому никаких изменений нет.

  • Вы видите этот файл с git status

git diff (no parameters)

Распечатайте различия между вашим рабочим каталогом и индексом.


git log -1

git log -1 должен напечатать последний коммит в вашем журнале.

...