커밋 메시지를 Vim에 작성하고 싶지만 Emacs에서 메시지를 여는 중입니다.
항상 Vim을 사용하도록 Git을 어떻게 구성합니까? 단일 프로젝트뿐만 아니라 전 세계적 으로이 작업을 수행하고 싶습니다.
커밋 메시지를 Vim에 작성하고 싶지만 Emacs에서 메시지를 여는 중입니다.
항상 Vim을 사용하도록 Git을 어떻게 구성합니까? 단일 프로젝트뿐만 아니라 전 세계적 으로이 작업을 수행하고 싶습니다.
답변:
Git에 대해서만 편집기를 설정하려면 다음 중 하나를 수행하십시오 (둘 다 필요하지 않음).
core.editor
Git 설정 에서 설정 하십시오 :git config --global core.editor "vim"
GIT_EDITOR
환경 변수를 설정하십시오 .export GIT_EDITOR=vim
Git 및 기타 프로그램 용 편집기를 설정하려면 표준화 VISUAL
및 EDITOR
환경 변수를 설정하십시오 * :
export VISUAL=vim
export EDITOR="$VISUAL"
* 둘 다 설정해야 할 필요는 없지만 일부 프로그램은 더 정확한 것을 사용하지 않을 수 있습니다 VISUAL
. VISUAL
대EDITOR
참조 .
숭고한 텍스트의 경우 :에 추가하십시오 .gitconfig
. 이것은 --wait
중요합니다 (그것은 숭고한 텍스트를 입력 할 수 있으며 저장 / 닫기 이벤트를 기다릴 것입니다.)
[core]
editor = 'subl' --wait
'subl'은 실행 파일의 전체 경로로 대체 될 수 있지만 일반적으로 올바르게 설치되면 사용할 수 있습니다.
git config --global
개인 (사용자 별) 자식 구성 파일에 작성합니다. Unices에서는입니다 ~/.gitconfig
. 따라서 모든 리포지토리에 대해 구성됩니다.
git commit --amend
-w
는 필요하지 않습니다. -w {scriptout}
나중에 재생할 수 있도록 편집 할 때 입력 한 모든 문자를 저장합니다. 아마 당신은 그것을 혼동 -f
하는 것입니다 빔의 GUI 버전을 호출 할 때 필요합니다. 즉,을 사용 mvim
하면 지정한 편집기가 mvim -f
아닌이어야 mvim
합니다.
붙여 넣기
git config --global core.editor "vim"
당신이하고있는 일을 알고 싶다면. 보낸 사람 man git-commit
:
환경 및 구성 변수
커밋 로그 메시지를 편집하는 데 사용되는 편집기는
GIT_EDITOR
환경 변수,core.editor
구성 변수,VISUAL
환경 변수 또는EDITOR
환경 변수 (순서대로)에서 선택됩니다.
VISUAL
또는을 사용할 수 EDITOR
있지만 확실히 GIT_EDITOR
또는을 사용하지는 않습니다 core.editor
.
우분투와 데비안 (@MichielB 덕분에)에서 다음을 실행하여 기본 편집기를 변경할 수도 있습니다.
sudo update-alternatives --config editor
다음과 같은 메시지가 나타납니다.
There are 4 choices for the alternative editor (providing /usr/bin/editor).
Selection Path Priority Status
------------------------------------------------------------
0 /bin/nano 40 auto mode
1 /bin/ed -100 manual mode
2 /bin/nano 40 manual mode
* 3 /usr/bin/vim.basic 30 manual mode
4 /usr/bin/vim.tiny 10 manual mode
Press enter to keep the current choice[*], or type selection number:
alternatives
시스템은 지원되는 프로그램 유형의 기본값을 관리하는 훨씬 쉬운 방법입니다. 참조 : debian-administration.org/article/91/…
GIT_EDITOR
하고 EDITOR
--ubuntu 작동하지
update-alternatives
는 설치된 모든 편집기를 보여줍니다. Koen에는 Emacs가 설치되어 있지 않습니다.
Windows 7에서 "Sublime"편집기를 추가하는 동안 여전히 오류가 발생했습니다.
빈 커밋 메시지로 인해 커밋이 중단되었습니다.
숭고한 초점을 유지할 수 없었습니다.
이 문제를 해결하기 위해 c : / users / username / 폴더에서 .gitconfig 파일을 열고 큰 따옴표 외부에 --wait 옵션과 함께 다음 줄을 추가했습니다.
[core]
editor = 'F:/Program Files/Sublime Text 2/sublime_text.exe' --wait
Sublime과 비슷한 문제에 직면 한 누군가에게 도움이되기를 바랍니다.
git config --global core.editor "'C:/Program Files/Sublime Text 3/subl.exe' --wait"
C:\Users\YOUR_USERNAME\.gitconfig
[core]
editor = 'C:/Program Files (x86)/Notepad++/notepad++.exe'
git commit
를 누릅니다 Enter
. 메모장 ++가 열립니다.-multiInst
notepad ++ 및 가능하면 적어도 매개 변수로 추가해야 할 수도 있습니다 -notabbar
. git이 파일 편집을 완료했을 때 알지 못하는 것처럼 보이고 영원히 기다리거나 전혀 기다리지 않는 경우이 작업을 수행하십시오.
>git config --global core.editor '"C:/Program Files (x86)/Notepad++/notepad++.exe"'
editor = 'C:/Program Files (x86)/Notepad++/notepad++.exe' -multiInst -notabbar
구분 된 작은 따옴표를 벗어난 매개 변수
이 명령을 실행하십시오 :
$ git config --global core.editor "/Applications/Sublime\ Text\ 2.app/Contents/SharedSupport/bin/subl"
아니면 그냥 :
$ git config --global core.editor "subl -w"
-w
매개 변수를 지원합니다 . 예 : $ git config --global core.editor "code -w"
. 깔끔한 물건
git config --global core.editor notepad.exe
커밋 메시지를 저장하려면 Ctrl+ S를 누르 십시오. 삭제하려면 저장하지 않고 메모장 창을 닫으십시오.
저장 바로 가기를 누른 다음 중단하기로 결정하고 파일-> 다른 이름으로 저장으로 이동 한 다음 열리는 대화 상자에서 "파일 형식으로 저장"을 "모든 파일 (*. *)"로 변경하십시오. "COMMIT_EDITMSG"라는 파일이 표시됩니다. 삭제하고 메모장 창을 닫습니다.
편집 : 또는 더 쉽게 열려있는 메모장 창에서 모든 내용을 삭제하고 저장을 누르십시오. ( 의견 에 mwfearnley 에게 감사드립니다 !)
커밋 메시지 메모장과 같은 작은 쓰기에는 메모장이 가장 적합합니다. 단순하기 때문에 창이 있고 창을 열고 곧 열 수 있습니다. 플러그인과 물건이 많을 때 숭고한 사람들조차도 해고되기까지 1-2 초가 걸릴 수 있습니다.
\r\n
(Windows의 줄 바꿈) 및 \n
(Linux의 줄 바꿈, Git의 기본값 )과 관련 이 있다고 생각합니다 .
core.editor = 'notepad' .git/COMMIT_EDITMSG --wait
기본 편집 메시지를 열고 저장하고 당신은 "다른 이름으로 저장"필요가 없습니다
이것은 vim 이외의 편집기를 연결하고 싶을 수도있는이 질문에 도착한 사람들에게 답을 제공합니다.
Github 의 링크 된 리소스 는 SO에 대한 답변 (이것 포함)이 아니더라도 편집자가 업데이트 될 때 최신 상태로 유지 될 수 있습니다.
Github의 게시물은 git에서 가장 잘 작동하기 위해 각 편집기에 대한 옵션 / 플래그를 포함하여 다양한 편집기에 대해 명령 줄에 입력 할 내용을 정확하게 보여줍니다.
메모장 ++ :
git config --global core.editor "'C:/Program Files (x86)/Notepad++/notepad++.exe' -multiInst -notabbar -nosession -noPlugin"
숭고한 텍스트 :
git config --global core.editor "'c:/Program Files/sublime text 3/subl.exe' -w"
원자:
git config --global core.editor "atom --wait"
위의 명령은 편집기가 Windows 시스템의 기본 디렉토리에 설치되었다고 가정합니다.
명령은 기본적으로 .gitconfig
홈 디렉토리에서 큰 따옴표 사이에 텍스트를 추가합니다 .
Windows 시스템의 홈은이며 C:\Users\your-user-name
사용자 이름은 로그인 이름입니다.
명령 행에서을 입력하여이 디렉토리에 도달 할 수 있습니다 cd ~
.
예를 들어 위의 명령은 다음과 [core]
같이 섹션 아래에 다음 줄을 추가합니다 .
[core]
editor = 'C:/Program Files/sublime text 3/subl.exe' -w
다른 편집기가있는 경우 위의 방법 중 하나를 사용하여 편집기 경로로 바꾸십시오. 최적의 사용법을 위해 플래그가 필요하지 않기를 바랍니다.
이맥스 사용자
.emacs
:
(server-start)
shellrc
:
export EDITOR=emacsclient
git config --global core.editor "emacs -nw"
git config --global core.editor "emacs -nw -q"
곳 -q
에서을 사용 합니다.
Windows에서이 지시 사항을 따르려면 Windows 용 Git 이 설치되어 있는지 확인하십시오 . Windows에서는 Linux와 같은 느낌을 주도록 Git Bash를 사용하고 싶습니다.
먼저 Git에서 편집 할 때 작업을 쉽게하기 위해 Git이 편집기를 호출 할 때마다 설정하려는 특수 프로젝트 설정을 지정할 수 있도록 특수 Sublime Text 프로젝트를 만들고 싶습니다. 예를 들어 대부분의 프로젝트에서 일반적으로 눈금자를 120 자로 설정했지만 Git 커밋 메시지의 경우 git log
또는 을 호출 할 때 터미널에 잘 맞도록 72 자 길이를 원합니다 git lg
.
Sublime Text를 열고 메뉴 "파일" → "새 창"으로 이동하여 새 익명 프로젝트를 만듭니다. 메뉴 "프로젝트" → "다른 이름으로 프로젝트 저장 ..."으로 이동 하여 저장할 장소를 선택하십시오. Linux에서는 파일 이름을 사용하여 Linux 홈 디렉토리에 저장했습니다 .gitconfig.sublime-project
. 따라서 경로는 다음과 같습니다 ~/.gitconfig.sublime-project
.. Windows에서는 홈 디렉토리에도 저장합니다. 예를 들어 C:\Users\MY_USER_NAME\.gitconfig.sublime-project
메뉴 "프로젝트" → "프로젝트 편집"으로 이동하여 프로젝트 설정을 편집하십시오. 다음을 붙여넣고 설정을 저장하십시오. 원하는 경우 프로젝트 설정을 추가로 편집하십시오.
{
// For folder settings help see here: https://www.sublimetext.com/docs/3/projects.html
"folders":
[
],
"settings":
{
// Disables horizontal scrolling if enabled.
// May be set to true, false, or "auto", where it will be disabled for
// source code, and otherwise enabled.
"word_wrap": false,
// Set to a value other than 0 to force wrapping at that column rather than the
// window width
"wrap_width": 0,
// Columns in which to display vertical rulers
"rulers": [72, 50], //72 is recommended by git for commit message content, and 50 for commit titles
// The number of spaces a tab is considered equal to
"tab_size": 4,
// Set to true to insert spaces when tab is pressed
"translate_tabs_to_spaces": true,
},
"build_systems":
[
]
}
이제 .gitconfig
파일 을 편집하여 Git이 사용할 편집기를 설정해야 합니다.
이 사용자 사본은에 있습니다 ~/.gitconfig
. 이 파일을 열고 다음 줄을 추가하십시오. 위에서 만든 Git 프로젝트에 올바른 경로 이름을 사용해야합니다! 을 사용하고 ~/.gitconfig.sublime-project
있습니다.
[core]
editor = subl --project ~/.gitconfig.sublime-project --wait
는 --wait
그것에서 계속하기 전에 파일을 닫을 때까지 기다려야 힘내 강제로 중요하다. --project
라인은 망할 놈의 숭고한 텍스트를 열 때마다 사용자가 연 원하는 프로젝트 숭고한 텍스트를 얘기하는 것이 중요하다.
위의 @digitaldreamer의 답변 ( https://stackoverflow.com/a/2596835/4561887 )에 따라 " subl
실행 파일의 전체 경로로 대체 할 수 있지만 subl
[Sublime]이 올바르게 설치된 경우 일반적으로 [별칭 ]을 사용할 수 있습니다."
Windows의 경우 먼저 배경 정보에 대한 Linux 지시 사항을 읽으십시오. 이제 우리는 거의 동일한 것을 할 것입니다.
(선택 사항 : subl
Git Bash에서 사용할 별명 작성 ) :
텍스트 편집기 (예 : 메모장, 메모장 ++, Sublime Text, Geany 등)를 열고 홈 디렉토리에 ".bash_profile"이라는 파일을 작성하십시오. 따라서 경로는 다음과 같습니다 C:\Users\MY_USER_NAME\.bash_profile
.. 다음을 저장하십시오.
alias subl="/c/Program\ Files/Sublime\ Text\ 3/subl.exe"
그러면 subl
Git Bash에서 Windows 용 Git Bash 별칭을 만들어 Sublime Text를 쉽게 열 수 있습니다. 이 단계는 필요하지 않지만 일반적인 Git Bash 사용에 유용합니다. 이제 subl .
Git Bash에서를 호출 하여 현재 디렉토리에 새로운 Sublime Text 프로젝트를 열 수 있습니다.
(필수) :
다음을 추가 .gitconfig
하여 홈 디렉토리에서 찾은 파일을 편집하십시오 C:\Users\MY_USER_NAME\.gitconfig
. 위의 Linux 지침에서 미묘한 변경 사항을 확인하십시오.
[core]
editor = 'C:/Program Files/Sublime Text 3/subl.exe' --project ~/.gitconfig.sublime-project --wait
/
하지 \
경로 이름에 별도의 폴더에! (VonC 에게 이것을 보도록 도와 주셔서 감사 합니다 ).subl
우리가 리눅스의 예에서처럼 당신이 위의 그림과 같이 대신 전체 경로를 지정해야합니다, 사용할 수 없도록 우리가 위에서 망할 놈의 배쉬 위해 만든 별명은 여기에서 작동하지 않습니다.~
심볼은, 그러나, 여전히 윈도우 홈 디렉토리에 도착 여기서 일 않습니다.이렇게하면 git commit
메시지에 대한 구문 강조 표시 뿐만 아니라 git blame
(Sublime Text에서 자주 사용하는) 또는 git commit
(Glim의 명령 줄을 선호하기 때문에 Sublime Text에서 사용하지 않는 ) 다른 Git 명령에 액세스 할 수 있습니다 이 답변 아래의 의견에서 언급했듯이 흐름).
패키지를 설치하려면 : 먼저“Package Control”이 설치되어 있는지 확인하십시오. 그런 다음 Ctrl+ Shift+ P(도구 → 명령 팔레트와 동일)를 누르고 “Package Control : Install Package”의 전체 또는 일부를 입력 한 다음을 누르십시오 Enter. 검색 상자가 나타나면 "Git"패키지를 검색하여 Enter클릭하거나 클릭하여 자동으로 설치하십시오.
일단 설치되면 Ctrl+ Shift+ P다음 "git"을 검색하면 내부에서 Sublime Text 내부에서 사용할 수있는 Git 명령이 나타납니다 (예 :) git blame
.
git commit
예를 들어 명령 줄에서 정상적으로을 호출하면 Sublime Text가 .gitconfig.sublime-project
해당 프로젝트 설정과 함께 위에서 만든 텍스트로 열립니다 ! 단락을 입력하면 부드러운 단어 줄 바꿈이 해제되어 있으므로 설정 한 눈금자를 넘어서고 있음을 알 수 있습니다. 각 줄의 끝에 자동 삽입 된 하드 리턴을 통해 강제 줄 바꿈을하려면 자동 줄 바꿈하려는 긴 줄에 커서를 놓고 Alt+를 누릅니다 Q. 이제 72 자에서 하드 랩 / 하드 폴딩 할 것입니다. 이는 프로젝트 설정의 "rulers"매개 변수에서 설정 한 것입니다.
지금, 당신의 커밋과 메시지 저장 Ctrl+ S, 종료 (당신의 완료 git commit
와 함께) Ctrl+ Shift+ W.
끝난!
Git Commit
구문 유형이 있습니다. 이제 커스텀 "sublime-text project"단계를 건너 뛸 수 있습니다.
sublime
로 git
도 사용 trim_trailing_white_space_on_save
당신이 그것을 매우 의미의 공백 나누기 패치 편집을 후행 제거하기 때문에 추가 패치 별칭을 추가하고 싶습니다. 이것은 다음과 같은 방법으로 달성 될 수 있습니다 :git config --global alias.patch "-c core.editor=vim add --patch"
git config --global core.editor "open -n -W -a TextWrangler"
또한 "TextWrangler> 환경 설정> 응용 프로그램> TextWrangler가 활성화 될 때 :"설정이 "아무것도하지 않음"으로 설정되어 있는지 확인하십시오.
이것은 Mac 앱 스토어의 TextWrangler 5.0.2가있는 OS X 10.11.4에서 작동합니다.
설명:
-n 수단은 새 인스턴스에서 엽니 다.
-W 수단은 커밋 메시지로 편집 된 파일의 내용을 사용하기 전에 응용 프로그램이 종료 될 때까지 기다려야합니다.
-a TextWrangler의 수단이 파일을 열도록 TextWrangler 응용 프로그램을 사용합니다.
자세한 내용 man open
은 Mac 터미널 앱을 참조하십시오.
git config --global core.editor "edit -w"
. 현재 인스턴스에서 커밋 메시지가 열리고이 커밋 메시지 문서 만 닫으면 커밋이 계속 진행됩니다.
사용할 때 대화 형 rebase ( ) 를 수행 할 수 있도록 값 git-review
을 수정해야했습니다 .sequence.editor
git rebase -i -p
git config --global sequence.editor "gvim" # or whatever your prefer
gvim
필요합니다 : apt install vim-gtk
IntelliJ 사용자의 경우
git rebase를 시도 할 때 다음과 같은 오류가 발생했습니다 : '힌트 : 편집기가 파일을 닫기를 기다리는 중 ... -n -w '.'
IntelliJ를 Git과 연결하려고 할 때 동일한 오류가 나타났습니다.
문제는 환경 PATH 변수에 명령 코드를 추가 하지 않았다는 것 입니다. 그리고 터미널에서 Visual Studio Code를 사용하고 싶지 않았습니다. 그래서 "명령을 찾을 수 없습니다"라는 메시지가 표시됩니다. 나는 이것을 삭제하여 이것을 해결했다.
에디터 = 코드 -n -w
내 .gitconfig 파일의 핵심 섹션에서. 힘내 다시 제대로 작동했습니다.
커밋을 편집 할 때 Textmate 편집기가 열립니다. textmate 명령 줄 도구를 설치해야합니다.
git config --global core.editor "mate -w"
git config --global core.editor "/usr/local/bin/mate -w"