저는 git 사용이 처음 이고 .net 대신 일반적인 UNIX 명령( cp
또는 tar
/ ) 을 사용하여 Git 저장소를 복사해도 괜찮은지 궁금합니다 . untag
git clone
저는 일부 코드가 git에서 체크아웃된 프로덕션 환경(Python virtual)이 있는 상황에 있습니다. git 관점에서 a tar
또는 무언가를 사용하여 전체 환경을 복사하는 것이 나쁜 생각인지 궁금합니다 . 이 접근 방식은 코드베이스/환경의 빠른 복사본을 만드는 데 편리합니다.
내 관심사는 git clone이 일부 고유 ID를 작업 복사본과 연결하여 하나가 다른 파일 시스템에서 복사된 두 개의 작업 복사본이 있는 경우 충돌을 일으킬 수 있다는 것입니다.
답변1
완벽하게 괜찮습니다.
git
모든 기록, 커밋 등을 사이트에 저장합니다. 이는 DCVS의 기본 속성입니다.
기술적으로 말하면, git
DCVS의 요점은 다음과 같기 때문에 어디에서나 실행되는 복사된 저장소로 잘 작동할 수 있습니다.특정 저장소 외부에서 무슨 일이 일어나고 있는지 알 필요가 없습니다.,그리고 실제로는 당신이 말하지 않는 한 그렇지 않습니다.
여기에도 동일한 원칙이 적용됩니다.
답변2
전체 작업 디렉터리를 시스템의 다른 위치로 복사할 수 있어야 하며 Git, Hg 또는 SVN을 사용할 때 정상적으로 계속 작동할 수 있어야 합니다. 다른 SCM에 대해서는 언급할 수 없습니다.
답변3
이것은 좀 더 특이한 사용 사례이지만...
나는 본 적이있다repo
유틸리티는 디렉토리에 심볼릭 링크를 만듭니다 .git
. 이 경우 복사를 수행할 때 심볼릭 링크를 역참조하는지 확인하는 것이 좋습니다. 예:
cp -r -L <source-repo-dir> <destination-repo-dir>
답변4
괜찮습니다. 하지만 저장소를 다른 사람과 공유하려는 경우 다음 사항을 고려하십시오.:
- 귀하의
config
파일에는 다른 사람이 신경 쓰지 않을 수도 있는 리모컨이 있을 수 있습니다. - 폴더
logs
에는 공유하고 싶지 않은 참조가 있을 수 있습니다. Git은 최종 결과에 만족할 때까지 컴퓨터에서 불쾌한 작업을 수행한 다음 이를 원격으로 푸시하여 (가끔) 공유할 수 있도록 하는 데 훌륭합니다. 불쾌한 기록 중 일부가 귀하의 리플로그에 있을 수 있으므로 공유하지 않는 것이 좋습니다. IMHO. - 파일
info/exclude
이 일부 파일만 무시할 수 있습니다.너무시하고 싶다. - 또한 후크, 가지 및 개인용이며 공유하지 않는 기타 여러 가지 항목을 가질 수도 있습니다.