Bash-git-prompt: Git 사용자를 위한 유익하고 멋진 Bash 프롬프트
bash 및 fish에 대한 유익한 git 프롬프트
이 프롬프트는 여기에서 찾을 수 있는 'Informative git prompt for zsh'의 포트입니다.
ㄱ |_+_| 현재 git 리포지토리에 대한 정보를 표시하는 프롬프트입니다. 특히 브랜치 이름, 원격 브랜치와의 차이점, 스테이징된 파일 수, 변경 등.
|_+_| 그리고 |_+_| AKS 님이 추가했습니다.
보호된 트위터 계정을 보는 방법
주목! 획기적인 변화!
이 메시지를 이미 사용하고 있다면 업데이트하십시오. |_+_| , 가지고 있다면. 이제 이름이 지정된 함수가 포함됩니다. |_+_| 또는 |_+_| !
참조하십시오 |_+_| 에서 |_+_| 설치 디렉토리의 하위 디렉토리!
이제 기능을 사용할 수도 있습니다. |_+_| . 변수를 정의해야 합니다. |_+_| 그리고 함수를 호출 |_+_| 다음과 같이:
|_+_|이 접근 방식의 장점은 기본 테마와 다른 부분만 지정하면 된다는 것입니다.
변수 |_+_| 이름이 보다 일반적인 자리 표시자로 대체되었습니다. |_+_| , 마지막으로 실행된 명령의 상태로 대체됩니다. 이제 기본적으로 활성화됩니다.
예
프롬프트는 다음과 같을 수 있습니다.
- |_+_|: 브랜치에서 |_+_|, 원격보다 3개 커밋, 1개 파일이 변경되었지만 준비되지 않음
- |_+_|: 브랜치에서 |_+_|, 2개 파일 준비됨
- |_+_|: 브랜치에서 |_+_|, 7개 파일이 변경됨, 일부 파일이 추적되지 않음
- |_+_|: 브랜치에서 |_+_|, 충돌 2개, 파일 3개 변경됨
- |_+_|: 브랜치에 |_+_|, 2개의 숨김 항목
- |_+_|: 가지에 |_+_|; 당신의 브랜치는 3 커밋, 원격은 2 커밋으로 갈라졌습니다. 그렇지 않으면 저장소가 깨끗합니다.
- |_+_|: 어떤 분기에도 없음; 상위 커밋에는 해시 |_+_|가 있습니다. 그렇지 않으면 저장소가 깨끗합니다.
신속한 구조
기본적으로 프롬프트의 일반적인 모양은 다음과 같습니다.
|_+_|기호는 다음과 같습니다.
- 로컬 상태 기호
- |_+_|: 저장소 정리
- |_+_|: 있습니다 |_+_| 준비된 파일
- |_+_|: 있습니다 |_+_| 병합 충돌이 있는 파일
- |_+_|: 있습니다 |_+_| 제거 대기 중인 스테이징된 파일
- |_+_|: 있습니다 |_+_| 변했지만 무대에 오르지 않은 파일
- |_+_|: 있습니다 |_+_| 추적되지 않은 파일
- |_+_|: 있습니다 |_+_| 숨김 항목
- 상류 지점
- 원격 추적 브랜치를 표시합니다.
- 기본적으로 비활성화됨
- GIT_PROMPT_SHOW_UPSTREAM=1로 설정하여 활성화
- 분기 추적 기호
- |_+_|: 리모트보다 |_+_| 앞서 커밋
- |_+_|: 원격 뒤에 |_+_| 커밋
- |_+_|: 분기 분기, 기타 |_+_| 커밋, 당신의 |_+_| 커밋
- |_+_|: 로컬 분기, 원격으로 추적되지 않음
- 분기 기호:
브랜치 이름이 콜론 |_+_|으로 시작하면 브랜치가 아니라 실제로 해시임을 의미합니다(브랜치 이름을 해시처럼 지정하지 않는 한 꽤 명확해야 합니다 :-).
설치
Mac OS X에서 Homebrew를 통해
실행 |_+_|
실행 |_+_| 마지막 안정 릴리스 또는 |_+_| 저장소에서 직접 최신 버전
이제 |_+_|에서 파일을 소싱할 수 있습니다. 다음과 같이:
|_+_|힘내 복제를 통해
- 이 저장소를 홈 디렉토리에 복제하십시오.
|_+_|에 추가:
|_+_|생선 껍질에 설치
저장소를 ~/.bash-git-prompt 이외의 디렉토리에 복제한 경우 ~/.config/fish/config.fish 의 __GIT_PROMPT_DIR 을 해당 경로로 설정하십시오.
fish_config GUI에서 옵션으로 설치하려면
|_+_|웹 구성의 프롬프트 탭에서 선택 항목으로 bash-git-prompt를 설치합니다. 이것을 선택하면 ~/.config/fish/functions/fish_prompt.fish에 복사됩니다.
우분투 20.04 호스트 이름 변경
- 당신은 또한 할 수 있습니다
현재 프롬프트를 bash-git-prompt로 직접 덮어쓰려면
.bashrc에 대한 모든 구성
|_+_||_+_|를 설정할 수 있습니다. 변수 |_+_| 또는 |_+_| 리포지토리에 추적되지 않은 파일이 많은 경우 작업 속도를 높일 수 있습니다. 빌드 아티팩트를 git 리포지토리의 하위 디렉터리 구조에 배치하는 빌드 시스템의 경우일 수 있습니다. |_+_|로 설정 .gitignore에 나열된 파일을 포함하여 추적되지 않은 모든 파일을 계산합니다.
- |_+_| git 저장소에 저장하고 테스트해보세요!
테마
이제 대부분의 설정이 테마 파일에 저장됩니다. 테마를 선택하려면 변수 |_+_| |_+_|에 있는 테마의 이름으로 확장자 없이 |_+_| 이와 같이:
|_+_|설정하면 |_+_| |_+_|로 변경한 다음 |_+_| 홈 디렉토리에서 사용됩니다. 이 파일은 이제 |_+_| 명령으로 생성할 수 있습니다. 기본 테마의 이름이 생략되거나 테마 파일이 없으면 기본 테마가 사용됩니다. 이미 커스텀 |_+_| 홈 디렉토리에 오류 메시지가 표시됩니다.
|_+_|로 사용 가능한 테마 목록을 표시할 수 있습니다. (현재 테마가 강조 표시됨)
를 생략하면 |_+_| 변수, 기본 테마가 사용되거나 사용자 지정 테마가 있는 경우 |_+_| 홈 디렉토리에 있는 경우 사용자 정의 테마가 사용됩니다.
우분투 테마
우분투는 일부 문자에 약간 더 많은 간격이 필요하므로 자체 테마가 있습니다.
이들은 |_+_|로 나열할 수 있습니다.
|_+_|테마 구조
참조하세요 |_+_| |_+_|에 설치 디렉토리의 하위 디렉토리!
테마는 함수 |_+_|로 구성됩니다. 이는 적어도 변수 |_+_| 고유한 테마 식별자와 |_+_| 함수 호출 다음과 같이:
|_+_|이 접근 방식의 장점은 기본 테마와 다른 부분만 지정하면 된다는 점입니다.
|_+_|에서 커스텀 테마를 사용하실 경우 |_+_|로 설정해주세요.
모바일 애니메이션 스트리밍 사이트
추가 사용자 정의
|_+_|를 정의할 수 있습니다. 그리고 |_+_| 프롬프트를 조정합니다.
기본 색상은 |_+_|에서 정의되며 |_+_|에서 제공합니다. 다양한 git 상태에 사용되는 색상은 |_+_|에 정의되어 있습니다. 이 두 파일은 모두 $HOME에 |_+_| 접두사. 또한 |_+_|에 배치할 수 있습니다. 선행 |_+_| 없이. 기본값은 |_+_| 예배 규칙서.
|_+_|, |_+_|, |_+_|를 사용할 수 있습니다. 그리고 |_+_| 당신의 |_+_| 프롬프트를 조정합니다. |_+_|를 설정하여 프롬프트의 시작과 끝을 재정의할 수도 있습니다. 그리고 |_+_| |_+_|을 소싱하기 전에.
현재 git repo 정보는 스크립트 |_+_|로 가져옵니다.
|_+_|를 정의할 수 있습니다. 프롬프트를 동적으로 조정하는 기능.
|_+_||_+_| 내에서 사용할 수 있는 두 가지 도우미 함수가 있습니다.
- |_+_| - 창 제목을 주어진 문자열로 설정합니다(OS X 또는 Ubuntu와 같은 XTerm 유형 터미널에서 작동해야 함).
- |_+_| - 현재 터미널 너비에 맞게 잘린 현재 PWD를 반환하는 함수입니다. 잘라낼 길이를 매개변수로 지정합니다. 그렇지 않으면 기본값은 터미널 너비의 1/3입니다.
git 저장소에 있는 경우에만 git 프롬프트를 표시하려면 |_+_| gitprompt 스크립트를 소싱하기 전에
축약된 |_+_| 프롬프트에서 |_+_|를 설정하여 자리 표시자 설정 |_+_| 당신의 |_+_|에. 또한 |_+_| 그래서 |_+_| 리모트가 있는 경우 잘 구분되고 리모트가 없는 경우 사용자 이름/repo 부분이나 구분 기호가 표시되지 않습니다. 테마 보기 |_+_| 예를 들어.
프롬프트 시작 부분에 자리 표시자 |_+_| 모든 프롬프트 템플릿에서. 이제 기본 테마에서 기본적으로 활성화됩니다.
|_+_|종료 코드도 표시하려면 자리 표시자 |_+_|를 사용할 수 있습니다. 안으로 |_+_| 또는 |_+_| 당신의 |_+_|에:
|_+_|이제 |_+_|를 설정하여 전역적으로 원격 저장소 가져오기를 비활성화할 수 있습니다. .bashrc에서 또는 리포지토리별로 |_+_| 내용 |_+_| git 저장소의 루트에 있습니다.
|_+_|라는 파일을 생성하여 리포지토리를 완전히 무시할 수도 있습니다. 내용 |_+_| git 저장소의 루트에 있습니다.
추적되지 않은 파일이 많은 리포지토리가 있는 경우 git 프롬프트가 매우 느려질 수 있습니다. |_+_|를 설정하여 리포지토리별로 추적되지 않은 파일 표시를 비활성화할 수 있습니다. 당신의 |_+_| 저장소에서 또는 |_+_|
하위 모듈 계층 구조가 깊은 리포지토리가 있는 경우 성능에도 영향을 미칠 수 있습니다. |_+_|를 설정하여 리포지토리별로 하위 모듈의 변경 사항 검색을 비활성화할 수 있습니다. 당신의 |_+_|
|_+_| 함수를 사용하여 git 프롬프트에서 도움말을 얻을 수 있습니다. 예는 |_+_|로 사용할 수 있습니다. 사용 가능한 모든 명명된 색상 목록은 |_+_|에서 사용할 수 있습니다.
|_+_|에 의해 제공되는 파일을 변경하는 경우 이 명령을 실행해야 다음 프롬프트 업데이트에서 모든 파일을 찾아 새로 제공할 수 있습니다.
|_+_|- 다음을 실행하여 gitprompt를 비활성화/활성화할 수 있습니다.
즐기다!
대체 RPM 설치
이 프로젝트는 RHEL 및 클론에서의 설치를 단순화하기 위해 RPM 사양을 제공합니다. RPM에서 설치하려는 경우 먼저 다음 절차에 따라 처음부터 RPM을 빌드할 수 있습니다.
와우네로 구매처
- 이 리포지토리를 복제하고 버전 번호로 릴리스에 태그 지정
- 다음 명령을 실행하여 tarball을 만듭니다.
- RHEL 또는 클론 호스트에 로그인하고 다음을 실행합니다.
그런 다음 '~/rpmbuild/RPMS/noarch'에서 rpm을 게시하거나 설치할 수 있습니다.
(이 블로그 게시물의 독창적인 아이디어).
누구세요?
원래 bash-git-prompt의 현재 관리자는 Martin Gondermann 입니다.
기여
기여하고 싶다면 up-for-grabs 레이블이 있는 문제를 찾을 수 있습니다. 다른 사람들이 알 수 있도록 문제에 대해 수정하고 싶다는 의견을 남겨주세요. 라벨이 '사용됨'입니다.
풀 리퀘스트를 환영합니다. 프로젝트에 도움이 된다고 생각되면 확인하고 병합하겠습니다.
기부
Flattr을 통해 팁을 받습니다.
저자: Magicmonty
소스 코드: https://github.com/magicmonty/bash-git-prompt
라이선스: BSD-2-Clause 라이선스
#git #bash