svn 로컬 사본에서 수정 된 파일 목록
Tortoise 클라이언트를 사용하여 SVN에 대한 변경 사항을 체크 아웃 / 커밋합니다. 하지만 내 로컬 사본에서 변경된 모든 파일의 목록을 찾을 수 없기 때문에 조금 어렵습니다. 지름길이나 내가 간과 한 것이 있습니까?
저는 SVN을 처음 사용합니다. 참고로.
tortoise의 "수정 사항 확인"명령은 작업 복사본의 모든 변경된 파일 목록을 표시합니다. "커밋"은 변경된 모든 파일도 표시합니다 (그러면 커밋 할 수 있음). "되돌리기"는 변경된 파일도 표시합니다 (그런 다음 되돌릴 수 있음).
나는 거북이에 익숙하지 않지만 Linux 로의 전복을 사용하면 다음을 입력합니다.
svn status
일부 인터넷 검색은 tortoise도 명령 줄 특공대를 지원하고 svn 저장소가 포함 된 폴더에서 svn status를 시도한다고 알려줍니다.
나는 svn status -q
일할 수 없었다 . 당신이 리눅스 박스에 있다고 가정하고, 수정 된 파일 svn status | grep 'M '
만보기 위해 다음을 실행하십시오 : 윈도우에서는 당신이 무엇을할지 모르겠습니다. 아마도 'FindStr'로 뭔가를 할 것입니다.
아래 명령은 수정 된 파일 만 창에 표시합니다.
svn status | findstr "^M"
정말로 수정 된 파일 을 나열 하려면 파일이 수정되었음을 나타내는 "M"을 선행 하여 svn st 의 출력을 줄일 수 있습니다 . 나는 이렇게 할 것이다 :
svn st | grep ^M
svn status | grep 'M '
MacOSX에서 잘 작동합니다 .
방금 테스트했습니다.
파일 이름 만 원하고 추가 된 파일도 원하는 경우 (A).
svn st | grep ^[AM] | cut -c9-
참고 : 처음 7 개 열은 각각 한 문자 너비와 공백, 파일 이름 순입니다.
이것은 Windows에서해야합니다 : svn stat | "M"찾기
svn 상태 | grep ^ M은 수정 된 파일을 나열합니다. M-수정 됨 :)
말했듯 SVN Check for modification
이 GUI 및 tortoiseproc.exe /command:repostatus /path:"<path-to-version-control-file-or-directory>"
CLI에서 .NET의 루트와 관련된 변경 사항을 확인해야합니다 <path-to-version-control-file-or-directory>
.
안타깝게도이 명령은 모든 로컬 변경 사항을 표시하지 않으며 요청 된 디렉토리 루트와 관련된 변경 사항 만 표시합니다. 독립 실행 형 체크 아웃 또는 루트 하위 디렉터리의 고아 외부 디렉터리와 같이 개별적으로 수행 된 변경 사항은 Unversioned 또는 Nested 로 표시되며 커밋 / 조회를 놓칠 수 있습니다.
이러한 상황을 방지하려면 다음을 호출하거나 tortoiseproc.exe /command:repostatus /pathfile:"<path-to-file-with-list-of-items-to-lookup-from>"
(명령 줄에 대한 자세한 설명서 참조 : https://tortoisesvn.net/docs/nightly/TortoiseSVN_en/tsvn-automation.html ) 일부 타사 응용 프로그램 / 유틸리티 / 스크립트를 사용하여 통화를 마무리합니다.
내가왔다 스크립트 내 자신의 세트를 썼다 Windows 용을 로부터 호출 자동화 Total Commander
: https://sf.net/p/contools/contools/HEAD/tree/trunk/Scripts/Tools/ToolAdaptors/totalcmd/README_EN.txt를 ( 검색 TortoiseSVN
)
-WC 디렉토리 세트에 대한 TortoiseSVN 상태 대화 상자를 엽니 다 (항상 버전이없는 변경 사항을 표시하기 위해 열립니다).
Command: call_nowindow.vbs
Arguments: tortoisesvn\TortoiseProcByNestedWC.bat /command:repostatus "%P" %S
-WC 디렉토리 세트에 대한 TortoiseSVN 커밋 대화 상자를 엽니 다 (버전 변경 사항이 비어 있지 않은 경우에만 열립니다).
Command: call_nowindow.vbs
Arguments: tortoisesvn\TortoiseProcByNestedWC.bat /command:commit "%P" %S
참고 항목 README_EN.txt
최신 자세한 내용은 (당신이 실행해야 configure.bat
사용 전과 같이 자신에 스크립트의 나머지 복사 call_nowindow.vbs
).
Powershell을 사용하여 다음을 수행 할 수 있습니다.
# Checks for updates and changes in working copy.
# Regex: Excludes unmodified (first 7 columns blank). To exclude more add criteria to negative look ahead.
# -u: svn gets updates
$regex = '^(?!\s{7}).{7}\s+(.+)';
svn status -u | %{ if($_ -match $regex){ $_ } };
여기에는 속성 변경이 포함됩니다. 이는 열 2에 표시됩니다. 또한 열 3-7에 표시되는 파일의 다른 차이점도 포착합니다.
출처 :
svn 상태 : http://svnbook.red-bean.com/en/1.8/svn.ref.svn.c.status.html
svn 상태의 결과를 일치시키는 정규식 : powershell 및 svn을 사용하여 버전이 지정되지 않은 파일 삭제
폴더 오른쪽 클릭-> Tortoise SVN 클릭-> 수정 확인
참고 URL : https://stackoverflow.com/questions/1168464/svn-list-of-files-that-are-modified-in-local-copy
'Program Tip' 카테고리의 다른 글
Rails : Font Awesome 사용 (0) | 2020.12.13 |
---|---|
카피 바라 테스트를위한 드롭 다운의 선택 값 가져 오기 (0) | 2020.12.13 |
Python으로 월요일 날짜 찾기 (0) | 2020.12.13 |
슬라이스를 가변 입력으로 어떻게 전달할 수 있습니까? (0) | 2020.12.12 |
변경할 때마다 컨테이너를 다시 작성 하시겠습니까? (0) | 2020.12.12 |