2012-01-19 5 views
4

나는 [1,2,3]이라는 압축 폴더가 세 개 있는데, 각 프로젝트에는 가장 오래된 프로젝트와 가장 최근의 프로젝트가 포함되어 있습니다. 나는이 모든 것을 3 개의 git 커밋과 3 개의 가장 큰 커밋을 폴더 컨텐트로 병합하는 방법을 찾고있다. 1. 버전 관리 : zip에서 git까지

  • 새 폴더로 1 위를에서 내용을 가져

    1. 압축 풀기 :

      은 내가 다음을 수행 할 수 있습니다 가정합니다.

    2. git init
    3. git add -A
    4. git commit -m "first commit
    5. 의 압축을 풀고 2
    6. 2
    7. 이 내용을 교체의 압축을 풀고 2
    8. git add -A
    9. git commit -m "second commit
    10. 에서 내용으로 새 폴더의 내용을 대체 ~로부터 이이 작업을 수행하는 가장 좋은 방법 인 경우 3
    11. git add -A
    12. git commit -m "third commit

    의 내용으로 새 폴더는 사람이 말해 주시겠습니까?

  • +0

    git init 단계는 첫 번째 단계를 제외하고 불필요한 것처럼 보일 것입니다. –

    +0

    여분의 git init은 복사 및 붙여 넣기 오류 덕분에! – ThomasReggi

    답변

    2

    git init을 실행할 때마다 빈 저장소가 생성됩니다.

    폴더가 세 개인 경우 한 번만 수행하면이 작업이 수행됩니다 (git init을 생략 한 경우). .git 폴더를 지우지 않도록하십시오.

    세 폴더를 압축 해제하고 .git 폴더를 각각 연속적으로 이동하고 각각의 별도 폴더에 커밋하여 최종 폴더를 새 저장소의 시작으로 사용할 수도 있습니다. 여기

    +0

    여분의 git init은 복사 및 붙여 넣기 오류 덕분에! – ThomasReggi

    0

    예. 내용을 완전히 바꾸고 추가 및 제거 된 파일을 모두 잡으십시오.

    4

    내가이

    버전 1 받기에 접근 할 방법

    mkdir MyProj 
    cd MyProj 
    git init 
    # unzip version1 into MyProj 
    git add -A 
    git commit -m "Version 1" 
    

    버전이 가져 최선을 다하고

    # delete everything but the .git directory in MyProject 
    # unzip version2 into MyProj 
    git add -A 
    git commit -m "Version 2" 
    

    버전 3의 버전 3에 대한

    반복을 위 최선을 다하고 받기 최선을 다하고 있습니다 zip 파일.

    5

    3 개의 다른 디렉토리에서 3 개의 zip 파일의 압축을 풉니 다.

    네 번째 디렉토리에서 git repo를 초기화하십시오.

    그럼 당신은 자식의 repo에서 자식 명령을 실행할 수있는의 --work-tree option을 활용하지만의 외부 에 위치한 콘텐츠와 자식의 repo 말했다 : 즉

    cd /your/git/repo 
    git add --work-tree=/path/to/zip1 -A . 
    git commit -m "Add v1" 
    git add --work-tree=/path/to/zip2 -A . 
    git commit -m "Add v1" 
    git add --work-tree=/path/to/zip3 -A . 
    git commit -m "Add v3" 
    

    , 당신은 할 수 git 디렉토리에서 이동하지 않고 다른 내용을 추가하십시오!