카테고리 없음

GIT 협업

퍼린이 2024. 10. 31. 00:05

--[본 내용은 GIT 과 VSCODE 가 이미 깔려 있다는 가정하에 진행됨]
--git hub 협업

  1. 파일 열기 및 생성
    {
    명령 프롬포트 열기 (CMD. git bash 등)
    cd 경로 < 입력한 경로로 프롬포트 명령을 실행시킬 위치를 변경 > // desktop ( 바탕화면 )
    mkdir 파일명 < 현재 위치에 입력한 파일명을 생성>

cd desktop/파일명 < 바탕화면의 '파일명" 폴더 안으로 이동>
git init < 연결을 시켜줄수 있는 특수한 파일 'git' 이라는 숨겨진 파일이 현재 위치에 생성 >

}

  1. 간단한 연결을 위한 설정 명령어
    {
  2. git config user.name < 현재 컴퓨터의 지정된 git 닉네임 확인 >
    git config user.name "닉네임" < 현재 컴퓨터에 연결시킬 git 닉네임 설정 >
    git config user.email < 현재 컴퓨터의 지정된 git 이메일 확인 >
    git config user.email "이메일" < 현재 컴퓨터에 연결시킬 git 이메일 설정 >
  1. 코드 시작
    {
    git 에서 프로젝트 생성후 / 해당 프로젝트 주소 협업 하는 사람들에게 배포
    생성후 프로젝트 초대 에 (닉네임 or 이메일 입력) 해서 초대

@중요
git remote add origin 프로젝트주소 < 프로젝트 주소에 현재 파일을 연결 >

git pull origin main < 현재 파일에 프로젝트주소에 있는 최신 내용을 다운로드 >

code . < . 이 현재 파일 / 현재 파일 기준 vscode 오픈 >

/ 작업 완료 /

방법 1 ) cmd 로 푸쉬
vscode 에서 (ctrl + ` ) 키로 프롬포트 열기

git add . < 현재까지 내용을 임시 저장? 같은 개념 >
git commit -m " 내용 " < commit(새로운 세이브 파일)을 만들고 관련 내용(쪽지?) 을 "내용" 안에 남긴 글을 넣어라 >
git push origin main < 현재까지의 저장된 내용을 github에 업로드 하여라 >

방법 2 ) git hub 에서 바로 푸쉬
왼쪽 상단 버튼중 세번째 y 모양 클릭

 

 

 

< 다르게 할시 프로젝트 등이나 작업 내용에 다른 사람의 기록이 남을 수 있음>
}

  1. 충돌/오류
    {
    / git hub 에 최신 내용이 있지만 최신 내용을 pull(다운로드) 받지 않고 push(업로드)
    git checkout -f < add 및 commit 내역 제거 >
    git clean -fd < git add 이전 변경 내용 제거 >
    다운로드 및 다시 작업
    / 이 방법시 본인의 작업 내용 사라짐, 따라서 따로 어디에 변경 내용을 옮겨둘 필요가 있음
    /
  2. / git 다운로드 받을때 최신 내용과 자신의 내용중 같은 파일의 내용이 다를때 <- 다른사람이 a파일 작업 내용과 내 a 파일 작업 내용이 다를 때
    / 4번 초반 내용 대로 해서 통합 하거나 보통 그래서 이를 최소화 하기 위해 페이지를 나누어 작업하게된다.
    / 본인은 IntelliJ IDEA (인텔리제이) 툴을 사용 할 경우 어느정도 해결 / 자세한 내용은 뒷 내용 에서
    }

추가적. IntelliJ IDEA ( 인텔리제이) 중요도 하
{
중요도는 떨어지고 본인도 이제막 체험용으로 써보서 자세히는 모르지만
해당 프로그램은 JAVA(자바) 라는 언어에 친화적인 코딩 프로그램이다. ( html.css.js 도 문제 없이 사용가능하다 )
무료버전과 유로 버전이 있는 무료는 개방소스에 일부 기능이 제한적이어서 실무에서 재대로 활용하려면 유로로 사용해야 한다
이 경우 연 약 600달러로 매우 비싸다....
다만 이 프로그램은 자바 에 친숙화 되어 있고 , 실무에서 백엔더 개발자가 스프링이라는 자바 기반의 프레임워크를 사용시
이들과 협업 하는데 있어서 수월해 지고 , 해당 개발자도 좋아한다.

  • 많은 백엔더가 스프링을 사용하기도 한다.

이걸 소개하는 또다른 이유는 전에 말한 충돌/오류도 연관이 있는데
git 다운시 다른사람이 업로드 했던 내용과 자신의 내용이 같을시 충돌하게 되는데
해당 인텔리제이는 이경우 창하나에 띄워지게 되는데
창 안에는 git 의 내용 , 통합할 내용 , 내 코드 이렇게 나누어 지게 되고 업로드 된 내용과 내 내용을 비교하면서 병합 할수 있어 편하다고 느꼈다. ( 해당 내용은 프롬포트로도 확인 할 수는 있으나 차이점을 확인하는 창이 별도로 없는 등 여러가지로 불편함을 느겼다. )
다만 백엔더가 스프링이나 자바를 사용하고 있지 않거나 협업 할 일이 없다면 사용할 이유는 많이 있지 않다.
}