2010-11-29 3 views
2

나를 이클립스 사용자로 유지시켜주는 한 가지 기능은 save를 누를 때마다 그 사본이 Eclipse 로컬 히스토리에 저장된다는 점이다. 그런 다음 지역 역사에 대한 비교를 할 수 있습니다.git commit을 Textmate의 저장에 연결할 수 있습니까?

그래도 Textmate를 사용하고 싶습니다. 나는 미래의 버전을 위해 feature request이 있다는 것을 알고있다. 그러나 누군가가 플러그인을 발견했는지, 또는이 기능을 Textmate에 shoehorned하게하는 다른 방법이 있는지 궁금하다. 나는 롱샷이라는 것을 알고 있지만 결코 물어 보지 마십시오.

감사합니다.

업데이트! (이전 제목에 관심이 없기 때문에 질문의 제목을 수정 함) 방금 ​​이것이 해결책 일 수 있다는 것을 깨달았습니다. TextMate를 git commit에 저장하는 것이 가능합니까?

+1

어떻게 TextMate에 저장합니까? 하나의 가능한 해킹 해법은 파일을 저장하고 커밋 한 다음이 번들 엔트리에 명령을 다시 바인딩하는 번들 엔트리를 작성하는 것이다. 그러나 File> Save를 사용하여 저장하면이 작업은 도움이되지 않을 것입니다. lmk, 나는 이것을 답으로 씁니다. –

+0

고마워. 조쉬, 정말 끝내 줄거야! – joedevon

+0

참고 사항 [Create git auto-commit] (http://stackoverflow.com/questions/420143/making-git-auto-commit) –

답변

6

원하는 항목 : 새 명령을 만들고 "저장"을 "현재 파일"(이 옵션은 텍스트 영역 위에 있음), "입력"- "문서 전체"및 "출력"을 "다음 형식으로 표시" 도구 팁 ". 이제 아래 코드를 텍스트 영역에 복사하고 Command-S를 명령 키 바인딩으로 지정하십시오.

#!/usr/bin/env ruby 
filename = ENV["TM_FILEPATH"].split("/").last 
`git add #{ENV["TM_FILEPATH"]}` 
`git commit -m "#{filename}"` 

Command-S를 입력 할 때마다 파일이 저장되고 (이미 존재하는) git 저장소에 커밋됩니다. 파일이 변경되지 않았다면 커밋은 수행되지 않을 것입니다. 왜냐하면 자식은 커밋을 차단하기 때문입니다.

이하 커밋 메시지를위한 대화 상자를 열고 Git 저장소를 찾을 수 없다면 좋은 경고를하기 위해 명령을 확장했습니다. 너 자신을 알아낼 수 있어야한다. :)

+0

"명령을 찾을 수 없습니다. add ..." – joedevon

+0

@joedevon git in 너 $ PATH 변수? (터미널에서 "echo $ PATH"를 시도하십시오.) 그렇다면 모든 프로그램에 대해로드됩니다 (예 : .login 파일과 같은 일부 로그인 후크가 아닌 경우)? (TextMate는 그 파일을 사용하지 않을 것입니다.) –

+0

$ PATH에 자식을 얻었습니다. 이제 Command-S에 팝업을 추가하고 Command-Shift-S에 팝업이 아닌 팝업을 추가하면 완벽하게 작동합니다. – joedevon

관련 문제