source

추적되지 않은 파일만 추가

manycodes 2023. 7. 5. 20:51
반응형

추적되지 않은 파일만 추가

에서 제가 수 정도로 중 는 내가에서믿을수없정는유하중나명생령고는입니다.git add -u추적되지 않은 파일을 제외한 모든 파일을 인덱스에 던집니다.그것의 반대가 있습니까?

추적되지 않은 파일만 개별적으로 식별하지 않고 인덱스추가하는 방법 등?

으로 쉽습니다.git add -i합니다.유형a("추적되지 않은 추가"의 경우), 다음*("모두"의 경우), 다음q(그만둬요) 그러면 당신은 끝입니다.

명령으로 하는 방법: 단일명로수는방법하행echo -e "a\n*\nq\n"|git add -i

git ls-files -o --exclude-standard추적되지 않은 파일을 제공하므로 다음과 같은 작업을 수행하거나 별칭을 추가할 수 있습니다.

git add $(git ls-files -o --exclude-standard)

당신이 찾고 있는 것은 정확하지 않지만, 저는 이것이 꽤 도움이 된다는 것을 알았습니다.

git add -AN

내용 없이 모든 파일을 인덱스에 추가합니다.추적되지 않은 파일은 추적된 것처럼 동작합니다.은 내이다표니다됩으로 입니다.git diff그리고 나서 대화형으로 추가할 수 있습니다.git add -p.

저는 이것을 시도했고 효과가 있었습니다.

git stash && git add . && git stash pop

git stash수정된 모든 추적된 파일만 별도의 스택에 저장한 다음 남은 파일은 추적되지 않은 파일입니다.그럼 함으로써git add .필요에 따라 추적되지 않은 모든 파일을 준비합니다.결국, 스택에서 수정된 모든 파일을 가져오기 위해git stash pop

~/.gitconfig 파일에 추가할 수 있습니다.

[alias]
    add-untracked = !"git status --porcelain | awk '/\\?\\?/{ print $2 }' | xargs git add"

그런 다음 명령줄에서 다음을 실행합니다.

git add-untracked

사람들은 그 결과물을 배관할 것을 제안했습니다.git ls-filesgit add예: 그나공백다나같전포문파다실이있경일패는니합우는에)가 있는 경우에는 실패합니다.*.

안전한 방법은 다음을 사용하는 것입니다.

git ls-files -o --exclude-standard -z | xargs -0 git add

-z사용하라고 git에게 말합니다.\0 및 줄 바꿈-0xargs도 마찬가지입니다.이 접근법의 유일한 단점은-0의 옵이비므일부버전만로이션표준▁some▁of▁option▁is▁versionsxargs그것을 지지합니다.

git ls-files현재 디렉터리에 있는 파일을 나열합니다.트리의 모든 위치에서 추적되지 않은 파일을 나열하려면 이 작업이 더 효과적일 수 있습니다.

git ls-files -o --exclude-standard $(git rev-parse --show-toplevel)

트리에서 추적되지 않은 모든 파일을 추가하는 방법

git ls-files -o --exclude-standard $(git rev-parse --show-toplevel) | xargs git add

추적되지 않은 수천 개의 파일이 있는 경우(으음, 묻지 않음git add -i추가할때않을 추가 시.*다음과 같은 오류가 발생합니다.Argument list too long.

Windows(윈도우)에도 연결되어 있고(#2:-) 추적되지 않은 모든 파일을 추가하기 위해 PowerShell을 사용해야 하는 경우 다음 명령을 사용할 수 있습니다.

git ls-files -o --exclude-standard | select | foreach { git add $_ }

여기에 많은 좋은 팁들이 있지만, 파워셸 안에서 저는 그것을 작동시킬 수 없었습니다.

저는 .NET 개발자이며 아직까지 사용하지 않았기 때문에 주로 Windows OS를 사용합니다.Netcore 및 크로스 플랫폼이 매우 많기 때문에 Git와 함께 일상적으로 사용하는 것은 Gitbash가 아닌 Powershell이 사용되는 Windows 환경에서입니다.

다음 절차에 따라 Git 저장소에 추적되지 않은 파일을 추가하기 위한 별칭 함수를 만들 수 있습니다.

Powershell의 $profile 파일 내부(누락된 경우 - 실행 가능: New-Item $Profile)

메모장 $프로파일

이제 Powershell 방법을 추가합니다.

function AddUntracked-Git() {
 &git ls-files -o --exclude-standard | select | foreach { git add $_ }
}

$profile 파일을 저장하고 Powershell에 다시 로드합니다.그런 다음 $profile 파일을 .$profile로 다시 로드합니다.

이는 *nix 환경 IMHO의 source 명령과 유사합니다.

따라서 다음 번에 개발자가 Gitrepo에 대해 Windows에서 Powershell을 사용하고 있으며 추적되지 않은 파일만 포함하고 싶다면 다음을 실행할 수 있습니다.

추적되지 않은 Git 추가

이것은 동사 명사가 있는 Powershell 규약을 따릅니다.

git add . (디렉터리에 모든 파일 추가)

git add - all(모든 디렉토리에 모든 파일 추가)

git add -N은 나중에 어떤 것을 나열하는 데 도움이 될 수 있습니다...

추적되지 않은 모든 파일을 추가하려면 git 명령은

git add -A

또한 사용 가능한 다양한 옵션에 대한 자세한 내용을 보려면 명령을 입력할 수 있습니다.

git add -i

첫 번째 명령 대신 아래와 같이 추적되지 않은 모든 파일을 추가하는 옵션을 포함한 더 많은 옵션을 사용할 수 있습니다.

git add -i 경고: README에서 LF가 CRLF로 대체됩니다.txt. 파일의 원래 줄 끝이 작업 디렉터리에 있을 것입니다. warning: LF는 package.json의 CRLF로 대체됩니다.

명령 * 1: 상태 2: 업데이트 3: 되돌리기 4: 추적되지 않은 5 추가: 패치 6: diff 7: 종료 8: 도움말 지금> a

언급URL : https://stackoverflow.com/questions/7446640/adding-only-untracked-files

반응형