• head
    • 현재 체크아웃된 커밋을 가리킨다.
    • 항상 작업 트리의 가장 최근 커밋을 가리킨다.
  • git log
    • 로그를 확인할 수 있다.
    • 현재까지의 커밋 기록 등을 볼 수 있는 명령어이다.
  • git checkout [branch명]^
    • ^을 브랜 치명 뒤에 붙일 경우 해당 커밋의 부모(즉, 커밋 트리에서 한 단계 전 이미지)를 찾아서 checkout 해준다.
    • ^^두 개를 붙여 부모의 부모를 선택할 수도 있다.
  • git checkout [branch명]~num
    • ^를 사용하면 한 단계씩 올라가지만 ~를 사용하면 여러 단계를 한 번에 이동할 수 있다.
  • git branch -f main HEAD~3
    • -f 옵션을 이용하면 브랜치를 특정 커밋에 직접적으로 재지정할 수 있다.
  • git reset [branch명][돌아갈 hash값 ^혹은 ~ 사용]
    • 커밋하기 전으로 돌리는 작업
    • 로컬에서 사용 가능(팀원들과 공유는 불가능)
  • git revert [branch명]
    • 현재 커밋과 반대되는 내용으로 새롭게 커밋을 해준다.
    • 팀원들과 공유 가능

'Git & GitHub' 카테고리의 다른 글

Step 1  (0) 2021.10.20
4. 팀원 추가, commit 내용 확인, 저장소 삭제  (0) 2021.07.11
3. Git 업데이트 및 내려받기  (0) 2021.07.11
2. Git 초기화 및 업로드  (0) 2021.07.11
1. GitHub 가입, Git 다운로드 & 설치  (0) 2021.07.10
  • git commit
    • 디렉터리에 있는 모든 파일에 대한 스냅숏을 저장소에 기록하는 것
  • git branch [branch명]
    • 브랜치란 특정 커밋에 대한 참조 정도로 생각하면 된다.
  • git checkout [branch명]
    • 초기에 main브랜치 하나만 있을 때는 사용할 일이 없을 수도 있지만 git branch XXX로 브랜치를 생성했을 때는 여러 브랜치로 이동을 해야 하는 경우가 있다. 이때 사용하는 것이 git chekout [branch명]으로 해당 브랜치로 이동이 가능하다.
  • git merge [끌어올 branch명]
    • 브랜치가 생성이 되고 각 브랜치 별로 커밋작업을 했을때 해당 저장소는 브랜치별로 다른 방향의 이미지가 잡혀있을 것이다.
    • 이때 여러 갈래의 브랜치들을 묶어주는 명령어이다.
    • 부모 브랜치에서 자식을 merge 해주면 된다.
    • 그 뒤에 끌어온 브랜치로 checkout 한 후 부모 branch를 merge 해준다. 이 작업은 자식 브랜치는 부모와 같은 곳을 보고 있지 않으므로 자식 브런치를 부모 쪽으로 끌어오기 위한 작업이다.
  • git rebase [합쳐질 branch명]
    • 커밋들을 모아서 복사한 뒤 다른 곳에 떨궈놓는 작업
    • merge랑 비슷하다
    • 같은 레벨에 브랜치를 가져오기 위해 이전 버전에 있을 다른 브랜치로 이동 후 rebase 해준다.

'Git & GitHub' 카테고리의 다른 글

Step 2  (0) 2021.10.20
4. 팀원 추가, commit 내용 확인, 저장소 삭제  (0) 2021.07.11
3. Git 업데이트 및 내려받기  (0) 2021.07.11
2. Git 초기화 및 업로드  (0) 2021.07.11
1. GitHub 가입, Git 다운로드 & 설치  (0) 2021.07.10

-팀원 추가

저장소에 들어가면 저장소 이름 밑에

위와 같은 내비게이션이 있을 것이다. Setting을 눌러주자

왼쪽의 Manage access를 누르고 오른쪽에 표시해둔 Invite a collaborator를 눌러주자

 

해당 repository에 파일을 올릴 수 있는 사람을 지정해 줄 수 있다.

상대방의 GitHub 닉네임으로 검색이 가능하다.

검색 후에 add 버튼을 눌러주자

Invite a collaborator버튼이 있던 자리에 위의 이미지와 같이 멤버가 추가된 것을 볼 수 있다.

pending invite를 눌러서 추가한 사람에게 링크를 보내주고 링크를 받은 사용자가 수락하면 해당 repository를 공유할 수 있다.

링크를 받은 사용자가 GitHub에 로그인 후에 링크로 접속하면 다음 이미지와 같은 화면이 나온다.

Accept를 눌러주면 정상적으로 연결이 완료되며 commit을 할 수 있게 된다.

사용자 삭젠는 우측에 휴지통 모양을 누르면 된다.

 

-commit내용 확인

지금까지의 commit내용들을 확인하고 싶다면 간단하게 확인이 가능하다.

repository에 접속 후

빨간색으로 표시한 부분을 눌러주면 된다.

지금까지의 commit사항과 클릭해서 들어가면 어떤 코드가 수정되었는지 확인이 가능하다.

 

-저장소 삭제

삭제하고자 하는 저장소에서 Settings > Options로 들어가서 제일 하단까지 스크롤을 내려준다.

그중에 제일 아래 있는 Delete this repository를 눌러 삭제를 진행해주면 된다.

삭제 진행 시에 저장소의 이름을 다시 입력을 받는다.

빨간색으로 표시된 부분에 글씨만 조금 더 두껍게 돼있다.

저 부분을 그대로 밑에 입력을 해주고 버튼을 누르면 저장소가 제거가 된다.

'Git & GitHub' 카테고리의 다른 글

Step 2  (0) 2021.10.20
Step 1  (0) 2021.10.20
3. Git 업데이트 및 내려받기  (0) 2021.07.11
2. Git 초기화 및 업로드  (0) 2021.07.11
1. GitHub 가입, Git 다운로드 & 설치  (0) 2021.07.10

-Update

지난 포스팅에 이어서 만들어둔 테스트 폴더에 다른 java파일을 추가해서 업데이트를 진행해보도록 하겠다.

먼저 바탕화면 테스트 폴더에 java파일을 하나 추가해주자

 

이렇게 파일을 하나 추가해주고 깃 명령어를 입력한다.

  1. git add .
  2. git commit -m "second commit"
  3. git push origin master

git bash를 이용해서 푸시를 해주고 github페이지로 가서 확인을 해보면 업로드가 되어있을 것이다.

빨간색으로 표시해 둔 곳이 최근 커밋한 내용 시간 등이 나와있다.

지난 포스팅에서 add. 명령어와 중복에 대해 말을 했었는데 위의 예제를 보면 알 수 있다.

Git Bash에서 add . 명령어로 모든 파일을 올리겠다고 했지만 새롭게 추가된 test2 파일만 올라간 것을 확인할 수 있다.

 

- Clone

파일을 다운로드하는 방법에 대해서 알아보도록 하자.

먼저 secondeTest폴더를 새로 생성해준다.

실습을 위해 컴퓨터를 구매할 수 없으니 first 폴더와 second 폴더를 각각 다른 컴퓨터라고 생각을 하고 실습을 진행한다.

 

Code버튼을 누르면 밑에 창이 하나 열린다. 표시해둔 네모 박스를 찾아 누르면 복사가 완료된다.

이제 바탕화면에 생성해둔 second폴더에 우클릭 후 git bash here로 git을 열어준다.

하단에 다운로드로 받아올 수도 있지만. git폴더가 생성되지 않는다. 꼭 포스팅에 제시된 방법으로 진행하자.

 

git clone 명령어를 통해 가져온 주소의 저장소를 해당 폴더에 복사하겠다는 뜻이며, 주소 맨 뒤에 한 칸 띄우고 입력해준 마침표는 해당 폴더에 압축을 풀겠다는 뜻이다.

기본적으로 clone을 해서 가져오면 repository의 이름으로 폴더가 하나 생성되며 그 안에 압축이 풀린다.

하지만 지금은 새로운 폴더를 만들어놓고 그 안에 압축을 풀 것이기 때문에 뒤에 한 칸 띄우고 마침표를 붙여준다.

이상 없이 클론이 잘 완료되었다.

클론을 할 경우 해당 폴더에는. git폴더 혹은 다른 파일이 존재하면 안 된다.

오류가 날 경우 폴더가 비워져 있는지 한번 확인을 해보면 좋을 것 같다.

 

클론이 끝난 뒤 폴더에 들어가면 first폴더와 똑같이 파일이 다운로드하여져 있을 것이다.


-Pull

말 그대로 당겨온다는 뜻이다.

first와 second에는 같은 저장소가 연결이 되어있다.

first에서 수정해서 commit 한 사항을 second에서 받아올 수 있는데 이때 second에서 받고는 작업을 pull이라고 한다.

 

먼저 first폴더에 가서 파일을 하나 추가해주도록 하자.

새로 test 3 파일을 생성해 주었다.

업로드 진행

GitHub페이지에서는 업로드가 완료된 것을 확인할 수 있다.

하지만 second폴더에는 새로운 사항이 반영되지 않았기 때문에 바로 second폴더에도 변경사항을 반영해 주도록 하자.

 

second 폴더에서 GitBash를 열고 git pull 명령어를 입력해주기만 하면 끝이다.

second폴더에 잘 생성이 되었다.

 

주의할 점은 삭제 후 commit을 하고 다른 곳에서 pull로 내려받았을 때 자동으로 삭제를 해주지 않는 점을 주의하자.

'Git & GitHub' 카테고리의 다른 글

Step 2  (0) 2021.10.20
Step 1  (0) 2021.10.20
4. 팀원 추가, commit 내용 확인, 저장소 삭제  (0) 2021.07.11
2. Git 초기화 및 업로드  (0) 2021.07.11
1. GitHub 가입, Git 다운로드 & 설치  (0) 2021.07.10

-Git & GitHub사용법

이번 포스팅에서는 가장 기본적인 사용법만 포스팅을 할 예정이다.

먼저 GitHub Repository를 생성하는 작업을 한다.

 

-Repository

저장소라는 뜻 그대로 소스코드를 저장할 공간을 만들어주는 과정이다.

먼저 GitHub에 로그인을 한다.

첨부 1

첨부 1에 빨간색 네모를 보면 플러스 버튼이 있다.

플러스 버튼을 누르면 메뉴가 나오는데 New repository를 눌러 새로운 repository를 만들러 가보자.

첨부 2

  • 첫 번째 박스
    • Owner : 저장소는 여러 명이 공유를 할 수 있다. 팀장? 쯤으로 생각하면 될 것 같고 혼자 쓴다면 디폴트로 두면 된다.
    • Repository name : 저장소의 이름을 정할 수 있다. / 명명 규칙은 따로 존재하지는 않지만 어떠한 프로젝트인지 알아보기 쉽게 정하는 것이 좋다.
    • Owner, name은 필수사항이다.
  • 두번째 박스
    • 저장소의 설명을 적을 수 있다.
    • Optional이기 때문에 필수는 아니다.
  • 세 번째 박스
    • Public : 누구든 올려둔 소스코드를 보거나 다운로드할 수 있다.
    • Private : 설정해둔 팀원들 외에는 올려둔 소스코드를 보거나 다운로드할 수 없다.
  • 네 번째 박스
    • Add a README file : README.md파일을 올리면 저장소 페이지에서 소스코드에 대한 상세 설명 등을 노출시킬 수 있는 기능이다. mark down이라는 문법 규칙을 통해 html과 비슷하게 디자인을 할 수 있지만 이번 포스팅에서는 다루지 않겠다
    • Add. gitignore : gitignore라는 확장자의 파일을 추가해주는 것인데 보안상 올리면 안 되는 소스코드들을 따로 빼서 commit시에 안 올라가게 할 수 있다.
    • Choose a license : 라이선스를 표시할 수 있는데 이번 포스팅에서는 다루지 않겠다.

이번 포스팅에서는 간단하게 테스트를 하기 위해 firstTest라는 이름으로 repository를 생성하겠다.

작성할 부분을 다 작성하고 create repository를 눌러 생성을 해주면

첨부 3

첨부 3과 같은 화면이 출력됬다면 GitHub사이트에서의 준비는 끝났다.

잠시 창을 최소화 해두고 바탕화면으로 가서 새로운 폴더 하나를 생성해준다.

첨부 4

테스트를 위해 사용할 자바 파일을 아무거나 하나 가져온 뒤 폴더에 넣어준다.

첨부 5

다시 바탕화면으로 나가서 폴더를 우클릭해준다.

Git Bash Here을 눌러주면 Git CLI창이 열린다.

Git Bash를 직접 열어서 cd 명령어를 통해 폴더 위치를 찾아가도 되지만 귀찮다..... 그렇기 때문에 첨부 5의 방법으로 열면 귀찮게 디렉터리를 찾아가지 않아도 폴더의 위치가 지정된 CLI가 열린다.

첨부 6

첨부 6과 같이 GitHub홈페이지와 Git Bash를 열어준다.

빨간색의 내용을 노란색에 하나하나 옮겨주면 세팅이 완료된다.

  1. git init
    • 해당 폴더를 github에 올릴수 있도록 초기화를 해준다.
    • 폴더를 들어가보면 .git파일이 생성되었다.
    • 생성된 게 보이지 않는다면 보기 탭에서 숨김 항목에 체크를 해주면 숨김 폴더가 나올 것이다.
    • 기본적으로. git폴더는 하나의 폴더에 하나만 있어야 하며 사용자가 임의로 다른. git폴더를 합치거나 삭제를 하면 오류가 발생한다.
  2. 홈페이지에는 안 나와있지만 사용자 정보를 입력해줘야 한다.
    • git config (--global) user.name "name"
    • git config (--global) user.email "email"
    • 위의 두 개를 입력해주면 된다.
    • --global은 옵션이다. 작성을 해줄 경우 해당 컴퓨터의 모든 곳에서 지금 입력한 사용자로 등록을 해준다는 것이다. 폴더별로 따로 사용자를 등록해주고 싶다면 해당 옵션을 사용하지 않아도 되지만 개인 컴퓨터라면 그냥 입력해주는 게 편하다.
    • name은 편한 이름을 써도 좋지만 git과 같은 이름을 사용해주자.
    • email은 github 이메일을 사용해줘야 한다.
  3. git add .
    • 폴더 안에 있는 파일을 올릴 준비를 해준다.
    • 이 과정에서 어떤 파일을 올릴지 선택해 줄 수 있는데 프로그래밍을 해보셨다면 알 수 있듯이 파일이 한두 개 생성되는 게 아니다. 
    • .(마침표)를 뒤에 붙여주면 폴더 내에 모든 파일을 올린다는 뜻이다.
    • 꼭 add뒤에 한 칸을 띄우고 마침표를 입력해 줘야 한다.
    • 이미 올라가 있는 파일에 대한 걱정은 하지 않아도 된다.
      • 올렸을 때 수정되거나 새로 생성된 파일만 새로 업로드를 해주고 그렇지 않은 파일은 업로드되지 않고 그대로 유지되기 때문에 자료의 중복이 생길 걱정은 없다. 그냥 항상 전체를 올려주자
      • gitignore를 사용해 올리면 안 되는 파일을 걸러낼 수 있지만 후에 포스팅하도록 하겠다.
  4. git commit -m ""
    • 올릴 파일들에게 메시지를 남겨줄 수 있다.
    • 무조건 작성을 해줘야 하며 큰따옴표("") 안에 작성을 해주면 된다.
    • 보통 어떤 부분이 수정이 되고 추가 · 삭제되었는지 확인 가능하게 올려준다.
    • 한글도 가능하지만 영어를 추천한다.
    • 순서대로 했다면 아래 첨부한 이미지와 같은 내용이 출력되었을 것이다.
  5. git remot add.....
    • 생성한 repository와 폴더를 연결해주는 명령어다.
    • 그냥 그대로 긁어서 Git Bash에 넣어주면 된다.
    • ctrl + v는 사용할 수 없다. 우클릭 후 페이스트 혹은 키보드의 insert키로 붙여 넣고 엔터를 쳐주자.
    • 이 작업은 처음 생성했을 때만 해주면 후에는 다른 repository를 만드는 게 아니라면 사용할 일이 없다.
  6. git push
    • 연결된 저장소에 파일을 올리는 명령어다.
    • git push origin master로 이렇게 수정해서 입력해주도록 하자.
    • 이유는 후에 포스팅을 통해 하겠다. 지금은 그냥 이렇게 하면 저장소에 파일과 commit내용이 올라간다고만 알고 있자.
    • 명령어를 입력하면 github 로그인을 요청하는 창이 하나 뜰 건데 위쪽의 홈페이지로 가는 버튼을 누른 후 초록색 버튼으로 access 해주자.
    • 그 뒤에 다시 Bash로 돌아가면 아래 코드가 나온다.
    • 위와 같은 코드가 나오면 완료된 것이고 GitHub페이지를 리로드 해보면 올라가 있는 파일을 볼 수 있다.

※중간에 보면 branch라는 부분이 있다. commit다음에 나와있는 부분인데 처음 배우는 과정에서는 생략하도록 하겠다.

간단히 설명을 하고 넘어가자면 말 그대로 가지를 나누는 것이다. 저장소에 파일을 올려줄 때 버전을 나눠서 올려주고 나중에 합치는 작업등을 할 수 있지만 지금 레벨에서 하기에는 벅차다고 생각한다.

'Git & GitHub' 카테고리의 다른 글

Step 2  (0) 2021.10.20
Step 1  (0) 2021.10.20
4. 팀원 추가, commit 내용 확인, 저장소 삭제  (0) 2021.07.11
3. Git 업데이트 및 내려받기  (0) 2021.07.11
1. GitHub 가입, Git 다운로드 & 설치  (0) 2021.07.10

- Git, GitHub이 뭔가요?

프로그래밍을 하면 많은 소스파일들이 생긴다.

 

java의 경우 여러 패키지에 여러 클래스를 작성한. java파일이 있을 것이고 프런트엔드의 html, css, JavaScript 파일들 또한 많은 파일이 만들어진다.

 

혼자서 작업을 한다면 USB 또는 외장하드 등을 이용해 백업과 폴더를 나눠서 버전 관리 등을 해줄 수도 있겠지만

팀 단위로 작업을 하게 되거나 버전이 많이 변경될 가능성이 있으며, 그 버전을 통합하는데 어려움이 있다면 Git과 Github를 이용해 소스코드를 관리해주는 것이 좋다.

 

-Git

Git이란 내 컴퓨터에서 GitHub이라는 저장소에 자료를 올릴 수 있도록 해주는 프로그램을 말한다.

 

CLI (Command Line Interface; 검은색 배경에 흰색 글씨가 써진, 프로그래머만 사용할 것 같은 화면을 말한다.) 혹은

GUI (Graphical User Iterface; 아이콘 등을 눈으로 확인해가면서 CLI에 비해 직관적으로 사용이 가능하다.)

이렇게 두 가지로 사용을 할 수 있지만 이 글에서는 CLI를 사용하겠다.

 

-GitHub

쉽게 말해서 네이버 클라우드, 아이클라우드 등을 생각하면 될 것 같다. Git을 통해서 설정한 Repository에 저장을 할 수 있으며 소스코드를 웹에서 바로 확인하고 Commit 내용 등을 확인할 수 있다.

 

-GitHub 가입

*이 글을 읽는 시점에 따라 GitHub 홈페이지의 UI는 변경이 될 수도 있다.

첨부 1

Google에서 GitHub을 검색하면 첨부 1과 같은 페이지에 접속이 가능하다

그 뒤 빨간색 사각형으로 표시돼있는 Sign up버튼을 눌러 회원가입을 진행하자.

첨부 2

지금 UI는 우주 콘셉트인 듯하다 e-mail을 입력해주자

*Email is invalid or already taken : 이미 사용 중인 이메일입니다.

모두 작성을 해주고 Create account를 누르면

첨부 3

첨부 3과 같이 이메일에서 인증코드를 받아오라고 한다.

코드를 입력하면 가입이 완료된다.

 

-Git 다운로드 및 설치

구글에 Git이라고 검색을 하면 공식 홈페이지가 나오지만 귀찮은 여러분을 위해 링크를 하단에 첨부한다.

https://git-scm.com/

 

Git

 

git-scm.com

첨부 4

빨간색으로 표시된 다운로드 버튼을 눌러주자

다운로드가 완료되면 exe파일을 열어서 설치를 실행해주면 된다.

*설치는 모두 디폴트로 진행을 하면 된다.

이 파트에서 사용하는 IDE(통합 개발 환경)에 연결을 해서 사용을 해줄 수 있다.

사용하는 IDE가 있다면 이곳에서 선택을 해주면 된다.

모두 디폴트 값으로 Next를 계속 누르고 Install이 끝난 후에 View Release Notes선택을 해제하고 Finish를 누른다.

이것으로 회원가입과 설치를 끝냈다.

'Git & GitHub' 카테고리의 다른 글

Step 2  (0) 2021.10.20
Step 1  (0) 2021.10.20
4. 팀원 추가, commit 내용 확인, 저장소 삭제  (0) 2021.07.11
3. Git 업데이트 및 내려받기  (0) 2021.07.11
2. Git 초기화 및 업로드  (0) 2021.07.11

+ Recent posts