2. Start Working Area:: Repository와 Clone & Init

 

0. Git 설치는 되어있나요!?

 

우선 Git을 설치했다는 가정 하에 시작합니다!!

Git 설치 과정도 같이 작성하면 좋을 것 같긴 합니다만,

설치 부분은 자세히 나와있는 블로그도 많고 운영체제별, 버전별, 사이트도 달라지기 때문에...

구글링으로 맞는 블로그 보면서 설치하는 걸 추천드려요~!😁😁 (사실 자신 없음...ㅎㅎ)

 

cmd창을 켜시고 git 을 입력하세요!!

 

cmd에서 사용할수 있는 git 명령어들!!

 

위와 같이 나오면 정상적으로 설치가 된거구, 알 수 없는 명령어라고 나오면 설치가 제대로 안된 겁니다!

아래에 길게 영어로 쓰여있는 부분은 Git Commands인데요! 

파트별로 잘 나뉘어 사실 저 부분만 봐도 어떤 명령어가 어떤 느낌인지는 잡을 수 있을 겁니다!

 

 

...라고는 했지만🤔🤔

repository...  branch... 이게 다 무슨 말이죠...? (라고 생각했던 n개월 전 subing😂)

 

자주 쓰는 용어 위주로! 우선 작성하고 제가 빠트린 용어나 새로 배운 용어들은 추후 추가할게요!

 

우선 Git의 기초 개념을 잡는데 도움되었던 사이트 먼저 공유할게요😋

주임님이 보내주신 사이트인데 왕초보가 개념잡기에 가장 도움되었던 사이트인 것 같아요!

http://backlogtool.com/git-guide/kr/

 

저는 거의 명령어(Commit, push...ㅎ)만 알다 보니 저장소에 대한 개념이 없어서

그 부분부터 개념을 잡고 들어가니 그 뒤에 Commands를 이해하는데 수월했던 것 같아요!

 

그래서 처음에는 명령어보다 "기본 개념에 초점을 두고 개념을 잡아" 공부했습니다.

 

 

1) Repository

 

Git이 관리하고 있는 저장소를 의미합니다. 

크게 원격 저장소(Remote Repository)로컬 저장소(Local Repository)가 있습니다.

 

  • 로컬(local) 저장소: 내 컴퓨터 내에 있는 저장소.
    1. Working Directory: 실제로 소스코드를 작업하는 영역. .git, .gitignor폴더를 제외한 파일 또는 폴더! Git에 의해 관리(Version  Control) 대상이 됩니다.
    2. Staging Area: Working Directory에 git add 명령을 실행하면 Staging Area로 이동하며 이를 통해 소스코드 상태 정보를 확인할 수 있습니다. (Staged, Added 등등..)
    3. (local) Repository: Staging Area에 있는 소스코드에 git commit 명령을 실행하면 최종적으로 local directory에 반영됩니다.

 

  • 원격(remote) 저장소: Git 저장소.
    1. (remote) Repository: Git 서버에 존재하는 저장소! 라고 이해했습니다(아니면 지적 부탁드려요😂) 로컬 저장소에서 최종적으로 git push를 하면 Remote Repository에 올라가게 됩니다! (그러면 다른 사람들도 코드를 볼 수 있게 되겠지요!)

 

라고 이해하면 쉽게 생각할 수 있을 듯합니다!


 

2) Init과 Clone

 

출처: 이사님이 주신 세미나 자료

 

 start a working area에 딱 두 가지 명령어가 있었죠 init과 clone (가장 윗줄 참고해주세요!)

 

    1. init: Local Repository에서 생성한 .git폴더 생성하여 Working directory에 추가!!

    => init을 해석했을 때도 알 수 있듯, '초기화'할 때 사용! .git폴더를 추가하여 working directory를 git에 의해 관리하도록 합니다.

 

git init 하여 Initalized empty Git Repository

처음 공부할 때는 CLI로 공부했어서 이거뿐인데 GUI 버전도 곧 추가할게요!

(++ 추가완료! 22.03.31)

Repository > Add or Create

기존에 있는 폴더에서도 할수있고 새로 만드는 방법도 있네요! 

 

실제로 init이 잘 이루어졌는지 확인하려면 아래 이미지를 참고해주세요!

숨김폴더를 확인하면 .git 폴더가 추가된 것을 확인할 수 있습니다!

 

 

    2. clone: Remote Repository에서 생성한 .git폴더 생성하여 Working directory에 추가!!

    => git에 이미 올라와있는 Remote Repository에서 파일을 내려받을 때 사용! 프로젝트를 복제한다고 생각하면 이해가 쉬웠어요.

 

Repository > Clone

    • Remote Git or SVN repository: Git Url (ex. https://github.com/subin1004/gitproject.git)
    • Local Git repository: 컴퓨터내의 파일 경로 (ex. C:\Users\subin\AndroidStudioProjects\MyApplication)

 

Clone 완료!!

 

회사에서 공부하다 보니 GUI 툴은 Smart Git 사용했습니다! (지금도 사용하고 있구요😎)

무료로 개방되긴 하지만 작업이 제한되어 있고 상업용으로 유료로 라이센스를 얻어 사용한다고 합니다!!

위에 건 회사 프로젝트와는 별도(사실 저 때 프로젝트 clone권한도 없었어요..😋)로 제가 git 공부 때문에 별도로 공부한 부분이어서

추후 사진은 좀 가려질 경우도 있을 수 있을 것 같아요!! 최대한 안 하는 쪽으로 해볼게요!!

 

그리고 소스트리나 다른 프로그램으로 많이들 공부하시는 것 같아서 SmartGit에 관한 정보는 얻기 어려웠는데

한 발짝 먼저 시작한 제가 조금이나마 도움이 되었으면 하는 마음에 최대한 열심히 적어보겠습니다!🤗

 

다른 Git GUI보다 어렵다고 하더라고요! UI적으로 복잡한 것도 있고 Commands에 대한 지식도 더 많이 요구한다고 해요!

사실 저는 GUI를 Smart Git으로 처음 시작했기 때문에 처음부터 차근차근 받아들였어요..ㅎㅎ

 


 

 

벌써 1시네요... 6시간 뒤에 기상해야 하므로 얼른 잠들어볼게요!🤣🤣

TMI로 자가격리 해제후 바쁜..? 시간을 보내고 있답니다... 회사에 녹아드는 중이랄까요...

하지만 한없이 부족하고 모자라고... 아직 파악하는데 어려움을 앓는 중이랍니다...

나중에 #일상 카테고리에...ㅎㅎ 내일은 옥상에서 바람 쐴 여유가 생기길🙏

 

이 글을 찾아주신 분들 모두 건강하시고 코로나 조심하세요!!😄😄

 

♡ 감사합니다!! 뿅!!

 

 

개발자 면접 "무 적 권" 받는 질문!!!

👨‍💼: Git 사용해봤어요?
👨‍💼: Git을 왜 사용하나요?
👨‍💼: 팀 프로젝트 버전 관리는 어떤 식으로 했나요?

라는 질문에 저는 자신 있게 대답했습니다.

 

🙆‍♀️: Git은 팀원들과 협업 프로젝트를 할 때 사용하고, 실제로는 commit이랑 push 해봤습니다!!😆😆😆

 

실화입니다 Real True (Sad) Stroy... 저는 응애도 아닌 💥태아💥였고,

면접관님이 "그것만 하면 안 될 텐데... 허허.."라고 말씀하시는 걸 분명히 들었습니다... 

그 면접관님이 현재 저으 팀장님... 감사합니다...

대학교에서도 학원에서도 누구도 깃에 대한 강의는 해주시지 않았기 때문에

"몰라도 된다. 언어가 중요하지 암!!" 이라는 안일한 생각을 가지고 있었던 것 같아요. (깃 과목 필요하다 생각합니다 악....!!!!!!!)

 

...  너무 무식하고 용감했죠... 🤣🤣

 

그래서 입사 후 첫 임무가 Git 마스터였어요. 어쩌면 당연히 알아야 할 기본 지식인데

저에게 시간을 투자해서 공부할 시간을 주신 수석님들, 도움 주신 주임님들께 너무 감사한 마음이어서 더 열심히했었어요😂

 

입사 첫 주 정리한 내용을 공유하고, 저도 언젠가 이 글을 읽으면서 입사 첫 주의 아찔함🤯을 느끼기 위해... 뚱땅뚱땅 문서화 한 파일을 정리해보려 합니다.

누군가가 보고 도움이 된다면 더더욱 좋을 것 같으면서 제가 공부한 내용이라 틀린 부분이 있을까 걱정되기도 합니다만,

틀린 부분은 지적받아 수정하고 내용을 추가하면서 정리해보겠습니다.

저는 아직도 공부 중이니까요!👩‍💻👩‍💻 (기록용 + 공부용!!!)

 

 

기본 Commands용어의 개념, 용도 정도는 알고있으면, 저와 같은 불상사는 겪지 않을 것이에요...💦💦

 

 

회사에서는 기존에 하고 있던 프로젝트가 있었기 때문에 대부분의 회사는 Git을 사용하고있고,

정말... 기본 중의 기본이라고 이제와서 생각합니다...😂

 

😖 결 론 : G I T 당 장 시 작 해 😖

 

게시글은 자가격리 기간과 퇴근 후 시간을 활용하여 틈틈이 올려볼게요!!

이 글을 찾아주신 분들 모두 건강하시고 코로나 조심하세요!!😄😄

 

♡ 감사합니다!! 뿅!!

 

 

 

+ Recent posts