2016-11-14 3 views
1

나는 주인 가지를 가지고 있습니다. 이전 커밋 시점에서 커밋을 2 주 전에 분기에서이 시점까지 제거하려고합니다.'revert'또는 'rebase'명령을 사용하지 않고 master에서 커밋을 제거하는 방법은 무엇입니까?

git revert은 해당 분기에 이미 존재하는 되돌리기 때문에 사용할 수 없으므로 문제가 발생할 수 있습니다. 나는 마스터 분기에서 커밋 이전에 HEAD을 가리 키도록 솔루션이나 SHA1를 찾고 설정하고있어 그 마스터로 SHA1.

+1

갖고 계신 커밋 그래프와 원하는 그래프를 보여주십시오. git 작업을 다른 방법으로 생각하면 혼동을 야기하는 경향이 있습니다. – jthill

답변

2

HEAD를 이전 커밋으로 지정하고 이것이 마스터라고 설명하는 솔루션을 찾고 있습니다.

현재 분기 masterreset는 무엇이며

: 그것은 (지정된 SHA1를 가리 커밋 수 있도록

git reset SHA1 

이 현재 분기를 재설정, 분기, 태그, 트리 - ish). 작업 트리가 변경되지 않으므로 SHA1과 다른 콘텐츠 인 경우 git diff에 변경된 파일 및/또는 버전없는 파일이 표시됩니다. 작업 트리가 SHA1의 내용과 일치하게하려면 --hard 플래그를 사용하십시오.

변경된 분기를 이전에 푸시 한 원격 위치로 푸시하려는 경우 내역이 다시 쓰여 지므로 git push과 함께 -f 플래그를 사용해야합니다. 공개 지사의 기록을 다시 작성할 때 일반적인 염려를 염두에 두십시오.