첫 번째 커밋을 어떻게 다시 시작합니까?
사용한git init
새로운 레포를 만들기 위해 세 번의 커밋을 수행했습니다.이제 돌아가서 첫 번째 커밋을 수정하기 위해 기본을 변경하고 싶지만, 만약 그렇다면.git rebase -i HEAD~3
오류가 표시됩니다.fatal: invalid upstream 'HEAD~3'
!
저도 같은 시도를 해보면요.HEAD~2
그러면 작동하지만 마지막 두 번의 커밋만 다시 정렬할 수 있습니다.
'커밋이 있기 전에 커밋'을 참조하거나 돌아가서 빈 커밋을 삽입하려면 어떻게 해야 합니까?
오류:git rebase -i HEAD~3
:
fatal: invalid upstream 'HEAD~3'
최신 Git를 사용한 간단한 방법(이것은 지금까지 나온 지 오래되었기 때문에 당신은 이것을 가져야 합니다.
git rebase -i --root
다른 쉬운 방법은, Twalberg가 그 이후로 삭제되었지만 현재 https://stackoverflow.com/a/68279810/1256452's 답변에서 확장된 코멘트에서 언급했듯이, 사용하는 것입니다.git checkout --orphan
이전 커밋을 복사할 수 있는 새 루트 커밋을 만들기 위해 설정합니다.rebase -i --root
결국 내부적으로 하게 됩니다.)초기 커밋을 분할하는 것과 같은 일부 목적에서는 이 초기 빈 커밋이 유용합니다.
미래의 참고 사항(2022):대부분의 경우 첫 번째 커밋에 몇 개의 상용 파일만 포함하도록 하는 것이 좋습니다.README
새로운 빈 저장소의 첫 번째 커밋은 항상 약간 특별합니다.Bitbucket, GitHub 및 GitLab과 같은 호스팅 사이트를 사용하는 경우 저장소를 생성할 때 이러한 초기 커밋을 수행하여 생성된 저장소를 복제하고 시작점을 가질 수 있습니다.
이미 커밋에 있는 파일을 변경하거나 작성자/편집자 등을 변경하려면 Torrek의 답변은 괜찮습니다.하지만 만약 당신이 커밋이나 그런 것들을 나누고 싶다면, 당신이 할 수 없기 때문에 문제에 부딪힐 가능성이 있습니다.git reset HEAD~
처음 약속했을 때까지.
이렇게 하려면 다음과 같이 빈 초기 커밋을 삽입할 수 있습니다.
git checkout --orphan empty-initial-commit
git rm -r --cached .
git clean -d -f
git commit --allow-empty -m 'Empty initial commit'
git checkout <branch>
git rebase empty-initial-commit
git branch -d empty-initial-commit
그러면 할 수 있습니다.git rebase -i
커밋(공백이 아닌 첫 번째 커밋)을 편집하고 수행합니다.git reset HEAD~
여느 때와 마찬가지로
언급URL : https://stackoverflow.com/questions/22992543/how-do-i-git-rebase-the-first-commit
'programing' 카테고리의 다른 글
실행할 프로젝트를 찾을 수 없습니다.프로젝트가 D:\home\site\wwroot에 있는지 확인합니다. (0) | 2023.05.07 |
---|---|
전화로 확인할 때 확인MongoDB 컬렉션의 인덱스? (0) | 2023.05.07 |
SQL Server에서 "read committed"와 "repeatable read"의 차이 (0) | 2023.04.07 |
LEFT OUTER JOIN이 왼쪽 테이블에 있는 것보다 더 많은 레코드를 반환하려면 어떻게 해야 합니까? (0) | 2023.04.07 |
SQL Server Management Studio에서 SQL 포맷 (0) | 2023.04.07 |