eclim ProjectTree로 전환하는 중 오류 발생

3481 단어 vim-fugitive

묘사

[eclim] 사용http://eclim.org/index.html] 플러그 인.ProjectTree split 창으로 전환(^-w,^-w 사용)할 때 탈주범은 다음과 같은 오류를 던집니다.
Error detected while processing function <SNR>26_Detect..fugitive#buffer..<SNR>26_buffer..<SNR>26_throw:
line    2:
E605: Exception not caught: fugitive: not a git repository: workspace/project/ProjectTree_1
프로젝트 디렉터리는 실제로git 저장소이지만 프로젝트 Tree 1 파일/폴더는 존재하지 않습니다

토론 #1

+1

토론 #2

. Eclipse와 Eclim을 설치하지 않고 복사하는 간단한 방법을 주시겠어요?

토론 #셋

나는 실제 어떤 종류의 파일 속성을 설정했는지 모르겠다. 프로젝트 트리(그래서 어떻게 복사할지 모르겠다). 그러나 프로젝트 루트 디렉터리(Eclipse가 있는.project 파일)와git 디렉토리.vim 버퍼에 unix "env"와 비슷한 명령이 있습니까?만약 그렇다면, 나는 이 두 설정 사이의 차이를 볼 수 있다.
나는 클론에서 이 문제를 해결하고 이상을 포착하여 검출 기능에서 되돌아왔다(https://github.com/exic/vim-fugitive/commit/282521f9b16a0c3441e8669e5833fd2320c5b6db

토론 #4

나도 이 문제가 있다.
Vim + Eclim + Eclipse 조합을 사용하는 모든 사람이 Eclipse의 Egit 플러그인을 사용하면 git repo 파일의 디렉터리 레벨이git가 감시하는 특정한 Eclipse 프로젝트의 루트 디렉터리보다 높을 수 있습니다.
즉, Egit User Guide가 제공하는 권장 사항을 따르는 경우
http://wiki.eclipse.org/EGit/User_Guide#Considerations_for_Git_Repositories_to_be_used_in_Eclipse
삼다

토론 #5

나는 이것이 여기서 결코 중요하지 않다고 생각한다.다음은 s:Detect의 기본 사상이다.
1. 디렉터리의 차원 구조를 옮겨다니며 검색을 시도한다.git.
2. 찾으면 b:git_dir에 저장하십시오.
3. 존재하면b:git_dir 도주범 설정
당신들이 보고한 오류는 b:git_dir가 3에 존재하지 않는다는 것입니다.이것은 전혀 이치에 맞지 않는다.

토론 #6

답변 감사합니다.나는 이곳의 배경 코드에 대해 아는 것이 매우 적다는 것을 기쁘게 인정한다.: -)
나는 단지 같은 문제를 알아차렸을 뿐이고, Egit 매뉴얼에서 심상치 않을 수도 있는 건의를 회상했다.
실행할 때 불행하게도, 작업 중에 윈도우즈에 문제가 발생했습니다. 도주범 문서에 언급되지 않은 것을 알았습니다. 윈 시스템에 대해서는 도주범이 찾을 수 있도록 Git 바이너리 파일을 PATH env var에 추가해야 합니다.분명히 알지만, 단지 2펜스의 톱니바퀴 기름일 뿐이다.
나는 Debian 시스템에서 테스트(Vim+Survious+Eclim+Eclipse) 고장을 할 것이다. 내가 시간이 있으면 같은 문제가 존재하는지 확인하거나 이것은 단지 성공적인 일일 뿐이다.
삼다

토론 #7

진일보한 연구 - 나는 이것이 Eclim이 창조한 (존재하지 않는)'ProjectTree 1'의 대상이라고 생각한다. 도주범은 좋아하지 않는다.이 대상은 당연히 파일 시스템에 존재하지 않지만, Eclim은 Vim을 속여서, 그로 하여금 그것이 확실히 존재한다고 믿게 하였다.
개발자한테 얘기할게요.

토론 #8

이 문제는 오늘 나의 주의를 끌었고, 한 번 본 후에 나는 또 제기하였다
복제 절차, 원인, eclim 방면의 복구를 포함합니다.
@geebotron에서 정확하게 관찰한 것은
git repo는 이 항목보다 디렉터리가 높습니다.저는 시간이 안 걸렸어요.
원인을 찾아내라. 그러나 그것은 내가 유일하게 생각할 수 있는 조건이다
이렇게 하면 오류를 일으킬 수 있다.
이상하게도 이 상황에서 발생한 오류는 다음과 같다.
E605: Exception not caught: fugitive: not a git repository: workspace/project/ProjectTree_1
이것은 사기극이다.eclim과 도주범은 촉발 시 모두 사용silentautocmds (vim에서 오는 짜증나는 'autocmd' 형식의 출력을 억제하는 데 사용되지만
이렇게 하는 것은 잘못의 진정한 원인을 감추었다.Eclim의 ProjectTree에는 사용자가 있습니다.
autocmd, 정보 기능을 터치하여 vcs 정보를 추가/업데이트합니다
트리 버퍼.eVandew/vcs 를 사용하려고 하지만 사용할 수 없으면 뒤로 이동합니다.
BufReadPost autocmd를 실행하여 탈주범을 사용합니다.불행히도
autocmd는 사용자 자신의 autocmd를 터치합니다. 이 사용자는 무의식중에 터치합니다
ProjectTree의 autocmd가 다시 시작되었기 때문에vim가 실행되지 않을 때까지 순환이 계속됩니다
광기와 통제가 도주범으로 되돌아와 실수를 일으킨다.
이 혼란은git 환매를 감지할 수 없습니다.
최종적으로, 나는 책임을 eclim에 돌릴 것이다. 왜냐하면, 사용자의 autocmd가 분명히 필요하기 때문이다
다른 플러그인을 막기 위해 <buffer>보다 더 구체적인 모드가 있습니다
촉발을 방지하다.그걸 바꾸는 게 아니라, 뭔지 잘 몰라서요.
불리한 영향을 미칠 수 있는 사용 상황에 대해 나는 단지 방호 장치를 첨가하여 방지할 뿐이다
차례로 집행되다.

토론 #9

나는 여전히 Eclim 설정을 가지고 테스트할 수 없지만, Survious는 현재 이런 사건을 처리하는 능력이 훨씬 좋다.

좋은 웹페이지 즐겨찾기