목록프로그래밍 (492)
스택큐힙리스트
저는 리포지토리에 커밋들이 많이 있습니다. 저는 SHA1에서 SHA2까지의 커밋 사이에서 변경된 파일들의 목록을 보고 싶습니다. 어떤 명령어를 사용해야 할까요?답변 1git diff --name-only SHA1 SHA2 여기서는 커밋을 식별할만큼의 충분한 SHA 해시만 포함하면 됩니다. SHA의 순서는 중요하지 않습니다. 출력(파일 이름뿐만 아니라 상대 경로도 포함)은 다음 형식을 따릅니다: dir 1/ dir 2/파일이름.ext dir 3/ dir 4/다른 파일이름.ext 또한 다음과 같이 할 수도 있습니다 git diff --name-only HEAD~10 HEAD~5 10번째 최신 커밋과 5번째 최신 커밋 사이의 차이를 보려면 (대략적으로).답변 2파일이름만 목록화하는 방법은 두 커밋 간에 변경된..
나는 git status를 실행했고, 모든 것이 최신 상태이고 로컬 변경 사항이 없다는 것을 알려주었습니다. 그런 다음 연이어 여러 번의 변경을 만들었고, 모든 것을 버리고 원래 상태로 돌아가고 싶다는 것을 깨닫았습니다. 이 명령어가 그것을 수행해줄까요? git reset --hard HEAD 답변 1작업 복사본에 대한 변경 내용을 되돌리려면 다음을 수행하세요: git checkout . 또는 동일한 결과를 얻기 위해 git 버전 >= 2.23의 경우: git restore . 인덱스에 대한 변경 내용을 되돌리려면 (즉, 추가한 내용) 다음을 수행하세요. 경고: 이것은 모든 푸시되지 않은 커밋을 마스터로 재설정합니다!: git reset 커밋한 변경 내용을 되돌리려면 다음을 수행하세요: git rever..
나는 .gitignore 파일이 Git의 버전 관리에서 지정된 파일을 숨긴다는 것을 이해합니다. .gitignore에게 Git으로 추적 중인 파일을 제외한 모든 것을 무시하도록 어떻게 알려줄 수 있을까요? 예를 들어: # 모든 것을 무시합니다: * # 다음 파일들은 무시하지 마십시오: script.pl template.latex 답변 1 선택적 접두사 !는 패턴을 부정합니다. 이전 패턴에서 제외된 모든 일치하는 파일은 다시 포함됩니다. 부정된 패턴이 일치하면 이는 우선순위가 낮은 패턴 소스를 무시합니다. # 모든 파일 무시 * # 그러나 다음 파일은 무시하지 않습니다... !.gitignore !script.pl !template.latex # 기타... # ...심지어 서브디렉토리에 있더라도 !*/ #..