Info-tech/Web-DevOps

[2] .gitignore 원치 않는 파일들을 git add에서 제외하기

2023. 11. 20. 21:16

컴파일러, JVM버전과 클래스 파일(바이트코드)에 대한 이야기로 시작헤보자.

 

JVM은 Bytecode 실행에 대하여 하위호환성을 보장한다.

높은 버전의 JVM은 낮은 버전의 컴파일러가 생성한 바이트코드는 실행할 수 있다.

그러나 낮은 버전의 JVM은 자기보다 높은 버전의 컴파일러가 생성한 바이트코드는 실행할 수 없다.

 

*컴파일 시 호환되는 JVM의 버전을 하위버전도 호환되도록 설정해주어야 한다.

*컴파일 시 같은 버전의 JVM만 호환되도록 설정할 수도 있다.

 

그러면 버전관리를 할 때, java 소스파일을 컴파일 한 .class 파일을 보관해야 하는지 의문이 생긴다.

 

버전 관리 시스템의 관리 대상을 생각해보자.

아래의 항목들은 버전 관리 시스템에서 관리해줘야 하는 대상일까?

 

  • 소스파일
  • 문서
  • 설정파일
  • 개발도구 설정파일
  • 빌드나 컴파일의 결과로 생성된 파일들

 

소스파일, 문서, 설정파일은 관리대상임에 이견이 없다.

그러나 개발도구 설정파일, 빌드의 결과로 나온 파일들은 관리를 해야 하는지 의문이 생긴다.

환경마다 달라질 수 있는 것이기 때문이다.

그래서 개발도구 설정파일, 컴파일 및 빌드 결과 파일들은 버전관리 시스템에서 관리 대상이 아니다.

예시를 들면, .class, .exe, .jar 같은 형식의 파일들이다.

 

관리 대상이 아닌 파일들은 git server에 업로드할 필요가 없다.

그런데 working directory에 그러한 파일들이 생성될 확률이 높다.

그래서 어떤 파일들을 깃에 애드할 때 무시할 것인지 사전 설정할 수 있는 기능이 만들어졌다.

 

그것이 .gitignore 파일이다. 이 파일은 리포지토리의 루트에 위치시킨다.

어떤 파일이나 경로를 버전관리 대상에서 제외할 지 알려주는 파일이다.

.gitignore는 와일드카드(asterisk)를 허용하며 파일명.확장자 로 두면 된다.

 

*bash 가 뭔가? born again shell 이다.

리눅스 쪽에서 많이 쓰던 쉘이고 지금도 많이 쓴다. (지금은 리눅스도 zsh 많이 쓴다.)

쉘마다 명령어가 좀 다르다.

 

참고로 https://www.toptal.com/developers/gitignore 요 사이트에서 개발 언어, 운영체제 등 환경에 따라 필요한 .gitignore 의 내용을 자동생성할 수 있다.

저작자표시 (새창열림)
'Info-tech/Web-DevOps' 카테고리의 다른 글
  • C 컴파일하기 & 컴파일 방식
  • [3] 인터프리트 방식에 대하여
  • [2] 깃을 사용하다가 충돌이 발생한다면?
  • [2] Git의 기본적인 사용방법
azcz
azcz
IT, 서비스, 공부에 대한 기록
log of my actionIT, 서비스, 공부에 대한 기록
azcz
log of my action
azcz
전체
오늘
어제
  • 블로그
    • 자기소개
    • Info-tech
      • front end
      • back end
      • algorithm & data structure
      • database
      • ADsP
      • DAsP
      • Web-DevOps
    • Book Learning - IT
      • 혼공컴운
      • 리눅스
    • 일기장
      • 비밀 일기장
    • Business
      • 이야기
    • 사진과 영상
      • 팁

블로그 메뉴

  • 홈
  • 태그
  • 방명록

공지사항

인기 글

태그

  • AOT
  • bundling
  • 깃
  • 형상관리
  • DASP
  • 주소 지정 방식
  • 바이트코드
  • 아키텍처
  • 컴퓨터구조
  • 데이터아키텍처
  • 저급언어
  • 명령어 구조
  • 스탠드얼론
  • parcel
  • jvm
  • 고급언어
  • 준전문가
  • 레지스터
  • GIT
  • 준비기간
  • 준비방법
  • 웹 애플리케이션
  • JIT
  • 구분
  • webpack
  • 혼공컴운
  • ALU
  • CU
  • 깃 사용법
  • merge

최근 댓글

최근 글

hELLO · Designed By 정상우.
azcz
[2] .gitignore 원치 않는 파일들을 git add에서 제외하기
상단으로

티스토리툴바

단축키

내 블로그

내 블로그 - 관리자 홈 전환
Q
Q
새 글 쓰기
W
W

블로그 게시글

글 수정 (권한 있는 경우)
E
E
댓글 영역으로 이동
C
C

모든 영역

이 페이지의 URL 복사
S
S
맨 위로 이동
T
T
티스토리 홈 이동
H
H
단축키 안내
Shift + /
⇧ + /

* 단축키는 한글/영문 대소문자로 이용 가능하며, 티스토리 기본 도메인에서만 동작합니다.