Programing

svn과 마찬가지로 git에 대한 무시 명령이 있습니까?

crosscheck 2020. 7. 12. 09:52
반응형

svn과 마찬가지로 git에 대한 무시 명령이 있습니까?


나는 새로운 사용자 git이고 새로운 프로젝트를 시작하고 있습니다. 무시하고 싶은 많은 도트 파일이 있습니다. 에 대한 git것과 같은 무시 명령 svn있습니까?


특별한 git ignore명령 은 없습니다 .

.gitignore작업 사본 내 적절한 위치에 있는 파일을 편집하십시오 . 그런 다음 이것을 추가 .gitignore하고 커밋해야합니다. 해당 리포지토리를 복제하는 모든 사람은 해당 파일을 무시합니다.

시작하는 파일 이름 만 /디렉토리가 .gitignore상주 하는 디렉토리 와 관련 됩니다 . 다른 모든 디렉토리 는 서브 디렉토리의 파일과 일치합니다.

.git/info/exclude작업 복사본 하나에서 특정 파일을 무시하도록 편집 할 수도 있습니다 . .git/info/exclude파일은 최선을 다하고되지 않으며, 따라서 오직이 하나의 작업 복사본에 로컬로 적용됩니다.

또한 무시할 패턴이있는 전역 파일을 설정할 수도 있습니다 git config --global core.excludesfile. 이것은 동일한 사용자 계정의 모든 자식 작업 복사본에 로컬로 적용됩니다.

git help gitignore자세한 내용은 텍스트를 실행 하고 읽으십시오.


매우 유용한 git ignore 명령은 awesome tj / git-extras 와 함께 제공됩니다 .

몇 가지 사용 예는 다음과 같습니다.

현재 무시 된 모든 패턴 나열

git ignore

패턴 추가

git ignore "*.log"

gitignore.io 에서 템플릿 중 하나 추가

git ignore-io -a rails

git-extras 는 더 많은 유용한 명령을 제공합니다. 시도해 볼 가치가 있습니다.


Linux / Unix에서 echo명령 을 사용하여 .gitignore 파일에 파일을 추가 할 수 있습니다 . 예를 들어 모든 .svn폴더 를 무시 하려면 프로젝트 루트에서 다음을 실행하십시오.

echo .svn/ >> .gitignore

파일을 무시하는 두 가지 방법이 있습니다.

  • .gitignore모든 폴더에서 해당 폴더의 파일에 지정된 파일을 무시합니다. 와일드 카드 사용이 가능합니다.
  • .git/info/excludeglobal-ignoresin subversions 구성 파일 과 유사한 전역 무시 패턴을 유지 합니다.

너무 늦지 않았기를 바랍니다.

Windows를 사용하는 경우 다음을 수행하여 .gitignore 파일 을 만들 수 있습니다.

echo name_of_the_file_you_want_to_ignore.extension > .gitignore

gitgitore 를 편집하기 위해 다음 을 실행할 수 있습니다.

notepad .gitignore

리포지토리의 루트에 .gitignore라는 파일을 만듭니다. 이 파일에서는 무시하려는 각 파일의 상대 경로를 한 줄에 넣습니다. *와일드 카드 를 사용할 수 있습니다 .


이미 제공된 답변을 git ignore사용하여 alias를 사용 하여 자신의 명령을 롤백 할 수 있습니다 . ~ / .gitconfig 파일에 이것을 추가하십시오 :

ignore = !sh -c 'echo $1 >> .gitignore' -

또는 선택한 (* nix) 쉘에서이 명령을 실행하십시오.

git config --global alias.ignore '!sh -c "echo $1 >> .gitignore" -'

당신은 마찬가지로 만들 수 있습니다 git exclude대체하여 명령을 ignore함께 exclude하고 .gitignore함께 .git/info/exclude위이다.

(이미이 두 파일의 차이를 이해하지 않습니다 여기에 답변을 읽은 경우, 볼 이 질문에 .)


작업 사본 또는 저장소에없는 이름의 경우 :

echo /globpattern >> .gitignore

또는 기존 파일 (sh 유형 명령 행)의 경우 :

echo /$(ls -1 file) >> .gitignore   # I use tab completion to select the file to be ignored  
git rm -r --cached file             # if already checked in, deletes it on next commit

프로젝트에 대한 완전한 .gitignore 파일 을 정의하는 것이 유용합니다 . 보상은 and --all또는 -a같은 명령에 편리한 또는 플래그를 안전하게 사용하는 것입니다 .addcommit

또한 Emacs에 의해 생성 된 임시 파일을 포함하는 일반적으로 무시되는 패턴에 대해 전역 ~ / .gitignore 파일을 정의하는 것을 고려 하십시오 *~ .


이를 위해 git-extras를 설치해야합니다. apt-get을 사용하여 우분투에 설치할 수 있습니다.

$ sudo apt-get install git-extras

그런 다음 git ignore 명령을 사용할 수 있습니다.

$ git ignore file_name

Joe Blau의 gitignore.io를 사용할 수도 있습니다.

웹 인터페이스를 통해 https://www.gitignore.io/

또는 CLI 도구를 설치하면 매우 쉽고 빠릅니다. 터미널에 다음을 입력하십시오.

리눅스 :
echo "function gi() { curl -L -s https://www.gitignore.io/api/\$@ ;}" >> ~/.bashrc && source ~/.bashrc

OSX :
echo "function gi() { curl -L -s https://www.gitignore.io/api/\$@ ;}" >> ~/.bash_profile && source ~/.bash_profile

그런 다음 gigitignore 기준이 필요한 모든 플랫폼 / 환경 요소를 입력하면됩니다.

Example!
Lets say you're working on a node project that includes grunt and you're using webstorm on linux, then you may want to type:
gi linux,webstorm,node,grunt > .gitignore ( to make a brand new file)
or
gi linux,webstorm,node,grunt >> .gitignore ( to append/add the new rules to an existing file)

bam, you're good to go

참고URL : https://stackoverflow.com/questions/1677121/is-there-an-ignore-command-for-git-like-there-is-for-svn

반응형