2009-11-04 6 views
2

다음 명령 줄을 사용하여 자식을 입력하고 내 손가락을 입력하는 것에 지쳐 가고 있습니다. :)어떻게이 자식 명령을 결합 할 수 있습니까?

git add . 
git commit -m 'Some message' 
git push 
cap deploy 

어떻게 "git booyah"또는 하나의 명령과 같이 (메시지 추가 포함) 하나의 명령으로 결합 할 수 있습니까?

+0

가능한 중복 입력 밀어 http://stackoverflow.com/questions/16709404/how-to-automate-the-commit-and-push-process-git – dreftymac

답변

3

이 질문에 대한 답변이 아닙니다. r은 bash/batch 스크립트를 만든다).

나는 다음과 같이 말합니다 :하지 마십시오 git add . 이것은 모든 변경 사항과 추적되지 않은 모든 파일을 현재 디렉토리와 그 자손에 추가합니다. 이러한 추적 할 수없는 파일을 디렉토리에 저장하지 않으려는 경우 실수로 파일을 추가 할 수 있습니다. 특히 사용자가 주장하는만큼 ti를 입력하는 경우 더욱 그렇습니다.

대신 git add -u을 입력하십시오. 더 좋은 점은 추가 단계를 건너 뛰고 git commit -a -m"blah"을 수행하면 피할 수없는 전체 선을 저장할 수 있습니다.

5

당신은 git alias 버전 1.5.0 이후 스크립트

를 호출 정의 할 수있다, 힘내 "!"로 값을 앞에 붙여, 비 자식 명령을 실행 별명을 지원합니다.
버전 1.5.3부터 git는 접두어가 "!"인 명령에 인수를 추가 할 수 있습니다.

이 별칭 내에서 함수를 정의 될, 당신은 ' sh -c'에 명시 적으로 호출을 피할 수

[alias] 
     publish = "!f() { git add . ; git commit -m \"$1\" ; git push ; cap deploy ; }; f" 

또는 his answer에서 Pod의 제안 후 :

[alias] 
     publish = "!f() { git commit -a -m \"$1\" ; git push ; cap deploy ; }; f" 

(에 테스트를 거쳐야 함)

+2

큰 따옴표를주의하십시오. 이 예제를 시도했을 때,! f는 내가 배쉬 내역에서 실행 한 마지막 '찾기'명령으로 확장되었습니다. 그래도 올바른 방향으로 나를 가리켰다. – nocash

2

또한 한 줄에 자주 명령을 결합 할 수 있습니다 : 당신은 단지 그것을 다시 얻을 수있는 위쪽 화살표 필요

$ git add . | git commit -m 'Some message' | git push | cap deploy 

다음에, 다음;

관련 문제