내 로컬 컴퓨터에 취미 프로젝트 (GitHub에서 호스트 됨) 및 업무 관련 (다른 곳에 호스팅 됨) 인 일부 git 저장소가 있습니다. 내가 잘못하고 있기 때문에 (물어 보지 마라, 그것은 무관하다) 나는 정기적으로 rm -rf
에 있어야하고, .git/config
파일을 지우는 repo를 다시 복제해야한다.원격 저장소의 URL을 기반으로 git : username을 자동으로 설정하는 방법
내 취미 프로젝트보다 내 작업 프로젝트에 대해 user.email
을 다르게 설정하는 내용을 내 ~/.gitconfig
에 넣고 싶습니다. (.git/config
은 주기적으로 지워지기 때문에 사용할 수 없음을 기억하십시오.) 프로젝트 이름을 기반으로하거나 복제하려는 원격 저장소의 URL을 기반으로 할 수 있습니다.
별도하지만 관련 문제로, 차라리 내가 REPO를 복제 할 때마다 .git/hooks/pre-commit
수정 기억하는 것보다, 모든 내 저장소를 적용하는 글로벌 사전 커밋 후크를 지정할 수 싶어요. (git clone --template
을 알고 있습니다.
git clone
을 수행 할 때마다이 모든 설정을 수행하는 git
에 별칭이 지정된 Bash 스크립트를 작성할 수 있습니다. 그게 유일한 대답인가요? 당신이 디렉토리를 변경할 때 프롬프트를 변경 배쉬 확장 중 하나를 사용하는 경우
방금 시도했습니다. 'git reset --hard && git clean -xdf'를 사용하여 로컬 repo에서 d를 수행하지 않았습니다. 'git checkout -'과는 다릅니다. 특히, 그것은 내가 이미 나의 지역 repo에 만들었던 커밋을 없애지 않았고, 지금 제거하고 싶었다. ... 오, 기다려라.'git reset -hard origin/master'. 네, 그게 효과가 있다고 생각합니다. (하지만 지점별로 한 번씩해야하는데,'git --reset hard origin '은 내가 기대했던대로하지 않는다! 그리고 repo는'rm -rf *'와 반대되는 것이지, 큰 단점이 아니다.) – Quuxplusone
당신이 생각하고있는 두 가지가 있습니다. 작업 디렉토리 청소 및 브랜치 설정. 'git reset -hard origin'은 애매합니다. 당신은 어떤 지점을 말할 필요가 있습니다. 이 스크립트를 스크립팅하고 각 브랜치를 체크 아웃하지 않고 반복 할 수 있습니다. 'git push. origin/master : master -f'는 체크 아웃되지 않은 경우에도 분기를 재설정합니다. –