실행할 단일 명령이 있는지 의심합니다. 여기서 순차적으로 실행되는 도구 조합이 필요합니다.
Git에는 repo 내부의 모든 파일을 나열하는 인수가 포함되어 있습니다. git ls-files
추적되지 않은 파일과 수정 된 파일 만 나열하려면 -o
및 -m
인수를 사용할 수 있습니다 .
git ls-files -o -m
이를 PowerShell 함수로 파이프 라인하면 배열로 제공되며 모든 파일을 반복하고 원하는 모든 작업을 수행 할 수 있습니다. (SVN은 잘 모르지만 아마도 비슷한 명령이 있어야합니다.)
다음은 .git
현재 작업 디렉토리에서 파일을 찾고 git ls-files -o -m
, 각 파일을 통과하고 전체 경로를 인쇄하는 다른 함수로 출력되는 파이프 및 파이프 를 찾는 스크립트 파일입니다 . 각 파일로 원하는 것을 복사하거나 이동할 수 있습니다.
function DoSomethingForGitLsFiles {
param(
[array]$FileList
)
Write-Host $FileList.count 'files found:'
foreach ($FilePath in $FileList)
{
# This is where you could copy your files out somewhere else.
Write-Host "FILE: $(Get-Location)\$FilePath"
}
}
function FindGitRepo {
param(
[string]$searchPath
)
if (Get-ChildItem -Name -Path "$searchPath\*.git") {
DoSomethingForGitLsFiles (git ls-files -o -m)
} else {
Write-Host "No .git repo found."
}
}
FindGitRepo -SearchPath (Get-Location)
파일이 별도의 위치에 있으면 폴더 등에서 7-zip을 쉽게 실행할 수 있습니다.
즉, 원하는 변경 사항이 필요한 변경 사항이있는 지점이거나 다른 변경 세트 위에 체리 픽을 선택할 수있는 지점이거나 변경 세트 위에 다시 적용 한 다음 마음대로 되돌릴 수있는 은신처입니다.
https://git-scm.com/docs/git-stash
유스 케이스에 따라 숨김은 충분하지 않지만 잘 알려지지 않으므로 유용 할 수 있습니다.