Git

[Git, Github] 사용법 정리 / workflow

반응형
내가 생각한 쉬운용어 공식 명칭
내 컴퓨터 work space
github와 내 컴퓨터와 중간 staging area
github 예비 영역 local repository
github 내 영역 origin repository
github 다른(페어) 영역 remote repository

1. git init 

우선 내 컴퓨터에서 내가 직접 만든 디렉토리를 (work space, staging area, local repository) Git의 관리 하에 들어가게 만들어 주는 명령어는 git init입니다.

기존 프로젝트를 Git Repository로 변환하거나 새로운 Repository를 초기화하는 데에 사용할 수 있습니다.  Local Repository가 생성됩니다.

 

2. Fork 

깃 허브 브라우저에서 합니다. 다른 영역에서 포크를 해 옵니다. 그러면 깃 허브에서 제 아이디를 포함한 제 영역의 주소복사가 가능해집니다. 다른 사람들과 연동 가능하기 위해 진행하는 작업인 것 같습니다. 

쉽게 표현을 하자면 프로젝트 remote repository 자료들을 복사해서 origin repository 영역이 생기는 것입니다.

남의 꺼 복사해서 나의 영역도 만든다.

 

3.  git clone (주소)

이제 복사를 해서 내 영역을 만들었다면은 나의 컴퓨터에 가져오는 작업을 해야 합니다. 그래야 제 컴퓨터에서 작업이 진행을 할 수 있습니다. 브라우저에서 그냥 쉽게 다운로드도 가능하지만 터미널에서 git clone (내 영역 주소)를 치면 쉽게 다운이 가능합니다.

내 영역의 주소는 내 아이디를 포함된 fork를 한 주소입니다. 

 

 git status 명령어를 통해 staging area와 workspace 목록에 어떤 것들이 있는지 확인할 수 있습니다.

 

4. git remote add pair (주소)

자료를 받아 왔다면 같이 작업을 할 상대방이 포크 한 주소(remote repository)를 알아내어 연동을 한다고 생각합니다.

주소 가운데쯤에 상대방 아이디가 들어가 있습니다.

상대방의 자료를 받아오고, 내 자료를 올려서 상대방이 받을 수 있도록 받기 위해 통행로를 만든다고 생각합니다.

git remote -v 명령어로 상태를 확인할 수 있습니다! 꼭 확인하는 것이 좋습니다.

 

 

5. git add (파일)

git clone 하여 받아온 자료들을 수정하고 코딩을 작성을 하고 나서 이제 올리는 작업을 해야 합니다.

그때에 statging area에 올리는 작업을 합니다. 이 구역을 저는 github와 컴퓨터 중간 사이라고 표현을 했는데

이 구역은 commit 하기 전에 내용을 기록하는 장소, 즉 코드에 대한 간단한 라벨링을 한다고 생각하면 됩니다.

검색하여 찾아봤지만 커밋하기 전에 예비 저장소 같은 설명, 서로 파일을 주고받을 때 생기는 충돌을 대비하여 존재하는 것 같습니다.

하지만 아직 제가 경험이 부족하고 프로젝트를 해보지 않아서 아직 왜 있는지 모르겠습니다. 이해가 되기 시작하면 정리해야겠습니다.

안 하면 동작이 안되니 일단 하겠습니다.

 

6. git commit -m '변경할 내용을 적습니다'

local repository에 올리는 내용입니다.

git log를 통해 내용을 확인할 수 있습니다. (확인 후 나가기 키 q)

 

7. git push origin master(or other branch name)

말 그대로 origin에 작성한 코드를 올리는 것입니다.

git hub브라우저에 들어가면 올라간 코드 자료들이 보일 겁니다.

Remote repository origin 커밋을 적용하였음 주의 해야 합니다. (push는 신중하게) 자료가 다 날아갈 수도 있기 때문에.

 

8. git pull pair master(or other branch name)

7번이 제대로 이루어졌으면 상대방분이 제가 작성한 코드를 받을 수 있습니다. 그리고 5~8을 서로 반복합니다.

그리고 master가 아닌 main으로 사용한다고 합니다. master는 좋지 않은 단어라 얼핏 들은 것 같습니다.

 

 

9. pull request

브라우저에서 하는 작업으로 push를 완료하면 요청하면 됩니다.

 

 

그 외 쓸만한 명령어들 

Cat 파일명            // (내용 확인)

Git reset              // 커밋한 내용 리셋

Git log                 // 올라갔는지 확인 (q누르면 나가짐)

Git reset HEAD^ // 제일 처음

Git reset HEAD^~2 // 2개 동시에 지움

code . // (코드실행)

별명을 잘못 설정 했을때에 remote add 가 아니라 remote remove

 

 

반응형

'Git' 카테고리의 다른 글

[Git] 브랜치 명령어 정리  (0) 2021.08.10
[Git] 브랜치 관리와 고급 기능  (0) 2021.08.10
[Git] 사용법 Together workflow  (0) 2021.05.21
[Git] 사용법 Alone workflow  (0) 2021.05.21
[Git] 깃?  (0) 2021.05.21