reset - 태그 - git 현재 tag 확인



repo를 사용하여 변경 사항을 취소하는 방법 (4)

repo status 가 나에게 많은 원치 않는 변경 사항을 표시합니다.

모든 프로젝트를 입력하고 git reset --hard 사용하면 복제됩니다.

repo를 사용하여 repo를 사용하여 모든 변경 사항을 재설정하는 방법이 있습니까?


Answer #1

아래 구문과 함께 repo forall 명령을 사용하면 추적 파일을 재설정하는 데 도움이됩니다.

repo forall -p -c 'git checkout -f foo'

여기서 foo 는 합법적 인 지사 이름으로 대체되어야합니다.


Answer #2

이것은 내가 이런 종류의 일에 사용하는 명령이며, 매우 유용하다.

repo forall -vc "git reset --hard"

여기서 모든 것이 무엇을 의미합니까?

모든 repo에 대해 repo forall 이 실행됩니다.

- v 는 자세한 정보이므로 명령의 출력을 인쇄합니다

-c "COMMAND TO EXECUTE" 는 원하는 실제 명령입니다.


Answer #3

documentation 에 따르면 repo 스크립트는 다음을 지원합니다.

  • 초기화
  • 동조
  • 스타트
  • 지위
  • 업로드

원하지 않는 변경 사항이 이미 저장소에 업로드되었고 저장소 자체가 이전 버전으로 돌아 가기를 원한다면 git reset을 사용할 수 있습니다.

아직 repo에 업로드되지 않은 클라이언트 측의 변경 사항을 취소하려면 git 되돌리기를 수행 할 수 있습니다.


Answer #4

repo 명령을 다음과 같이 사용하여 모든 변경 사항을 되돌릴 수 있습니다.

repo sync -d

이렇게하면 모든 변경 사항이 원래 버전으로 되돌려집니다.

편집 됨 :

위의 명령은 그 당시 버전에서만 작동합니다.

작동 명령은 다음과 같습니다.

repo forall -vc "git reset --hard"

명령 및 옵션 설명

  • 모든

각 프로젝트에서 주어진 쉘 명령을 실행합니다.

옵션 ( forall 명령과 함께 사용할 수 있음)

-c : 실행할 명령과 인수. 명령은 / bin / sh 및 쉘 위치 매개 변수로 전달 된 인수를 통해 평가됩니다.

-p : 지정된 명령의 출력 전에 프로젝트 헤더를 표시합니다. 이는 명령의 stdin, stdout 및 sterr 스트림에 파이프를 바인딩하고 모든 출력을 단일 호출기 세션에 표시되는 연속 스트림으로 파이프함으로써 이루어집니다.

-v : 명령이 stderr에 쓰는 메시지를 표시합니다.

자세한 내용은 repo 문서 를 참조하십시오.