2012-12-04 4 views
0

로컬 저장소에 변경 사항을 적용하면 git이 변경 사항을 push'ed합니다. 로컬 repo에 커밋을 수정하고 커밋을 제거 할 수 있지만 내 원격 repo에 대해 비슷한 작업을 수행하기 위해 어떤 명령을 입력해야하는지 알고 있습니다. 1) 원격 Repo에서 마지막 푸시를 삭제합니다. 2) 원격 저장소로 마지막으로 밀어 넣습니다. 그것은 다른 REPO에 서브 모듈의 경우 특히 - 다른 사람이 당신의 repo를 사용하는 경우 원격 git repo에서 커밋을 수정하거나 삭제하는 방법은 무엇입니까?

vim yourfile 
git add yourfile 
git commit --amend --no-edit 
git push -f origin yourbranch 

조심 :

답변

1

당신은 당신의 새로운 기준을 밀어 강제해야한다.

1

먼저 로컬로 작업해야합니다.

하나의 옵션은 대화 형 rebase를 수행하고 원하는대로 커밋을 변경하는 것입니다. push -f. 지난 10

git rebase -i HEAD~10 당신은 아마 더 나은 (즉, 새가 그 이전으로 되돌아갑니다 커밋 소개) 커밋 지속 revert ING 제공 될 것

0

을 얻어냅니다. 원격 저장소로 이동하면 기록을 다시 작성하면 안됩니다. git을 사용하면 되돌리기는 매우 구체적인 의미를 갖습니다. 역 패치를 사용하여 커밋을 생성하여 취소합니다. 이렇게하면 기록을 다시 쓰지 않아도됩니다. 당신 되돌리기는 새로운 커밋 push을 위해, 필요 아무것도 강요하지 수는없는 특별한 경우로

git revert sha 

은 그럼 그냥 일반적으로 밀어 넣습니다.

git-revert manpage은이 설명에서 많은 부분을 다룹니다. git-revert에 대한 또 다른 유용한 링크가 여기에 있습니다.

관련 문제