여기서 문제를 설명하겠습니다.
1) 새 분기를 만들었습니다.
git checkout -b <newbranch>
2)이 브랜치에서 file1.tcl을 수정하고 커밋했습니다 (지금까지 푸시가 수행되지 않음).
3) 이제 다른 두 개의 별도 파일에서 작업해야했고 별도의 분기를 만들어야했지만 실수로 동일한 작업을 시작했고 <newbranch>
동일한 분기에서 두 파일 (file2.tcl 및 file3.tcl)도 커밋했습니다.
4)이 시점에서 내 실수를 깨달았 기 때문에 새 분기를 만들고 여기에서 file2.tcl 및 file3.tcl에 대한 변경 사항을 수행하고 커밋하고 심지어 git push를 수행했습니다. 이제 file2.tcl 및 file3.tcl에 필요한 변경 사항이 제자리에 있고 github에 푸시됩니다.
5) 이제 다시 <newbranch>
, 여기에서 file1.tcl의 변경 사항을 푸시하고 싶기 때문에 문제는 file1.tcl ... file2.tcl 및 file3.tcl과 함께 지금 푸시하면 알 수 있습니다. PUSH로 이동하십시오. 그래서 어떻게 든 내 git-push 스택에서 그 2 개의 파일을 가져오고 싶습니다.
gourabm@lb4b13-pc-01(eRx)$ git diff --stat --cached origin/master
eRx/lib/file1.tcl | 3348 +++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++--------------------------------------------------------------------------------------------------
eRx/bin/file2.tcl | 1 -
eRx/lib/file3.tcl | 75 +++---
3 files changed, 1978 insertions(+), 1446 deletions(-)
이 두 파일을 내 git-push 목록에서 꺼내는 쉽고 안전한 방법을 제안하여 푸시에 들어 가지 않고 하나의 file1.tcl 만 푸시에 들어가도록합니다.
해봤 어?
git revert {commit-that-changed-file2.tcl}
git revert {commit-that-changed-file3.tcl}
git commit -m "undoing extra changes"
내 이해에서 git은 해당 커밋의 변경 사항을 취소하고 푸시하기 전에 해당 변경 사항을 다시 커밋 할 수 있으므로 리모컨은 영향을받지 않아야합니다.
이 기사는 인터넷에서 수집됩니다. 재 인쇄 할 때 출처를 알려주십시오.
침해가 발생한 경우 연락 주시기 바랍니다[email protected] 삭제
몇 마디 만하겠습니다