본문 바로가기

GitHub 제대로 활용하기

[GitHub] 커피가 식기 전에 git clone을..

2024년 4월 15일 월요일

 

그간 gitHub desktop에 의존해왔기에.. 낯선 명령어 사용에는 겁이 났지만..

해롤드 선생님을 의지하여 용감하게 명령어라는 알을 쪼아 보았다. like., 줄탁동시? 


 

iterms에서 이름과 메일을 확인하고

당당하게 git init으로 초기화 해주었다. 하지만 이는 대불행의 서막.. 

 

 

wishList 폴더를 올리려고 git add를 하니 아래와 같은 경고가 뜨며,

git rm -- cached wishList/wishList 를 하라며 힌트를 쏟아내는데..

 

(눈을 동그랗게 뜨고 다시 읽어보니 다 알려주고 있다아.. )

 

adding embeded git repository 

You've added another git repository inside your current repository...  (왜 안읽었니 과거의 나야..)

 

clone부터 하지 않고 git init 을 남발한 자의 최후..  

게다가 그 git을 init 한 곳의 위치는 하필 user 폴더였다.

 

당시에는 이러한 상황을 인식하지 못한 채

눈에 들어왔던 git rm --cached wishList/wishList 만 한없이 반복하는데.. (숲을 보지 못한 미련한 자여...)

 

이런 엉터리 상황을 인식한 interms 이 -f 로 삭제 하라는 눈치를 줬지만...

 

... has staged content different from both the file and the HEAD  (지금 보니.. 정말 친절한 iterms..)

 

repository 안에 repository가 있다는 상황을 인식하지 못한 채

동일한 이름의 폴더가 두 개인 것이 문제인가 싶어 로컬에서 폴더를 하나로 재정리한 후 다시 삭제를 시도했는데 ..

당연히 해결될 리가 없었고..

 

"아니 .. 어떻게 이렇게 ??! " 

 

이제서야 뭔가 내가 풀 수 없는 어둠의 매듭이 느껴져 해롤드 선생님께 도움을 요청했다.

 

롤드 선생님은 나의 현재 위치(user)를 확인하시고,

gitignore 를 하지 않는 이상 엄청나게 많은 파일들이 git repository에 올라올 것으로 빠르게 판단!

아싸리 새로운 길, "workspace 를 개척하라!" 하셨다.

 

이에 우선, Repo in Repo 에  똬리를 틀고 생성 된 .git 녀석이 제거되었고,

그 다음 새로운 workspace라는 새로운 공간이 개척되었고.. unforgettable mkdir ..

 

wishList 내 어딘가 또 숨어 있을 지 모르는.. (내가  또 init 했을 지 모를) .git 수색 작업을 위해

여러 번 ls 와 ls -al 을 하여 .git 이 없음을 확인한 후에..

비로소 .git 없는 클린한 wishList를 workspace 디렉토리로 옮길 수 있었다.. 

 

이 과정을 통해 배운 중요한 포인트는..  (path 설정을 제대로 해 두는 것은 기본이다..)

 

git clone <url> 을 할 때 

directory 안에 아무 것도 없는 empty 상태의 폴더에서만 가능하다는 것!

 

보이지 않는 파일이 있을 수도 있기에

보편적으로 새로 만들고 바로 git clone을 하는 것이 현명하다.

 

롤드 선생님 왈,

"갓 만든 디렉토리의 열이 식기 전에 .. 바로 git clone 을 하는 것이 좋다.  "

 

like 뜨거운 커피..

 

 

중간에 .DS_Store 파일은 버려주었고, (안 중요)

 

 

(디렉토리가 아직 따끈할 때 호다닥) 원격의 주소를 복사하여 다시 git clone 하였다..

+

 

위의 캡처에서 마지막 줄이 짤렸는데,

$ git push origin main 

으로 push 까지 제대로 해주어야 Remote에 반영되어진다. branch에 올릴 경우는 main 대신 branch 이름!

 

 

+

이론으로 공부했기에 안다고 생각한 내용들이

실제로는 nothing 이었음을.. 깨달았다.. ㅎ ㅅㅎ .. 

 

아래와 같은 마지막 정리를 해 둠으로써 다시는 같은 실수를 반복하지는 않을 것이외다..