2021년 1월 20일 수요일

Git 커밋된 것중에 잘못커밋된 파일을 커밋하지 않은것 처럼 되돌리기.

 커밋을 하다보면 엇. 저파일이 왜 올라가 있지. 할때가 온다.

그때 같은 커밋에서 그 파일만 쏙 뺴고 싶을때는


git rebase -i HEAD^잘못올라간 커밋까지의 숫자(1부터 무한대) 

하고 나서 숫자만큼의 커밋목록이 나타나면 파일을 없애고자 하는 커밋의 pick -> edit로 바꾼다.

git restore --source=HEAD^ --staged -- 파일경로/파일이름

하고 나면 

git status 에 staged 된거랑 수정내용이 반영되어진 unstaged된거가 있다.

지울놈은 unstage된넘.(즉, 아래빨간놈)

git restore 파일경로/파일이름

하면 unstage상태에서 빠지고, 

git rebase --continue 

하면 git 가 해당 파일을 커밋에 유지할까 생각하다가 이커밋이전의 커밋하고 차이가 없으니까 커밋목록에서 제가한다.

ex)

git rebase -i HEAD^1


git restore --source=HEAD^ --staged -- . (또는 mysource/.  ,  myfile.java)

git restore mysource/.  (또는 myfile.java) <- 이부분에서 커밋에서 제외됨

git add mysource/otherfile.java (커밋을 유지하고 싶은 파일)

git commit --amend (하면 add했던 파일만 다시 올라와있음)

git rebase --continue


Related Posts:

  • [Git] Git Reflog 로 지워진커밋, 지워진 브랜치 살려내기 Git는 .git에 지운작업조차 다 기록하고 있다. commit, push , pull, cherrypick, rebase..git reflog 로 이력을 볼수 있다.이력이 보이면 커밋아이디가 각각 존재하는데, git reset --hard <7문자의커밋id>하면 해당 커밋이 살아돌아온다.git checkout -b <삭제한 브랜치명> <7문자의커밋id&… Read More
  • [Git] global 설정 자잘한 팁/difftool을 vscode로 하기git config --list : 모든 설정 쫙 git config --global -e : 전역설정파일 ~/.gitconfig 를 열어볼수 있다. user,difftool,mergetool.commit template 등..git config --global core.editor "code --wait" : 이런식으로 설정을 추가하거나 변경가능하다. 이렇게 하면  "git config -… Read More
  • Git 커밋된 것중에 잘못커밋된 파일을 커밋하지 않은것 처럼 되돌리기. 커밋을 하다보면 엇. 저파일이 왜 올라가 있지. 할때가 온다.그때 같은 커밋에서 그 파일만 쏙 뺴고 싶을때는git rebase -i HEAD^잘못올라간 커밋까지의 숫자(1부터 무한대) 하고 나서 숫자만큼의 커밋목록이 나타나면 파일을 없애고자 하는 커밋의 pick -> edit로 바꾼다.git restore --source=HEAD^ --staged -- 파일경로/파일이름하고 … Read More
  • Git 분산관리 버젼 시스템 - 인사이트1.저장소( repository) : 사용자가 변경한 모든 내용을 추적하는 공간.2.저장소 만들기 : mkdir mywebsite cd mywebsite git init 후에 git add index.html git commit -m "hehe first website"3.branch  만들기git branch RB_1.0 mastermaster 브랜치에서 RB_1.0  라는 브랜치를 생성한다. (서… Read More
  • Git 서버 설정생활코딩 쵝오. https://opentutorials.org/course/303/2291순서대로.http://seungbinkim.blogspot.kr/2010/10/git-clone.html 따라했음서버에 구성시키기.원본 디렉토리(original) 에서/home/original/git initgit add .git commit -a -m 'fist'서버의 public_html 서비스 폴더에서/ho… Read More

0 comments:

댓글 쓰기