2009-12-12 5 views
3

이 겉으로보기에는 간단한 질문에 대한 답변을 찾을 수없는 것 같습니다. 코드 저장소를 "릴리스"하면 어떻게 코드 저장소의 깨끗한 복사본을 얻습니까? 예를 들어, 내가 사본을 공개하고자하는 Git 저장소에 있다고 가정 해 보겠습니다. 내가 기부금없이 그것을 어떻게 복사합니까? 숨겨진 자식 디렉토리 등을 원하지 않습니다. 나는 깨끗한 결과물을 원합니다. 아이디어? 나는 RoR과 일하고있다, btw. 당신의 자식 디렉토리 최고의"정리 된"Git 저장소를 얻으려면 어떻게해야합니까?

+0

가능한 속는 : http://stackoverflow.com/questions/160608/how-to-do-a- git-export-like-svn-export –

답변

10

당신은 git archive을 할 수 있습니다, 예를 들면 :이 타르볼로 작업 디렉토리 팩

git archive --format=tar -o /path/to/archive.tar master 

위의 내용은 전체 트리를 가져옵니다. 당신이 원하는 경우, 다수의 "수준"추락을 포함, 특정 디렉토리로 내려 깎다 수 있습니다

git archive --format=tar -o /path/to/archive.tar master somedir/ another/dir/ 
4

는 "gitty"정말 하나의 디렉토리 만이 그리고 그 .git입니다.

다음은 내가 제안한 내용입니다. 릴리스 분기를 체크하고 .git 폴더를 제외한 다른 곳으로 복사하십시오.

$tar --exclude .git -cjf release.tar.bz2 * 
+1

'.gitignore' 파일은 어떻게됩니까? 그것도 "재치있는"것이 아닌가? 여기에는 tarball에있는 사람들도 포함됩니다. 나는'git archive'가 디폴트로 그것들을 제외시킬 지 확신하지 못합니다. 그렇지 않은 경우,'export-ignore' 속성을 사용하도록 구성 할 수 있습니다. –

관련 문제