ABOUT ME

-

Today
-
Yesterday
-
Total
-
  • Git(2) Github 깃허브, 리눅스
    Git 2023. 8. 4. 15:04

    리눅스 Linux

     

    리눅스 환경 : WSL (Window Subsystem for Linux)

    윈도우의 가상화 환경을 통해 리눅스를 설치하는 것

     

     


    브랜치 Branch

     

    나뭇가지. 버전을 여러 개의 흐름으로 관리하는 것

     

    "버전의 분기"

     

    한 서비스에 여러 기능을 합할 때 각각의 맞는 파트에 연결할 수 있다. (ex: 쇼핑몰 - 장바구니 기능 / 주문 기능 ...)

     

    같은 코드를 다르게 수정했을 때 비교 가능

     

    ** 동작 **
    1. 브랜치를 나눈다
    2. 각자의 브랜치에서 작업
    3. 나눈 브랜치를 필요시 합친다

     

    최초의 브랜치 : main (나무 기둥)

    이후 브랜치 : foo(나뭇가지1), bar(나뭇가지2)

     

     

     

    ⭐HEAD

    현재 작업 중인 브랜치

     

     Checkout 

     HEAD를 옮기는 작업 (개발의 작업환경이 바뀌는 행위)

    거의 일어나진 않고 특정 branch의 최신(마지막) 커밋에서 일어남.

     

     

    새 브랜치 체크아웃 : foo한테 바로 일 시키는 것

    foo한테 헤드가 가 있다.

     

     

     

    foo 현재 헤드 상태에서 커밋

    foo 3

     

     

    다시 main으로 체크아웃해서 헤드 바꾸기

     

    foo가 한 a 작업 파일이 안 보임.

     

     

     

    실습

     

     

     

    왼쪽 브랜치 메뉴에서

    더블클릭해도 된다.

     

    subCalc_c 파일이 안 보임.

     

     


    브랜치 병합 Branch Merge

     

    빨리감기 병합

     

    1. 병합할 브랜치로 체크아웃 하기

     

    2. 병합 당할 브랜치(subCalc) 선택하여 확인

     

     

     

    병합시킨 브랜치의 커밋 메시지(subCalc3)는 남아있다.

     

     

    main이 헤드이지만 이제 폴더에서도 subCalc_c가 보인다.

     

     

     


    브랜치 끊어내기

     

    브랜치 삭제된 상태

     

     


    일반 병합

     

     

     

     

     

     

    main을 체크아웃하고 c추가

     

     

    왜 메인4인지 이해를 해야 한다.

     

     

     

    1

     

     

    2
    3

     

     

     

    병합 끝난 후 브랜치 bar 삭제 결과

     


    충돌

     

    브랜치로 맡겨 놓고 본인도 메인에서 코드를 수정하고 있는 경우

     

     

    1

     

    1. foo 브랜치로 옮긴 후 푸가 소스코드 수정, 푸2로 커밋

     

     

     

    2. main으로 체크아웃 후 main에서 소스코드 수정

     

     

    3. main에 foo 브랜치를 병합시키면?

     

     

    같은 a 파일에 대해 내용이 다르므로 충돌한다.

     

    충돌 해결

     

     

    내 것 : 현재 헤드 브랜치 main

    저장소 : 나머지 브랜치 foo

     

    다시 파일 열어보면 이렇게 바뀌어있으니 다시 저장해서 커밋을 하자.

     

     

     

    충돌 해결

     

     

    ❗사전 예방

    각 브랜치에서 다른 파일로 작업하면 충돌을 예방할 수 있다.

     

     


    충돌 방지

     

    예시) import 문처럼 다른 파일로 만들어둔 걸 삽입하는 방식이 좋다.

     

     


    브랜치 재배치

     

     

    설계가 잘못되었다는 뜻. 가급적 지양 -> 이런 일은 다시 해야 함(그냥 옮겨갈 브랜치에서 새로 코드 짜는 게 낫다)

     

     

     

     


    리눅스 Linux

     

    리눅스 설치

     

    1. 파워쉘 관리자권한으로 실행

     

    2. 명령어 입력

     wsl --install 입력하고 엔터

     

     

    설치 중 화면

     

    +) 설치 중 화면에서 호스트 창 뜨면 '예'

     

     

    설치 완료

    우분투가 기본 설치됨(20.04)

    *우분투는 리눅스의 종류 중 하나. 리눅스의 배포판

     

    필요시 데비안도 설치 가능

     

     

     

    3. 재부팅 후 켜면 이 창이 자동으로 나온다.

     

    우분투를 시작하는 중

     

    4. 입력을 하자

    gituser 입력

    패스워드는 원래 안 보인다. (난 221031 입력함)

    그 다음은 재확인이고 엔터치고 기다리면 밑에 화면 나온다.

     

    세팅 끝

     

     


     


    깃허브 Github

     

     

    백업 & 협업

     

    레포지토리를 새로 만들자.

    프로필에서 [Repositories] - 초록색 [new] 버튼

     

    사진의 설명에 따라 작성해주자.

     

     

     

    새로 만든 repository에 더미 Dummy 파일 생성하기

     

    creating a new file 클릭 

     

     

    commit changes 초록 버튼 누르면 커밋된다.

     


    • 깃허브와 소스트리 연동

     

     

    HTTPS : 계정, 암호로 연결

    SSH : 접속할 PC에서 인증키를 생성해서 등록해야 하므로 보안이 더 강함 (ex: 은행 공인인증서 등)

     

     

     

     

    1. 소스트리를 열어 [도구] - [옵션] - [인증]

     

     

     

    계정에서 [추가] -  호스팅 서비스 Github 선택 후

    토큰 새로고침 누르면 창이 뜬다.

     

     

     

     

     

    Authorize atlassian 버튼 클릭

     

     

     

    confirm

    confirm 클릭

     

     

     

     

     

    ※ 이 창은 한 번 연동된 후에는 빈 페이지에 링크(주소창에)만 뜨는데, 이 때 토큰 새로고침 버튼이 있던 팝업창에 가서 확인만 누르면 된다. 그냥 한 번 연동하면 바로 remote에서 계정 선택하고 새로고침 눌러 확인하면 된다.

    여기 주소 끝에 보면 authenticated 라고 되어있는데 그럼 된 것이다.

     

     

    확인

     

     


     

    연동 이후 계속 반복할 구간 ⬇️

     

    Remote에서 보면 연결되어 있음을 알 수 있다.

     

     

     

     

     

    계정에서 레포지토리 선택 후 ⭐새로고침 버튼, 목록 보이면 Clone 클릭

     

     

    git 마크와 함께 저장소입니다 라고 뜨면 연동된 것

    경로 설정 후 파일명을 설정해 준다. 파일명 : first

    [클론] 클릭

        ❗파일명은 깃헙 레포지토리 이름과 동일해야 헷갈리지 않는다.

     

     

    상단 깃허브에서 바로 생성했던 파일이 연동된 걸 확인할 수 있다.

     

     


    푸시 Push

     

     

     

    일단 PC에서 새 파일을 만들어서 커밋을 추가해 보자.

     

     

     

     

    ⭐origin/ 은 깃허브를 의미한다.

     

    "깃허브의 main branch가 첫 번째에 머물러있다"

     

    위에 있는 그냥 main은 현재 pc의 브랜치이다.

     

    브랜치에서 [ 1 ⬆️ ] 이것은 push 할 항목이 하나 있다는 뜻 (또는 브랜치가 1개 더 있다?)

     

     

     

    상단 메뉴에서 1이 떠 있는 push를 누르고 해당 창에서 [Push] 클릭

     

     

    main과 origin/main이 합쳐졌다.

     

    깃허브 확인

     

     

    Push 완료

     

     

     


     

     

     

     

     

     

     

     

     

     

     

     

     

     

     

     

     

     

     

     

     

     

     

     

     

     

     

    'Git' 카테고리의 다른 글

    깃허브 소스트리 연동  (0) 2023.08.04
Designed by Tistory.