programing

Git 분기 명령이 'less'처럼 작동합니다.

iphone6s 2023. 4. 17. 21:32
반응형

Git 분기 명령이 'less'처럼 작동합니다.

git branch에서는, 「모든 브랜치」의 됩니다.git branch | less.

" " "git branch브랜치 있습니다.를 들어 브랜치 리스트는 다음과 같습니다.ls일용입입니니다

출력은 다음과 같습니다.

여기에 이미지 설명을 입력하십시오.

" " " " " " " " " " " " 는 어떻게 할 수 ?git branch? 출력의 이지 출출 ?? ??? ????

★★★.gitconfig음음음같 뭇매하다

[user]
  email = myemail@mail.com
  name = Dennis H.
[push]
  default = simple
[merge]
   tool = vimdiff
[core]
  editor = nvim
  excludesfile = /Users/dennish/.gitignore_global
[color]
  ui = true
[alias]
  br = branch
  ci = commit -v
  cam = commit -am
  co = checkout
  df = diff
  st = status
  sa = stash
  mt = mergetool
  cp = cherry-pick
  pl = pull --rebase
[difftool "sourcetree"]
  cmd = opendiff \"$LOCAL\" \"$REMOTE\"
[mergetool "sourcetree"]
  cmd = /Applications/SourceTree.app/Contents/Resources/opendiff-w.sh 
  \"$LOCAL\" \"$REMOTE\" -ancestor \"$BASE\" -merge \"$MERGED\"
  trustExitCode = true

Mark Adelsberger의 답변에 대한 코멘트에서 언급되었듯이, 이것은 Git 2.16에서 도입된 기본 동작 변경이었다.

페이지 출력은 다음과 같습니다.git branch디폴트에서는, 다음의 설정을 사용해 백오프 합니다.

git config --global pager.branch false

으로 호출기로 less디폴트)를 사용합니다.

단, 중요한 점은 LESS 환경변수가 설정되지 않은 경우 Git은 이를 FRX로 설정하고 그 결과 명령어 출력이 짧을 때 호출기가 사용되지 않은 경우와 동일한 동작을 한다는 입니다(브런치 수가 적은 경우).사람 보기:

- F 또는 - F 또 --quit-if-one-screen
첫 번째 화면에 전체 파일을 표시할 수 있는 경우 자동으로 종료되지 않습니다.

또는 -R --RAW-CONTROL-CHARS
ANSI 는 "됩니다.[...ANSI 'color' 'color' 'raw' 'color' 'raw' 'color' 'raw' 'color' 'raw' 'color' 'raw' 'color' '

또는 -X " --no-init
단말기로의 termcap 초기화 및 초기화 해제 문자열 전송을 디세블로 합니다.이것은, 디초기화 문자열이 화면을 클리어 하는 등, 불필요한 조작을 실시하는 경우에 바람직할 수 있습니다.

, 「」, 「」, 「」를 가지고 있을 가능성이 높습니다.$LESS설정 하는 것unset LESS는, 「이합니다). 「」를 보관 유지하고, 의하게 할 도 있습니다.$LESS을 「」에해 주세요..gitconfig 삭제:

[core]
    pager = less -FRX

호출기가 정말 싫은 경우 글로벌하게 또는 명령어 단위로 호출기를 비활성화할 수 있습니다(다른 답변 참조).

인정된 답변이 잘못된 것 같습니다.다음 두 가지 문제가 있습니다.

  1. 실제로 동작은 (기본적으로 구성된) bash와 zsh 간에 다릅니다.'문제'는 zsh 아래에만 표시됩니다.
  2. 은 ★★★★★★★★★★★★★★★★★★★★★★★★★★★★git branch항상 호출기를 사용하지 않습니다.출력이 많을 때는 호출기를 사용하지 않습니다.

bash와 zsh의 기본 하지 않고 는 "bash" zsh LESS"로 합니다.-R할 때unset LESSzsh에서는 모든 것이 정상으로 돌아갑니다.

-R동작은 여전히 바람직할 수 있습니다.이 경우 .zshrc에 다음 명령을 추가하여 모든 작업을 계속할 수 있습니다.

export LESS=-FRX

-F'전체 파일을 첫 번째 화면에 표시할 수 있는 경우 자동으로 종료할 수 없습니다.'하지만,-X를 동시에 지정해야 합니다.동시에 지정하지 않으면 화면 가득보다 적은 출력이 표시될 수 없습니다.

의미론 따지려는 건 아니지만, 당신이 받는 행동이 기본입니다.그래서 다른 걸 요구하지 않을 때 받는 거야디폴트로는branch(및 기타 수많은 Git 명령어) 출력을 단말기에 전송할 때 호출기를 사용합니다.

는 " " 를 하여 수 .--no-pager★★★★

git --no-pager branch

했을 , 않은 하지 않는 것이 예를이, 「」와 같은 배관 커맨드를 하는 것을 . 이 경우 다음과 같은 배관 명령어를 사용하는 것을 고려해야 합니다.)git for-each-ref에에보다 git branch

더 .태그리스트를 입수했습니다.less예를 들어 태그를 나열하고 싶을 때 사용합니다.

기본 Git PAGER를 로 변경하여 이 동작을 제어할 수도 있습니다.catless . iTerm을 사용하다나는 내가 원할 때 편집기를 사용하는 것을 좋아한다.

그래서:

git config --global core.pager cat

「 」의 갱신을 하시는 분.~/.gitconfig

[pager]
   branch = false

다음을 수행합니다.

[alias]
  br = !git --no-pager branch

브랜치(미포맷)만 보고 싶다면 git 브랜치를 cat에 파이프로 연결할 수 있습니다.

git branch | cat

https://git-scm.com/book/en/v2/Git-Internals-Environment-Variables

GIT_PAGER는 명령줄에 여러 페이지 출력을 표시하기 위해 사용되는 프로그램을 제어합니다.이 설정이 해제되어 있으면 PAGER가 폴백으로 사용됩니다.

문제를 해결하려면 셸에서 PAGER와 GIT_PAGER를 설정 해제할 수 있습니다.

이 기능은 나에게 적합하다(Windows의 Powershell)

$ git branch | echo

언급URL : https://stackoverflow.com/questions/48341920/git-branch-command-behaves-like-less

반응형