나는 git repo를 사용하여 "/etc"에서도 구성 파일을 백업하기 시작했고 "/"를 작업 트리로 사용하고 명령에 대해 "git-backup"이라는 별칭을 만들었습니다.
git --work-tree=/ --git-dir=/home/user/repo/.git
이것은 몇 년 동안 작동하는 것처럼 보였지만 이제는 작동하지 않습니다. 집에 폴더를 추가하려고 해도 -f 옵션을 사용해도 파일을 추가할 수 없으며 실제로 ".config" 파일을 추가할 수 없습니다. 예배 규칙서:
git-backup add src/linux-5.10.147
The following paths are ignored by one of your .gitignore files:
home
hint: Use -f if you really want to add them.
hint: Turn this message off by running
hint: "git config advice.addIgnoredFile false"
나는 그것을 사용하고 있다
git-backup config --global core.excludesfile ~/.gitignore_global
".gitignore_global" 파일은 다음과 같습니다:
# First, ignore everything
*
# Now, whitelist anything that's a directory
#!*/
# And all the file types you're interested in.
!/etc/*
!/home/user/*
".git/info/exclude" 파일의 모든 행이 주석 처리되었습니다.
제가 사용하고 있던 저장소에는 readme 파일만 포함되어 있었습니다. 이를 복제하고 별칭에 정의된 git-dir을 복제된 저장소의 .git 디렉터리로 지정했습니다.
의견이나 제안이 있으신가요?
감사해요
답변1
git 문서에 따르면 .gitignore 파일이 작동하지 않아야 합니다.
선택적 접두사 "!"는 이전 패턴에서 제외된 일치하는 파일을 다시 포함합니다.파일의 상위 디렉터리를 제외하면 해당 파일을 다시 포함할 수 없습니다.성능상의 이유로 Git은 제외된 디렉터리를 나열하지 않으므로 포함된 파일의 패턴은 정의된 위치에 관계없이 영향을 미치지 않습니다. 첫 번째 "!" 앞에 백슬래시("")를 넣습니다. "!important!.txt"와 같이 리터럴 "!"로 시작하는 패턴의 경우.
디렉터리 자체를 다시 포함하도록 .gitignore 파일을 변경해 보세요.
!/etc
!/home # Reinclude home ...
/home/* # ... but exclude all sub-directories of home ...
!/home/user/* # ... except user