Git

git push

git push

원격저장소에 저장한다.

// 원격저장소에 저장한다.
git push [리모트 저장소 이름] [브랜치 이름]

ex)
    git push -u origin master

git push -u origin master

  • 처음에는 이것을 해야한다 왜냐하면 local 저장소의 master브랜치와 원격 저장소의 master 브랜치를 연결시켜줘야하기 때문이다.
  • 그 다음에 push할때는 그냥 push만 해주면 된다.(연결 되어 있기 때문에)

깃 태그

  • 사용 하는 이유는 각 커밋 지점에 참조하기 쉽도록 나타내는 것
git push --set-upstream origin master

//뜻이 자동으로 origin의 master브랜치로 push해주는것을 말한다
//만약 git push --set-upstream origin 브랜치명 을 안하게 되면
//계속 git push origin 브랜치명으로 일일이 적어줘야한다

//이 명령어 이후로는 git push만 사용하면된다.

push할때 에러발생 상황

// 에러 - ! [rejected] master -> master (fetch first)
// 이미 변경된 파일이 원격저장소에 있을경우 발생
git pull origin master 

// 에러 - ! [rejected] master -> master (non-fast-forward)
git push origin +master

 

 


 

git push 취소하기

  • 이 명령을 사용하면 자신의 local의 내용을 remote에 강제로 덮어쓰기를 하는 것이기 때문에 주의해야 한다.
    되돌아간 commit 이후의 모든 commit 정보가 사라지기 때문에 주의해야 한다.
  • 특히, 협업 프로젝트에서는 동기화 문제가 발생할 수 있으므로 팀원과 상의 후 진행하는 것이 좋다.
  1. 워킹 디렉토리에서 commit을 되돌린다

    • 가장 최근의 commit을 취소하고 워킹 디렉토리를 되돌린다

      // 가장 최근의 commit을 취소 (기본 옵션: --mixed)
      git reset HEAD^
  • 원하는 시점으로 워킹 디렉토리를 되돌린다.
// Reflog(브랜치와 HEAD가 지난 몇 달 동안에 가리켰었던 커밋) 목록 확인
git reflog 또는 $ git log -g

// 원하는 시점으로 워킹 디렉터리를 되돌린다.
git reset HEAD@{number} 또는 $ git reset [Commit ID]
  1. 되돌려진 상태에서 다시 commit을 한다.
git commit -m "Write commit messages"
  1. 원격 저장소에 강제로 push 한다.
$ git push origin [branch name] -f

또는

$ git push origin +[branch name]
// Ex) master branch를 원격 저장소(origin)에 강제로 push
git push origin +master

경고를 무시하고 강제로 push 하기

[방법 1] -f 옵션

  • –force 옵션과 동일하다.

[방법 2] +[branch name]

  • 해당 branch를 강제로 push한다.

 

 

 

참고 링크)

https://gmlwjd9405.github.io/2018/05/25/git-add-cancle.html

'Git' 카테고리의 다른 글

git clone  (0) 2020.10.30
git pull  (0) 2020.10.30
git remote  (0) 2020.10.30
git commit  (0) 2020.10.30
git add  (0) 2020.10.30