2012-05-10 6 views
6

SSH를 통해 소스 제어 서버에 연결할 때 SmartGit이 작동하지 않는 이유에 대해 누구나 통찰력을 줄 수 있는지 궁금합니다. GitBash는 정상적으로 작동합니다.Git/SmartGit SSH 클라이언트의 홈 폴더 설정

배경 : 나는 SSH 서버로 WinSSH와 MSYSGit를 실행하는 네트워크에 설치 소스 제어 서버를 가지고

. 그것은 사용자 이름 등을 해결하기 위해 AD에 연결되며 공개 RSA 키 등을 모두 가져 왔습니다. 모든 것이 peachy로 작동합니다. ': \의 Program Files (x86) \ 힘내이 C'우리의 실제 소스 코드에 앉아 'C : \ 힘내', 백업되는 우리

한 곡선 공, 힘내에 설치되어 있지만 것입니다 정기적으로.

모든 SSH 세션이 홈 폴더로 'C : \ Git'으로 기본 설정되도록 WinSSH를 구성했습니다. Git Bash를 사용하여 서버에 연결할 때 기본값은 'C : \ Git'입니다. 완전한.

내가 URL과 동일한 서버에 연결 (SmartGit SSH 클라이언트를 사용하여) SmartGit를 얻을 때 :

ssh://<server>/<folder>/<repo> 

나는 경로를 말하는 오류가 ...

C:\Program Files (x86)\Git\<folder>\<repo> 

.. . 저장소가 아닌 것 같습니다. 글쎄, 예 ... 'C : \ Git'이 아니고, 'C : \ Program Files (x86) \ Git'이 아닙니다.

왜 SmartGit이이 설정으로 좋지 않은지 잘 모르겠지만 기본 경로가 'C : \ Program Files'에서 완전히 지정 되었기 때문에 기본 WinSSH 설정이 SSH 클라이언트에 의해 무시되고 있다고 생각합니다. (x86) \ Git '입니다.

내 질문 :

SmartGit은 'C : \의 Program Files (x86) \ 힘내'지고있을 어떤 아이디어에서 경로를?

어딘가 설정할 수있는 변수입니까?

상세 정보 (업데이트)

SmartGit 버전은 다소 문제가 2.X.도 존재, 3.0.4이고

나는 SmartGit 응용 프로그램 로그에서 실패의 인스턴스 무엇인지 (나는 확신) 첨부 :

1782732 (2012-05-10 12 : 18 : 56,653) QThreadPoolThread-2 (smartgit.KL)] INFO smartgit.core.executable - 다음 명령을 실행합니다 : "C : \ Program Files \ Git \ bin \ git.exe"ls-remote ssh : //initio-dev01/INIT/INIT.Framework.git refs/heads/

1782732 (2012-05-10 12 : 18 : 56,653) [QThreadPoolThread-2 (smartgit.KL)] 정보 smartgit.core.실행 - 디렉토리 : NULL

1,783,049 (2012-05-10 12 : 18 : 56,970) - [QThreadPoolThread -8- (smartgit.aqT)] INFO가 smartgit.server 명령받은 : SSH

1,786,438을 (2012- (C) :/Program Files (x86) /Git/INIT/INIT.Framework.git '에 대한 자세한 내용은 다음을 참조하십시오. [QThreadPoolThread-6 (smartgit.cR)] 정보 smartgit.command.logging - stderr : git 저장소가 아닙니다.

1786438 (2012-05-10 12 : 19 : 00,359) [QThreadPoolThread-6 (smartgit.cR)] INFO smartgit.core.command - fatal : 'C :/Program Files (x86) /Git/INIT/INIT.Framework.git '는 자식 저장소가 아닙니다.

,515,

1,786,439 (2012-05-10 12 : 19 : 00360) (29)의 스레드] 에러 smartgit.ssh.trilead - com.trilead.ssh2.transport.TransportManager는 : 수신 스레드 : receiveLoop에 오류 소켓 폐쇄

정보 smartgit.command.logging - stderr : 치명적인 : 원격 종료가 예기치 않게 중단되었습니다.

1786763 (2012-05-10 12 : 19 : 00,684) [QThreadPoolThread-6 (smartgit.cR) 정보 smartgit.core.command - 치명적 : 원격 종료가 예기치 않게 중단되었습니다.

1786772 (2012-05-10 12 : 19 : 00,693) [QThreadPoolThread-6 (smartgit.cR) QThreadPoolThread-2 (smartgit.KL)] WARN sg.command.ping - 'C :/Program Files (x86)/Git/I NIT/INIT.Framework.git '이 자식 저장소가 아닙니다. 원격 종료가 예기치 않게 중단되었습니다. smartgit.cn :'C :/Program Files (x86) /Git/INIT/INIT.Framework.git ' 원격 엔드 smartgit.gG.a (은 SourceFile : 86)에 예기치

끊었 자식 저장소 것으로 보인다 smartgit.ga.a에서

(SourceFile을 63)

에서 smartgit.ga.a (SourceFile : 53)

at smartgit.hA.a (SourceFile의 57)에서 smartgit.ahq.a

(SourceFile의 26)에서 smartgit.ahl.a

(SourceFile을 39)

smartgit.aL.a (은 SourceFile : 46)에

: smartgit.KL.run (SourceFile을 34)에

: smartgit.Kw.a (144은 SourceFile)에서

: smartgit.aD.a (SourceFile을 41)에

smartgit.Pp.run (은 SourceFile : 65)에서 17,451,515,

여기 문제로 보일 수도 하드 경로의와 매우 성가신
+0

? SmartGit의 log.txt (SmartGit의 설정 디렉토리에서 정보 대화 상자 참조)의 해당 오류 메시지/스택 트레이스는 무엇입니까? – mstrap

+0

감사합니다. 로그 파일에 대해 알지 못했습니다. 질문의 예를 오류로 업데이트했습니다. 불행히도, 나는 더 이상 빛을 흘려 보지 않는다고 생각합니다 ... 당신은 SSH url로 원격 주소로 들어가지만 C : \ Program Files (x86) \에서 끌어 내려 시도합니다. 그러나 그게 전부입니다. – Martaver

+0

SmartGit의 설정 디렉토리에있는 git-ssh.log에 유용한 정보가 있습니까? 또한 "log4j.category.smartgit.ssh.client = DEBUG"줄을 logj4.properties에 추가하고 SmartGit을 다시 시작하십시오. 이렇게하면 log.txt의 SSH 연결에 대한 더 많은 디버그 출력이 제공됩니다. "smartgit.ssh.client"관련 라인을 다시 게시하십시오. – mstrap

답변

1

,?! 이 버전이 이후 버전에서 수정 될 때까지 디렉토리 연결 지점 또는 심볼 링크를 대신 만들어야합니다. 프로그램을 수정하는 데 시간을 소비하는 대신 (빠르고 더러운) 해결책 일 수 있습니다.

연결 지점에 대한

(A 관리자 쉘에서 실행해야합니다) :

mklink /j "C:\Program Files (x86)\GIT\<folder>" C:\GIT\<folder> 

심볼릭 링크의 경우 : 사용중인 SmartGit의 정확한 버전은 무엇

mklink /d "C:\Program Files (x86)\GIT\<folder>" C:\GIT\<folder> 
+0

대단한 아이디어가 아닌, 나는 그것을 고려했다. 저를위한 차단기는 나가 그것을 이해하기 때문에, 접속점은 git 회의뿐만 아니라 모두를 방향을 돌릴 것이라는 점을이었다. – Martaver