일단 git설치 하시고.. yum install git
- git config --global user.name "이름" git config --global user.email "깃허브 메일주소" // 매번 물어보는 귀찮음을 피하기 위해 설정.
- git clone https://github.com/[유저명]/[프로젝트명]
- 작업할 디렉토리로 들어가서.
- git init // 깃 명령어를 사용할 수 있는 디렉토리로 만든다.(이폴더 내에서 작업하겠다는 의미) git status // 현재 상태를 훑어보고 작업하고.
- git checkout -- 파일명 // 작업하다가 삭제했을때 내용 원상복귀. (커밋시점으로)
- git add 파일명 // 깃 주목 리스트에 화일을 추가하고
- git add . // 이 명령은 현재 디렉토리의 모든 화일을 추가할 수 있다.
- git rm --cached 파일명 // 추가되면 안되는건데 모르고 추가시켰을때, add전으로 빼는 방법. git commit -m “현재형으로 설명” // 커밋해서 스냅샷을 찍는다.
- git remote add origin(별칭) https://github.com/[유저명]/[프로젝트명] // 로컬과 원격 저장소를 연결한다.
- git remote -v // 연결상태를 확인한다.
- git push origin(별칭) master(브랜치명) // 깃허브로 푸시한다. origin이라는 이름의 원격저장소에 master라는 이름의 가지를 집어넣는다.
- git pull origin(별칭) master(브랜치명) // 깃허브에서 최신본을 가져옴. clone은 프로젝트폴더를 통째로 가져옴(아예 똑같이) 프로젝트명/아래에 생김. pull은 그 폴더에 바로생김(프로젝트명 안생김) 그리고 자동으로 패치(최신본 업뎃) + 병합(내 코드랑 알아서 섞음 - 여기서 충돌가능)
가지치기
- git checkout -b [브랜치명] // 새로운 가지 생성후, 그 가지로 파일 다 복사하고 갈아탐.
- git checkout [브랜치명] // 선택한 가지로 돌아옴.
- git branck -d [브랜치명] // 선택한 가지 삭제 내가 새로만든 가지는 원격으로 전송하기 전까지 다른사람이 접근불가.
- git push origin [브랜치명] // 올리기
브랜치를 병합할때는..
- git merge [브랜치명] // 다른 가지에 있는 변경 내용을 현재 가지에 병합. 이렇게 바로 다른 브랜치에 있는 내용을 병합해도되고
- git add .
- git commit -m "d"
- git push origin [브랜치명]
- git checkout [다른 브랜치명]
- git pull origin [브랜치명]
- 이런식으로 일단 원격레포지토리 올려놓은다음에 그걸 pull로 땡겨와도 됨.
서로 다른 가지에서 똑같은 파일을 병합할때 커밋이 가장 최근껄로 커밋기준으로 삼음 (충돌시에 최근껄로 한다는 이야기) master가지에서 git merge test1라고 쳤을때, 만약 master보다 test1의 커밋이 더 많다면, test1을 기준으로 합침. 이럴땐 Fast-forward라고 나옴.
충돌이 났다면 일일히 수작업해줘야함. 그리고 다 작업하면 git add 파일이름으로 다시 반영해주길..
변경내용을 병합하기 전에,
어떻게 바뀌었는지 확인가능. git diff [원래가지] [비교대상가지]
'IT > ETC' 카테고리의 다른 글
리액트(React) 간단 문법 정리 (4) | 2024.01.30 |
---|---|
REST API (0) | 2023.03.26 |
JSP vs 서블릿 (0) | 2023.03.26 |
HTTP 상태코드 (0) | 2023.03.26 |
POSTMAN을 통한 웹 테스트 자동화 만들기 (0) | 2023.03.26 |
댓글