Git의 다른 모든 커밋 전에 부모 커밋을 추가하려면 어떻게해야합니까?

마리오 카르네 이로

저는 오픈 소스 프로젝트를 Git으로 변환하려는 상황에 있으며 최근에 프로젝트의 기록 데이터에 액세스 할 수있게되었습니다. 하지만 이미 repo를 수정 했으므로 git 이 Git의 커밋 트리 시작 부분커밋 할 때 이러한 초기 변경 사항을 추가하고 싶습니다 . (예, 이것이 나중에 커밋을 위해 SHA를 변경한다는 것을 알고 있습니다. 이것은 허용됩니다.) 데이터는 작업 디렉토리의 연속적인 스냅 샷으로 제공됩니다. 나중에 커밋을위한 작업 디렉토리의 상태가 영향을받지 않도록 설정하고 싶습니다 (변경 사항을 병합하고 싶지 않습니다).

예를 들어, 초기 커밋이 B파일 ab작업 디렉토리에 A추가 하고 내 기록 커밋이 file 추가하는 경우 파일 추가 a하는 새 커밋을 B'부모 로 만들고 싶습니다 . 모두에서 하고 , 작업 디렉토리는 같은 외모, 그리고 상단에 이후의 커밋 안전에으로 업데이트 할 수 있습니다 .AbBB'BB'

힘내에서 이것을 할 수 있습니까? 그렇다면 어떻게?

편집 : 초기 커밋을 수정해야합니다. 의 표준 사용법은 git commit새 커밋을 커밋의 자식으로 추가 HEAD하므로 부모가없는 초기 커밋에는 작동하지 않습니다.

펀치 건

이와 같은 것이 작동합니다.

# Create a new branch with the old history
$ git checkout --orphan old-history    
$ git add <old-files>
$ git commit

# Rebase master on top of the branch with old-history
$ git checkout master
$ git pull --rebase . old-history

이 기사는 인터넷에서 수집됩니다. 재 인쇄 할 때 출처를 알려주십시오.

침해가 발생한 경우 연락 주시기 바랍니다[email protected] 삭제

에서 수정
0

몇 마디 만하겠습니다

0리뷰
로그인참여 후 검토

관련 기사

분류에서Dev

푸시되지 않은 모든 Git 커밋에서 지정된 크기보다 큰 모든 파일을 제거하려면 어떻게해야합니까?

분류에서Dev

중간에 다른 커밋이있는 경우 모든 git 커밋을 하나의 커밋으로 결합하는 방법은 무엇입니까?

분류에서Dev

Git 커밋 해시에서 모든 기호 이름을 얻으려면 어떻게해야합니까?

분류에서Dev

git 하위 모듈을 커밋 된 버전으로 복원하려면 어떻게해야합니까?

분류에서Dev

지금까지의 모든 git 커밋을 단일 커밋으로 전환하고 모든 기록을 지 웁니다.

분류에서Dev

Git에서 변경된 모든 파일을 포함하여 특정 파일에 대한 커밋을 나열하려면 어떻게해야합니까?

분류에서Dev

Git에서 커밋 된 파일의 모든 이전 버전을 가져옵니다.

분류에서Dev

git에서 하나 이상의 예외가있는 모든 파일을 어떻게 커밋합니까?

분류에서Dev

모든 커밋을 하나의 커밋으로 한 브랜치에서 다른 브랜치로 쉽게 이동할 수 있습니까?

분류에서Dev

내가 만든 모든 로컬 Git 커밋을 어떻게 삭제합니까?

분류에서Dev

Git은 모든 이전 커밋에서 특정 파일을 제거합니다.

분류에서Dev

Git은 모든 이전 커밋의 모든 파일에 변경 사항을 적용합니다.

분류에서Dev

Git 체크 아웃 <commit> 후 모든 커밋을 커밋하고 유지합니다.

분류에서Dev

이전 git 커밋을 개별 커밋으로 분할하려면 어떻게해야합니까?

분류에서Dev

gitlab api에서 특정 커밋의 모든 파일 (경로)을 가져 오려면 어떻게하나요?

분류에서Dev

Git은 새 부모 커밋 위에 하나의 부모 커밋에서 리베이스합니다 (이전 부모 커밋이 부모 중 하나로 포함되지 않음).

분류에서Dev

GIT : 첫 번째 커밋에 파일을 추가하고 프로세스에서 기록을 다시 작성하려면 어떻게해야합니까?

분류에서Dev

Git : 다른 커밋에서 저장소의 모든 파일 덮어 쓰기

분류에서Dev

Git 병합이 병합되지 않았으며 모든 커밋을 마스터에 추가했습니다.

분류에서Dev

Git 사전 커밋 후크 : -a 플래그를 사용하여 커밋 할 때 파일을 추가 / 수정하려면 어떻게해야합니까?

분류에서Dev

GitHub를 사용하여 모든 커밋에 대해 하나의 pull 요청을 수행해야합니까?

분류에서Dev

GIT : 커밋을 통해 저장소에 추가 된 Blob의 모든 git 개체 해시 가져 오기

분류에서Dev

두 개의 동일한 커밋을 다른 해시로 병합하려면 어떻게해야합니까?

분류에서Dev

git squash 작성자의 모든 흩어진 커밋을 단일 커밋으로

분류에서Dev

git에서 분기에 하나의 파일을 커밋하지만 다른 모든 분기에서는 무시하는 방법은 무엇입니까?

분류에서Dev

GIT에서 병합 커밋과 관련된 모든 커밋을 찾는 방법은 무엇입니까?

분류에서Dev

Git의 커밋 기록에서 Composer 작성자 목록을 생성하려면 어떻게해야합니까?

분류에서Dev

수동으로 파일을 추가하기 전에 git에서 모든 커밋을 거부하도록 할 수 있습니까?

분류에서Dev

이전 커밋을 모두 무시하고 마지막 커밋으로 어떻게 git checkout을 할 수 있습니까?

Related 관련 기사

  1. 1

    푸시되지 않은 모든 Git 커밋에서 지정된 크기보다 큰 모든 파일을 제거하려면 어떻게해야합니까?

  2. 2

    중간에 다른 커밋이있는 경우 모든 git 커밋을 하나의 커밋으로 결합하는 방법은 무엇입니까?

  3. 3

    Git 커밋 해시에서 모든 기호 이름을 얻으려면 어떻게해야합니까?

  4. 4

    git 하위 모듈을 커밋 된 버전으로 복원하려면 어떻게해야합니까?

  5. 5

    지금까지의 모든 git 커밋을 단일 커밋으로 전환하고 모든 기록을 지 웁니다.

  6. 6

    Git에서 변경된 모든 파일을 포함하여 특정 파일에 대한 커밋을 나열하려면 어떻게해야합니까?

  7. 7

    Git에서 커밋 된 파일의 모든 이전 버전을 가져옵니다.

  8. 8

    git에서 하나 이상의 예외가있는 모든 파일을 어떻게 커밋합니까?

  9. 9

    모든 커밋을 하나의 커밋으로 한 브랜치에서 다른 브랜치로 쉽게 이동할 수 있습니까?

  10. 10

    내가 만든 모든 로컬 Git 커밋을 어떻게 삭제합니까?

  11. 11

    Git은 모든 이전 커밋에서 특정 파일을 제거합니다.

  12. 12

    Git은 모든 이전 커밋의 모든 파일에 변경 사항을 적용합니다.

  13. 13

    Git 체크 아웃 <commit> 후 모든 커밋을 커밋하고 유지합니다.

  14. 14

    이전 git 커밋을 개별 커밋으로 분할하려면 어떻게해야합니까?

  15. 15

    gitlab api에서 특정 커밋의 모든 파일 (경로)을 가져 오려면 어떻게하나요?

  16. 16

    Git은 새 부모 커밋 위에 하나의 부모 커밋에서 리베이스합니다 (이전 부모 커밋이 부모 중 하나로 포함되지 않음).

  17. 17

    GIT : 첫 번째 커밋에 파일을 추가하고 프로세스에서 기록을 다시 작성하려면 어떻게해야합니까?

  18. 18

    Git : 다른 커밋에서 저장소의 모든 파일 덮어 쓰기

  19. 19

    Git 병합이 병합되지 않았으며 모든 커밋을 마스터에 추가했습니다.

  20. 20

    Git 사전 커밋 후크 : -a 플래그를 사용하여 커밋 할 때 파일을 추가 / 수정하려면 어떻게해야합니까?

  21. 21

    GitHub를 사용하여 모든 커밋에 대해 하나의 pull 요청을 수행해야합니까?

  22. 22

    GIT : 커밋을 통해 저장소에 추가 된 Blob의 모든 git 개체 해시 가져 오기

  23. 23

    두 개의 동일한 커밋을 다른 해시로 병합하려면 어떻게해야합니까?

  24. 24

    git squash 작성자의 모든 흩어진 커밋을 단일 커밋으로

  25. 25

    git에서 분기에 하나의 파일을 커밋하지만 다른 모든 분기에서는 무시하는 방법은 무엇입니까?

  26. 26

    GIT에서 병합 커밋과 관련된 모든 커밋을 찾는 방법은 무엇입니까?

  27. 27

    Git의 커밋 기록에서 Composer 작성자 목록을 생성하려면 어떻게해야합니까?

  28. 28

    수동으로 파일을 추가하기 전에 git에서 모든 커밋을 거부하도록 할 수 있습니까?

  29. 29

    이전 커밋을 모두 무시하고 마지막 커밋으로 어떻게 git checkout을 할 수 있습니까?

뜨겁다태그

보관