2009-10-04 10 views
2

현재 Magit를 Win7 64 비트에서 Emacs 23.1과 함께 사용하려고하지만 Magit은 내 자식 저장소를 인식하지 못합니다. 나는 이맥스 초보자라는 것을 명심해야한다.Magit이 자식 저장소를 인식하지 못합니다.

나는 magit-status 명령을 실행하고 분명히 입력하는 repo가 ​​들어있는 디렉토리를 묻는 다음 "Empty 저장소가 없습니다"라는 시도를 할 때마다 다음과 같이 말합니다. "e :/path/to/디렉토리 ". (y 또는 n) 하나를 생성"거기에 저장소가 확실히있을 때.

다른 사람이이 문제가 발생 했습니까? 나는 아마도 실제 git.exe를 찾을 수없고 내 Path 변수로 어지럽 혔지 만 Magit이 내 저장소를 인식 할 수는 없다는 것을 읽었습니다. 어떤 아이디어? 이맥스는 정말 git 바이너리를 본다면 내가 처음 시도 할 것이다

git rev-parse --git-dir 

:

+0

나는 똑같은 문제가 있습니다! 이상한 점은 몇 달 동안 문제없이 사용하고 ELPA로 다시 설치했는데 이제는 더 이상 작동하지 않는다는 것입니다. 내가 뭔가를 찾을 수 있는지 보자. –

답변

4

magit는 .git 디렉토리를 찾으려면 다음 명령을 실행합니다. 이렇게하려면 emacs의 git 저장소에있는 파일을여십시오. 다음으로 M-x: shell-command을 실행하고 프롬프트에 위의 git 명령을 입력하십시오 : git rev-parse --git-dir.

출력은 .git과 같아야합니다. 'git' is not recognized as an internal or external command, ...을 얻는다면 emacs/magit가 git을 찾을 수 있는지 확인해야합니다. magit-git-executable (M-x: customize-variable)을 사용자 지정하거나 절대 경로를 가리 키거나 git 디렉터리가 Windows PATH에 있는지 확인합니다 (설치 중에 묻는 메시지 msysgit).

희망이 도움이됩니다.

건배,

+1

도움을 주셔서 감사합니다. git 쉘 명령은 정상적으로 작동하지만 올바른 디렉토리를 찾았지만 여전히 magit-status는 저장소가 있다는 것을 인식하지 못합니다! 명령 줄 메타 링크를 사용해야 할 것입니다. – KnackeredCoder

1

다니엘는 Windows가 처리 할 수없는 실행 파일을 탈출 magit - 탈출 -에 - 쉘 기능의 문제를 발견했다. 이전 설치 코드를 확인한 후에 버전을 변경하지 않고 코드를 변경 한 것은 확실합니다. 버그를 수정해야하는 패치는 다음과 같습니다.

--- magit.el.orig  2010-02-19 16:48:43.671875000 -0500 
+++ magit.el 2010-02-19 16:49:30.078125000 -0500 
@@ -320,7 +320,9 @@ 
        prop val)) 

(defun magit-escape-for-shell (str) 
- (concat "'" (replace-regexp-in-string "'" "'\\''" str) "'")) 
+ (if (not (equal system-type 'windows-nt)) 
+  (concat "'" (replace-regexp-in-string "'" "'\\''" str) "'") 
+ str)) 

(defun magit-format-commit (commit format) 
    (magit-git-string "log --max-count=1 --pretty=format:%s %s" format commit)) 
+0

나는 Gitorious 저장소를 검사했는데 깨끗합니다. 그래서이 문제가있는 ELPA 버전입니다. –

관련 문제