728x90

Yagnesh 한테서 도착한 issue 들을 merge 한 이후에 

KakaoAdapterSDK 에서 exception 이 나는 상황을 발견했다.

 

결과적으로 한 3년 정도 처리된 issue 들이 하나하나 제대로 처리됬나 분석하고 

revert 돌리고 나서 다시 한땀한땀 반영해봤는데 안되는 문제가 발생했고

 

 여기저기 찾아 해매다가 결과적으로 git reset 으로 쇼부를 봣다.

 

 

 

이 화면에서

"Reset Current Branch to Here" 을 잡아서 revision 쪽으로 HEAD를 돌리고 나면 commit 이 눈탱이가 돌아갔다고 

Local의 Repository 상태에 Update 쪽이 뜬다.

 

그렇다고 해서 이 부분을 Update 를 땡겨오라는 것이 아니고

내 경우에는 Remote 에 있는 master 마저 조진 상태였기 때문에 

 

Local 에서 조지고 나서 Android Studio 에서 push 를 해줫는데도 제대로 돌아가지 않았다 ^^

역시 진리의 -f 를 줘서 force 를 갈겨주기로 했다.

 

 

origin 에서 master를 갈기면 당연히 local 의 master 를 갈기는 것이므로

origin/master 를 갈겨줘야 remote 상의 master 가 타겟팅이 된다.

 

그러고 나면 정상적으로 돌아오니까 이제 망할놈의 커밋들을 다시 합쳐보자

728x90

OS: Windows 10 (64bit)

App: Git Bash

 

크롬 브라우저를 통해 git 원격 저장소(repository)의 주소를 복사하고, 이것을 윈도우에 설치한 Git Bash 쉘에 붙여넣기를 했다. (마우스 오른쪽 단추를 눌러서 Paste 선택) 이렇게 해서 기존의 git 저장소에 원격 저장소를 연결하고 푸쉬를 했더니, 황당한 에러 메세지가 나왔다.

fatal: protocol 'https' is not supported

 

 

아니 이게 뭔... 깃허브와 빗버킷 모두 잘 쓰고 있는 https가 안되는 건 도대체 무슨 소리인가 어이가 없어서 찾아 보니, 스택오버플로우에서 같은 문제를 호소하는 질문을 찾을 수 있었다. 

결론부터 얘기하면, 인터넷에서 복사한 텍스트를 콘솔에 바로 붙여넣기 하지 말라는 것...

 

우선 직접 git remote -v 명령으로 Git Bash 창에서 확인을 해봐도 잘못 입력된 문자 같은 건 보이지 않는다. 그러나, 해당 에러 메세지를 긁어서 복사하고, 여기 티스토리 에디터에 붙여넣어 보니...

USER@bhshin-desktop MINGW64 ~/source/repos/SWTest190720 (master)

$ git pull

fatal: protocol '–https' is not supported

 

https 글자 앞에 원래 보이지 않던 저 네모칸이 나타났다. 무슨 글자였는지 모르지만, 저것 때문에 알 수 없는 프로토콜이라는 에러가 난 것이었다.

그래서 git remove remove origin으로 삭제하고, 직접 키보드로 주소 전체를 처음부터 끝까지 타이핑을 해서 git remote add를 새로 했다. 그 뒤에는 git pull이나 git push 명령이 모두 정상적으로 작동하였다.

 

역시 기본적인 것에서 황당한 에러가 난다면 (마치 코딩을 100줄도 안 했는데 컴파일 에러가 100개 가까이 되는 경우), 당연하다고 생각하던 기본적인 부분에서 혹시 오류나 실수가 없었는지 봐야 한다.

 


글은 그대로 퍼다가 넣었는데 말이지 나랑 똑같은 짓을 하고 했을 거라는 생각을 몬했다.

어쨋든 카카오뱅크 사전과제 하느라 급하게 repository 만들고 나서 그거 주소 긁어다가 쓩 넣고 CLI에서 보니까 모르는건데, 그러니까 https not supported 가 터지지 해가지고 

 

어? 다른애들은 안터졌다는데? 라고 하고

 

Git Bash 녀석이 저렇게 뱉으면 분명히 뭔가 있다는건데 아무리봐도 모르겟거든.

 

근데 IntelliJ 들어가니까 떡하니 앞에 ㅁ 가 있더라... 아..

'Env Setting > Git' 카테고리의 다른 글

How to find the hash of branch in Git?  (1) 2024.03.18
Merge branch 'master' into others  (0) 2024.03.18
When to Git Clone SSL certificate issue  (0) 2024.03.15
[RESET] git reset 조지기  (32) 2023.12.12
error:failed to push some refs to  (94) 2022.09.27
728x90

git push를 했을때 아래와 같이 error: failed to push some refs to 에러가 발생하는 경우가 있다

 

이는 원격저장소(github)에 내 로컬(내컴퓨터)에는 없는 파일이 있을 때 내 파일을 push 할 면 발생하는 오류이다.

이럴땐 원격저장소에서 내 로컬에 저장하지 않은 파일을 pull한 후 원격저장소에 다시 push를 해야한다.

아래의 예시에서 상황을 확인하고 해결책을 알아보자.

 

 

그러니까 내 로컬에서 원격 리포지토리로 파일 동기화를 시도하게 되는 경우에, 이 친구들은 hash 가 생겨나게 되면서 ref 라는 값으로 바인딩이 되곤 하는데, 이 ref라는 친구들을 밀어넣다가 에러가 터졋다는 것이다.

 

Git 과 동기화를 시도하기 전에 맨 처음 확인해야 할 것

1. 다른 리포지토리로부터 다운 받았던 파일들인지 등에 대한 것을 확인한다. 혹은 다른 곳(예를들면 회사)에서 작업했던 파일인지 확인한다.

 

이 경우 해당하는 폴더에는 회사에서 사용한다던가 하는 Account가 배정되어 있을 것이고, 이 친구들이 중복되어 에러를 뱉는 단계도 나온다.

-> 이 경우라면 .git 폴더를 검색하여 다 날리고나서 

git init 시퀀스부터 진행해준다.

 

 

1번을 진행했음에도 불구하고 위와 같은 에러가 뜬다면 pull로 땡겨본다.

그리고 나서도 문제가 있다면, 파일들이 모두 add 가 되었다는 상태를 가정하에 commit 을 시도하면 예쁘게 잘 올라가는 것을 확인할 수 있다. (는 거짓말)

 

위와같이 파일의 크기가 엄청나게 큰 경우에는 안올려준다.

 

 

 

 

상황 설명 및 해결

 

1. 상황

내 컴퓨터(local)에서 f1.py파일을 수정하였다. 이후 github에 수정한 내용을 push하려고 했지만, 팀원이 f2.py 파일을 올려놨다.

이 경우 나의 push가 제한된다.

 

2. pull

먼저 원격저장소에 f2.py를 내 로컬로 가져와야된다.

즉 원격저장소를 pull 해야한다.

git pull {원격저장소별칭 보통 origin이라고 함} master

그러면 아래와 같은 상황이 된다.

 

3. push

이후에는 push가 가능해지므로 add,commit,push를 해서 내가 반영하고 싶은 수정사항을 반영하면 완성!

git push {원격저장소 별칭 보통 origin} master

 

+ Recent posts