git로 제출을 취소한 상태에서 간단하게 복구하는 방법

1920 단어 Git
나는git 초보자들이 자주 하는 실패라고 생각한다.git의 지엽적인 부분만 파악하면 일어나지 않는 문제이기 때문에 다시 실패하지 않기 위해서는 먼저 잘 이해해야 한다git의 분기 정보.
그러면 이 제출은 사라졌습니다. 어쨌든 제출은 어떤 지점에도 속하지 않기 때문에 로그에 표시되지 않습니다.
이러한 제출은git reflowg 명령을 사용하여 추적할 수 있습니다.
$ git reflog
8598194 HEAD@{1}: commit: 4
a734caa HEAD@{2}: commit: 3
5e85532 HEAD@{3}: checkout: moving from caseB to 5e85532
5e85532 HEAD@{4}: checkout: moving from master to caseB
18de528 HEAD@{5}: checkout: moving from caseB to master
5e85532 HEAD@{6}: checkout: moving from master to caseB
18de528 HEAD@{7}: reset: moving to HEAD^
5e85532 HEAD@{8}: commit: 2
18de528 HEAD@{9}: commit (initial): 1
보이지 않는 제출을 찾을 수 있으며, 산열 형식으로 제출을 추출할 수 있습니다.
상술한 상황에서 a734caa->8598194 두 개는 분지에 포함되지 않는다고 가정한다.

일반적인 처리 방법


우선 꺼내는 방법으로cherry-pick를 사용하는 방법이 잘 설명되어 있다.이것은 한 개 혹은 두 개가 제출하는 경우에 좋은 것이지만 너무 많이 제출하면 꺼내기 어렵다.또 순서를 틀리지 않도록 주의해야 한다.
$ git checkout master (コミットを追加できるブランチに移動する)
$ git cherry-pick a734caa (最初の消えているコミットを取り出す)
$ git cherry-pick 8598194 (次の消えているコミットを取り出す)

분기 방법


보이지 않는 이유는 제출한 것이 어떤 지점에도 속하지 않기 때문에 지점에 넣으면 로그에서 참조할 수 있다.이렇게 되면 많은 연속 제출이 보이지 않아도 한 번에 복구할 수 있다.
$ git checkout 8598194 (消えているコミットの末端へ移動する)
$ git branch MyBranch (ブランチを作る)

이상.

좋은 웹페이지 즐겨찾기