[Linux] CentOS7 - Java Web 서버 - 기초환경 설치 및 구성 #01
[Linux] CentOS7 - Java Web 서버 - 실운용을 위한 Tomcat 설정 #02
[Linux] CentOS7 - Java Web 서버 - Oracle 설치 및 설정 #03
[Linux] CentOS7 - GIT을 이용한 버전관리 시스템 구축 #04
※ 버전 관리 시스템( Version Control System )의 필요성
소프트웨어 개발 프로젝트에서 가장 중요한 인프라 서버 중 하나는 버전 관리 시스템이다.
버전 관리 시스템은 문서나 소스 파일 등의 변경 내역을 관리하는 시스템으로,
변경일자, 변경한 사람, 변경 내역등을 확인하고 특정 시점으로 돌아갈 수 있는 기능을 제공한다.
다수의 사람들과 함께 진행한느 소프트웨어 개발 프로젝트는 버전 관리 시스템을 통해
프로젝트 내 작업을 나눠서 수행하고 자신의 작업을 공유하고 타인의 작업을 참고해
결과물을 병합할 수 있으며, 소소하거나 중대한 실수를 하더라도 특정 시점으로 돌아가서 복구할 수 있게 해준다.
#1. 원격 저장소 - CentOS7에 GIT 세팅하기
먼저 서버로 사용할 원격지 저장소를 생성할 것이다.
해당 포스팅에서 우리가 작업한 결과물을 업로드 하는 영역은 원격 저장소( CentOS7 )
코드를 작성한 작업자의 컴퓨터를 로컬 저장소( Windows )라 부르며 설명을 진행할 것이다.
01) CentOS7 GIT 다운로드 및 계정생성
원격서버에 git을 설치한다.
$ sudo yum install -y git
설치과 완료되었다면 git이 정상적으로 설치되었는지를 확인해 보자.
$ git --version
git version 1.8.3.1
다음으로 설치한 git 환경에 사용자의 이름과 이메일을 등록하여준다.
$ git config --global user.name "saakmiso"
$ git config --global user.email "wicked@saakmiso.com"
추가적으로 변경내역을 보는 diff 명령을 수행중 콘솔에서 변경내역을 컬러로 출력하여 가독성을 높이는 설정을 잡는다.
$ git config --global color.diff on
$ git config --global color.status on
$ git config --global color.branch on
02) GIT 원격 저장소 생성
이제 GIT 저장소로 사용할 디렉터리를 생성한다.
디렉터리명은 remote-git 으로 지정하였다.
$ git init --bare remote-git
Initialized empty Git repository in /home/username/remote-git/
생성한 remote-git 내용을 확인해 보면 아래와 같음을 확인 할 수 있다.
$ ls /home/username/remote-git/ -al
합계 12
drwxrwxr-x. 7 username username 119 M월 D 00:00 .
drwx------. 5 username username 264 M월 D 00:00 ..
-rw-rw-r--. 1 username username 23 M월 D 00:00 HEAD
drwxrwxr-x. 2 username username 6 M월 D 00:00 branches
-rw-rw-r--. 1 username username 66 M월 D 00:00 config
-rw-rw-r--. 1 username username 73 M월 D 00:00 description
drwxrwxr-x. 2 username username 242 M월 D 00:00 hooks
drwxrwxr-x. 2 username username 21 M월 D 00:00 info
drwxrwxr-x. 4 username username 30 M월 D 00:00 objects
drwxrwxr-x. 4 username username 31 M월 D 00:00 refs
#2. 로컬 저장소 - Windows 컴퓨터 GIT 세팅하기
01) Windows 컴퓨터에서 GIT 다운받기
다운로드 : https://git-scm.com/
02) 로컬 GIT 저장소 만들기
작업을 진행할 로컬 Windows 컴퓨터에 GIT 이 설치되면
설치된 실행 프로그램들중 Git Bash를 실행하여 작업을 진행한다.
Windows 메뉴에서 Git Bash 실행 파일을 실행하자.
( 기본적으로 GIT은 C:\ProgramData\Microsoft\Windows\Start Menu\Programs\Git 경로에 설치된다. )
위와같이 Git Bash 터미널 창이 뜨면 먼저 로컬 저장소를 생성해 주도록 한다.
$ git init local
Initialized empty Git repository in C:/Users/사용자계정/local/.git/
저장소를 생성했다면 이제 생성한 디렉터리로 이동한다.
$ cd ./local
$ pwd
/c/Users/사용자계정/local
위 pwd 출력결과를 보면 윈도우 사용자계정에 local 디렉터리가 생성된 것을 확인할 수 있다.
그럼 이제 테스트로 업로드할 *.txt 문서를 하나 생성을 한뒤
$ vim f1.txt
Hello World
생상한 텍스트 파일을 등록( add )을 진행해 보자.
git은 기본적으로 새로 추가된 파일이나 디렉터리뿐 아니라 변경된 파일도 add를 해야 컷밋할 수 있다.
$ git add f1.txt
add 뒤에 커밋할 파일이나 폴더를 지정하면된다.
최종적으로 로컬 저장소에 변경사항을 반영하는 commit 명령을 실행할 것이다.
$ git commit -m 1
[master (root-commit) 7e08c26] 1
1 file changed, 1 insertion(+)
create mode 100644 f1.txt
다시한번 말하지만 commit할 데이터는 미리 add되어 있어야 한다.
03) 원격 저장소( CentOS7 )에 리모트
$ git remote add 저장소명 ssh://사용자계정@IP주소/home/사용자계정/remote-git/
원격 저장소와의 연결이 성공적으로 마무리 되었는지 마지막으로 확인해 보자.
$ git remote -v
저장소명 ssh://사용자계정@IP주소/home/사용자계정/remote-git/ (fetch)
저장소명 ssh://사용자계정@IP주소/home/사용자계정/remote-git/ (push)
그럼 이제 마지막으로 Windows 로컬 저장소 작업파일을 CentOS7 원격 저장소로 업로드 해보자.
$ git push --set-upstream origin master
사용자계정@IP주소's password : 리눅스_사용자계정_비밀번호
Enumerating objects: 3, done.
Counting objects: 100% (3/3), done.
Writing objects: 100% (3/3), 198 bytes | 198.00 KiB/s, done.
Total 3 (delta 0), reused 0 (delta 0), pack-reused 0
To ssh://192.168.43.254/home/saakmiso/remote-git/
* [new branch] master -> master // 전송성공
Branch 'master' set up to track remote branch 'master' from 'origin'.
#3. 소스트리( SourceTree ) 사용하기
위에서 원격 저장소와 로컬 저장소를 생성하고 작업내용을 전송하는 과정을
CLI( Command-Line Interface ) 명령줄 인터페이스 환경에서 진행했다.
하지만... 적어도 필자는 실무를 진행하는 와중에 특별한 상황을 제외하고
매번 터미널 창에서 GIT에서 가장 많이 사용하는 add, commit, push, pull 하는 작업자를 아직까지 본적은 없다.
그러니 이번 장에서는 GIT의 가장 대표적인 GUI툴인 소스트리를 설치를 진행하고
위에서 설정한 로컬 저장소와 원격 저장소 매칭시켜 사용하는 작업을 진행할 것이다.
01) 소스트리 다운받기
다운로드 : https://www.sourcetreeapp.com/
※ SourceTree 설치방법은 위 페이지를 참고
02) 소스트리 - 로컬 저장소, 원격저장소 매핑 및 ADD, COMMIT, PUSH 하기
소스트리의 설치가 완료되었다면 소스트리를 실행한뒤 먼저 Windows의 로컬 저장소를 등록할 것이다.
소스트리를 실행하고 상단 메뉴중 Add 버튼을 클릭하여, 로컬 저장소를 등록하자
탐색 버튼을 클릭하여 위에서 생성한 LOCAL 저장소 디렉터리의 경로를 잡아주면
자동으로 필요한 값들이 등록된다.
그럼 이제 GIT 원격저장소에 변경된 파일을 등록해보자.
먼저 테스를 위해 작성한 샘플.txt 파일의 내용을 변경한다.
내용을 변경하였다면 SourceTree가 새로고침 되고 샘플.txt 파일이 수정된 것을 확인할 수 있다.
Commit 버튼을 클릭하여 원격 GIT 서버에 반영을 위한 준비를 진행하자.
변경사항을 Commit하기 위해서는 원격 GIT 서버에 올릴 변경된 파일을 스테이지에 위치시켜야한다.
추가적으로 변경사항 및 작업내역에 대한 간단한 메시지를 작성하고 Commit을 진행해 보자.
Commit이 완료되었다면 이제 원격 GIT 서버에 등록을 위한 준비가 모두 마무리 된것이다.
이제 작업내역을 Push 하여 등록을 마무리 해 주도록 하자.
등록이 완료되고 Hisoty 카테고리를 선택해보면 원격 GIT 서버에 등록 여부를 확인할 수 있다.
위와같이 지금까지 진행한 작업내역의 결과를 확인 할 수 있다.
03) 소스트리 PULL 당기기
해당 포스팅에서 다른 사람이 변경한 내용이 원격지 서버에 등록되어 있는 PULL에 대해서는 크게 다루지는 않았지만
소스트리에서 이러한 경우 아래와 같이 표시되는것을 알 수 있다.
'LINUX > CentOS' 카테고리의 다른 글
[Linux] CentOS7 - MySQL / MariaDB 데이터 베이스 자동 백업 프로세스 (0) | 2023.01.27 |
---|---|
[Linux] CentOS7 - HTTPS 접속을 위한 Apache 웹 서버의 Mod_Proxy 설정 (0) | 2022.11.15 |
[Linux] CentOS7 - Java Web 서버 - Oracle 설치 및 설정 (0) | 2021.07.04 |
[Linux] CentOS7 - Java Web 서버 - 실운영을 위한 Tomcat 설정 (1) | 2021.07.01 |
[Linux] CentOS7 - Java Web 서버 - 기초환경 설치 및 구성 (0) | 2021.07.01 |