git에 대하여 - git이란 무엇인가
1. 다운로드
구글에 git 검색
다른건 다 클릭 누르면서 다운 받으면 되는데 아래 그림만 주의
\
--------------------------------------------------------------------------------------------------------------------------------------
토막 컴퓨터 상식
64bit와 32bit의 차이?
컴퓨터가 한번에 읽을 수 있는 명령어의 길이에 따라 구분
하지만 요새 컴퓨터는 성능이 좋아서 대부분 64bit
--------------------------------------------------------------------------------------------------------------------------------------
2. 깃(git)
분산 버전 관리 프로그램
버전: 컴퓨터 소프트웨어의 특정 상태
관리: 어떤 일의 사무, 시설이나 물건의 유지, 개량
프로그램: 컴퓨터에서 실행될 때 특정 작업을 수행하는 일련의 명령어들의 모음
>> sw의 상태를 관리해주는 프로그램
3. 버전관리?
-----------------------------------------------------
예시1)
마케팅 레포트 - 최종
마케팅 레포트 - 진짜최종
마케팅 레포트 - 리얼최종
마케팅 레포트 - 정말최종
마케팅 레포트 - 정말정말최종
>> 언제 수정했는지 그에 대한걸 알수가 없다
예시2)
마케팅 레포트 - 211201_1604
마케팅 레포트 - 211202_1215
마케팅 레포트 - 211203_0530
마케팅 레포트 - 211204_0921
마케팅 레포트 - 211205_1305
>>날짜와 시간을 추가해서 언제 수정했는지 알 수 있지만.. 어떤걸 수정했는지 알기 어렵다
예시3)
마케팅 레포트 - 211201_1604
마케팅 레포트 - 변경사항1
마케팅 레포트 - 211202_1215
마케팅 레포트 - 변경사항2
마케팅 레포트 - 211203_0530
마케팅 레포트 - 변경사항3
마케팅 레포트 - 211204_0921
마케팅 레포트 - 변경사항4
마케팅 레포트 - 211205_1305
마케팅 레포트 - 변경사항5
>> 변경사항을 추가해서 기록했지만 뭔가 복잡함
예시4)
마케팅 레포트 - 211201_1604_변경사항1
마케팅 레포트 - 211202_1215_변경사항2
마케팅 레포트 - 211203_0530_변경사항3
마케팅 레포트 - 211204_0921_변경사항4
마케팅 레포트 - 211205_1305_변경사항5
마케팅 레포트 - 최종결과물
>> 시간에 따른 변경사항들만 남기고, 그에 따른 최종결과물 보유
>> git의 방식
-----------------------------------------------------
git은 수정만 하면 알아서 어떻게 언제 수정했는지 일일이 기록으로 남겨주고 최종 결과물만 남긴다
>> 버전 관리에 효과적임
1) 코드의 히스토리(history)를 관리하고
2) 개발되어온 과정을 파악하고
3) 이전 버전과의 변경사항을 비교 분석하기 쉽다
4. 왜 분산버전관리인가
분산버전관리는 동시에 다른 사람들도 모두 해당 파일에 접근할 수 있는 형태
저장소 전부를 복제한다. 그래서 서버에 문제가 생겨도 복구하기가 쉽다
다른 사람들 모두 동잃한 저장소를 보유하므로 동시에 협업하기 쉽다
중앙집중식은 한곳에만 파일을 보관하여 배포하는 형태
5. git과 github는 무슨 차이가 있는가
git은 분산버전관리 프로그램이고 github는 저장소를 제공해주는 서버이다
깃허브는 나의 프로그래밍 관심과 열정을 보여줄 수 있는 곳
'프로그래머의 프로필'이면서 '기본소양'
신입개발자의 역량은 '꾸준히 학습할 수 있는 사람'
매일 내가 배운 것을 마크다운으로 문서화하고 코드화시켜서 정리해놓으면 이러한 점을 어필할 수 있다
깃허브가 82.8%, 깃랩이 37%로 압도적인 사용 점유율
6. GUI와 CLI 차이
GUI : Graphic User Interface
윈도우 화면같이 그래픽으로 사용자와 컴퓨터가 상호작용함
마우스로 클릭해서 프로그램 접속하고..
CLI: Command Line Interface
명령어로 컴퓨터와 사용자가 상호작용하는 방식
명령어를 사용하여 원하는 프로그램을 동작시키는..
일반적으로 GUI를 많이 써서 GUI가 더 좋다고 생각할 수 있지만
GUI는 마우스로 단순히 클릭해서 접속하니까 사용이 쉬워도 프로그램 수행까지 거치는 단계가 많아 성능을 많이 소모함
그래서 대부분의 서버/개발시스템이 CLI로 조작환경을 제공한다
프로그래머라면 CLI에 익숙해져야
7. 간단하게 미리 알아보는 git 핵심 사용법
git clone (url) 사용하면 해당 레포지토리를 컴퓨터로 복사함
참고로 복사 붙여넣기 ctrl+v가 먹히지 않아서 마우스 오른쪽클릭으로 붙여넣기함
그러면 해당 폴더에 레포지토리 내용들이 복사되어있음
python (파이썬 파일명).py하면 cmd에서 해당 파일을 실행해줌
unittest 하는 방법은 python -m unittest (test 함수가 들어간파일명).py
git add *.py로 해당 폴더의 파이썬 파일을 업로드할 준비가 되어있음을 알림
특정 파일만 하고 싶으면 git add basic_math.py
git commit -m (message)은 코드 등의 변경을 기록하고자 할 때 사용하는 것
변경한 메시지가 위와 같이 기록되어있다
git push (원격 레포지토리명) (브랜치명)으로 변경된 코드를 그대로 레포지토리에 넣어서 변경시킬 수 있음
보통 git push origin main
깃허브에 처음에는 이런식으로 되어있는데
이렇게 바뀌어 있음
출처
'프로그래밍 > git 가이드' 카테고리의 다른 글
모든 파일을 한번에 다른 폴더로 옮기기 (0) | 2022.07.29 |
---|---|
git bash에서 could not fork child process there are no available terminals (-1) 에러 해결법 (0) | 2022.07.23 |
git bash 명령어만으로 파일을 옮기는 방법 (0) | 2022.07.19 |
마크다운 사용 가이드 (0) | 2022.07.17 |
반드시 알아야하는 git 기본 사용 가이드 (0) | 2022.07.16 |