레드햇 엔터프라이즈 리눅스 7 기반에 대한 운영자 가이드 기초편을 공유합니다.
부트로더 관리, 패키지, 네트워크, 스토리지 및 크래쉬 덤프 발생에 대한 관리까지 기초 운영 지식에 대한 부분을 본 문서를 통해 얻으실 수 있습니다.
오픈소스컨설팅의 문경윤차장께서 공유해주신 내용입니다.
레드햇 엔터프라이즈 리눅스 7 기반에 대한 운영자 가이드 기초편을 공유합니다.
부트로더 관리, 패키지, 네트워크, 스토리지 및 크래쉬 덤프 발생에 대한 관리까지 기초 운영 지식에 대한 부분을 본 문서를 통해 얻으실 수 있습니다.
오픈소스컨설팅의 문경윤차장께서 공유해주신 내용입니다.
source : http://www.opennaru.com/apm/apache-tomcat-auto-provisioning/
OPENMARU APM은 Apache 웹서버와 Tomcat 에 대하여 자동으로 설치와 구성 그리고 튜닝하며 해당 구성에 대한 설치보고서를 자동생성하는 OPENMARU Installer 기능을 제공합니다.
이 기능은 OS 만 설치되어 있으면 수분 이내에 웹 서버와 WAS 서버를 설치하고 고난이도의 클러스터링 설정이나 리눅스 튜닝을 자동으로 수행하여 즉시 서비스할 수 있는 환경을 구성해주는 자동 프로비져닝 기능입니다.
기존의 엔지니어의 기술 지원에 의존적인 웹서버와 WAS 구성을 전문가 수준으로 자동으로 구성하여, 구축기간 뿐만아니라 비용 절감 효과를 제공합니다.
Watch video on Youtube! : http://www.youtube.com/watch?v=aZDKyNtSqOo
장소 : 서울시 용산구 원효로 3가 53-5 청진 빌딩 10층 1004호 TERA TEC 사무실
시간 : 2010년 1월 30일 토요일 오후 2:00
발표 : 김성윤님, 강분도님, 노태상님 - 리눅스 커널 - 개요 및 이슈,
세미나 정보 : http://www.ubuntu.or.kr/viewtopic.php...
Place : TERA TEC Office, 1004, 10th floor, Cheongjin Bldg., Wonhyoro 3-ga, Yongsan-gu, Seoul, Korea
Time : 14:00, Saturday, 2010Y 1M 30D
Presentation : Kim Seongyun, Kang Bundo, Noh Taesang - Linux Kernel - Outline and issue
Seminar Info : http://www.ubuntu.or.kr/viewtopic.php...
About Ubuntu
Ubuntu is an ancient African word meaning 'humanity to others'.
It also means 'I am what I am because of who we all are'.
The Ubuntu operating system brings the spirit of Ubuntu to the world of computers.
http://www.ubuntu.com
About Ubuntu Korea Community
We want to be happy using Ubuntu.
'Korean Ubuntu User Forum' Welcomes your voluntary supports.
http://www.ubuntu-kr.org
source : http://www.opennaru.com/apm/apache-tomcat-auto-provisioning/
OPENMARU APM은 Apache 웹서버와 Tomcat 에 대하여 자동으로 설치와 구성 그리고 튜닝하며 해당 구성에 대한 설치보고서를 자동생성하는 OPENMARU Installer 기능을 제공합니다.
이 기능은 OS 만 설치되어 있으면 수분 이내에 웹 서버와 WAS 서버를 설치하고 고난이도의 클러스터링 설정이나 리눅스 튜닝을 자동으로 수행하여 즉시 서비스할 수 있는 환경을 구성해주는 자동 프로비져닝 기능입니다.
기존의 엔지니어의 기술 지원에 의존적인 웹서버와 WAS 구성을 전문가 수준으로 자동으로 구성하여, 구축기간 뿐만아니라 비용 절감 효과를 제공합니다.
Watch video on Youtube! : http://www.youtube.com/watch?v=aZDKyNtSqOo
장소 : 서울시 용산구 원효로 3가 53-5 청진 빌딩 10층 1004호 TERA TEC 사무실
시간 : 2010년 1월 30일 토요일 오후 2:00
발표 : 김성윤님, 강분도님, 노태상님 - 리눅스 커널 - 개요 및 이슈,
세미나 정보 : http://www.ubuntu.or.kr/viewtopic.php...
Place : TERA TEC Office, 1004, 10th floor, Cheongjin Bldg., Wonhyoro 3-ga, Yongsan-gu, Seoul, Korea
Time : 14:00, Saturday, 2010Y 1M 30D
Presentation : Kim Seongyun, Kang Bundo, Noh Taesang - Linux Kernel - Outline and issue
Seminar Info : http://www.ubuntu.or.kr/viewtopic.php...
About Ubuntu
Ubuntu is an ancient African word meaning 'humanity to others'.
It also means 'I am what I am because of who we all are'.
The Ubuntu operating system brings the spirit of Ubuntu to the world of computers.
http://www.ubuntu.com
About Ubuntu Korea Community
We want to be happy using Ubuntu.
'Korean Ubuntu User Forum' Welcomes your voluntary supports.
http://www.ubuntu-kr.org
페이스북 그룹 '소프트웨어캠퍼스' 커뮤니티의 서적 [밑바닥부터 시작하는 딥러닝]으로 진행한 스터디 발표 자료 입니다. 해당 자료는 챕터6 학습관련기술들에 대한 내용입니다. 외부 자료 상당 부분 사용하였으며 자료 출처는 슬라이드 뒷부분에 기재하였습니다.
프레젠테이션 페이지별 스크립트: https://www.slideshare.net/hyeseunglee6/ss-75889203
2. 파일 변화를 시간에 따라 기록했다가 나중에 특정 버전을 다시 불러올 수 있는 시스템
버전 관리 시스템
3. 버전 관리 시스템
Version Control System
Version Database
File
checkout
Version 1
Version 2
Version 3
Local Computer
로컬 VCS
4. 중앙집중식 버전 관리 시스템
Central Version Control System
Version 1
Version 2
Version 3
File
Local Computer
File
Local Computer
Version Database
중앙 VCS 서버 File
Local Computer
File
Local Computer
Version 1
Version 2
Version 3
5. 분산 버전 관리 시스템
Distributed Version Control System
Version 1
Version 2
Version 3
Version Database
Server Computer
Version 1
Version 2
Version 3
File
Local Computer
Version Database
Version 1
Version 2
Version 3
File
Local Computer
Version Database
Version 1
Version 2
Version 3
File
Local Computer
Version Database
Version 1
Version 2
Version 3
File
Local Computer
Version Database
Version 1
Version 2
Version 3
7. Online Source Control
Longer time to store because all of the data is
stored in a centralized repository.
Offline Source Control
Extremely fast because complete copy of the
data is stored locally in the client’s system.
CVCS DVCS
8. SVN data flow Git data flow
Working
Directory
Remote
Repository
Merge
Rsync
(Remote Sync)
Remote Repository
Local Repository
Index
push
commit
add
fetch
checkout
HEAD
Working Directory
pull
CVCS DVCS
9. The way SVN thinks about its data The way Git thinks about its data
CVCS DVCS
각 파일에 대한 변화를 저장 시간 순으로 프로젝트의 스냅샷을 저장
Version1 Version2 Version3 Version4 Version5
코끼리
호랑이
곰
오렌지
코끼리
→ 물개
오렌지
→ 사과
물개 →
코끼리
곰
→ 사람
사과
→ 나무
Version1 Version2 Version3 Version4 Version5
코끼리
호랑이
곰
오렌지
물개
Version 1
의 호랑이
Version
1의 곰
사과
코끼리
호랑이
사람
Version 2
의 사과
Version4
의 코끼리
Version4
의 호랑이
Version
4의 사람
나무
호랑이
→ 지렁이
Version
2의 물개
지렁이
Version
1의 곰
Version 2
의 사과
지렁이
→ 호랑이
11. Working directory
워킹 디렉터리
현재 작업 공간
프로젝트의 특정 버전에 체크아웃
Add 하기 전
Staging Area (=Index)
스테이징 영역
Commit 하려고 준비하는 공간
스냅샷을 만든다.
Add 직 후 Commit 직 전
.git directory
Local repository
스냅샷을 저장한다.
git init or git clone으로 생성됨
Commit 이후
Modified
Staged
Committed
Remote Repository
.git directory
공유되는 저장 공간
Hosting service 존재
ex. VSTS, Github, Bitbucket
Push 이후
로컬 환경
네트워크 환경
Untracked Tracked
1
2
3
13. Working directory
워킹 디렉터리
Staging Area (=Index)
스테이징 영역
.git directory
Local repository
Remote Repository
.git directory
로컬 환경
네트워크 환경
stash
stash
branch / checkout / cherry-pick
reset
revert
rebase
merge
log
diff
show
3 단계 모두에서 사용 가능
15. 변경 되돌리기
git reset (HEAD) <file>
*git reset (HEAD) .
Modified
Working directory
워킹 디렉터리
Staged
Staging Area
스테이징 영역
add
Git add 했던 파일(들) 워킹 디렉터리로 되돌리기
16. 변경 되돌리기
git checkout -- <file>
*git checkout -- .
Modified
Working directory
워킹 디렉터리
Modified 파일 Unmodified 상태로 되돌리기
Unmodified
Working directory
워킹 디렉터리
Modify
17. 변경 되돌리기
git stash
git stash pop
변경 사항 잠시 보류하기
Stash stack
0
1
**Modified이면서 Tracked 상태인 파일과 Staging area에 있는 파일만 push 한다.
Modified
Working directory
워킹 디렉터리
add
Staged
Staging Area
스테이징 영역
20. Commit --amend
Working directory
워킹 디렉터리
Staging Area
스테이징 영역
.git directory
Repository
Modified
Staged
Committed
commit --amend1
3 commit
2 수정 작업
8c58793
9f5a468
4 새로운 커밋 생성
21. 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17
중간 커밋 수정하기
git rebase –i master
-i 플래그가 없으면 이 영역의 커밋을 모두 한번에 Rebase
-i 플래그가 있으면 커밋을 특정하여 잠시 멈추게 할 수 있다
23. git rebase –i master
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17
각 스텝에서 뭔가 처리를 마치고 다음 커밋으로 스텝을 넘어가고 싶을 때
git rebase --continue
git rebase --skip
git rebase --abort
변경 처리를 마침
변경 하지 않고 그냥 넘어감
리베이스를 취소함 (모든 스텝을 취소함)
11’
git add . & git rebase --continue
git rebase --skip
git rebase --abort
24. 중간 커밋 수정하기
git rebase –i master
Interactive rebase (대화형 리베이스)의
사용 법은 여기 다 있음
Pick = 수정 안 함.
Reword = 메시지만 바꿀 거임!
Edit = 코드나 파일 수정 좀 함!
Squash = 앞 커밋이랑 하나로 합칠 거.
메시지는 내가 고를 거임.
Fixup = squash랑 똑같은데, 앞 커밋의 커밋 메시지 쓸 거임.
지금 꺼 메시지는 버릴 거임.
Exec = 잠깐 shell 명령 실행할 거임.
(ex. 이전 커밋에서 테스트 돌려보고 싶을 때)
Drop = 버림.
----------------------------------------------------------------------------------
Rebase 실행 순서는 위 -> 아래임. 커밋 순서 재정렬 할 수 있음!
여기 있는 커밋 줄 지우면 그 커밋은 영영 바이바이임.
근데 다 지우면 이 리베이스는 걍 없던 일로 함.
빈 커밋(변경 사항 없는 커밋)은 주석 처리함.
31. 중간 커밋 수정하기
(응용) Edit이 무서울 때,
커밋을 본격 수정하기 전에 일단 한번 코드만 적용해보고 싶을 때
1. branch를 새로 판다 (git checkout -b rebase-practice)
2. 맘껏 edit 해 본다.
3. 맘에 들면 원래 브랜치 이름으로 바꾼다 (git branch –m hs/104-work-branch)
3’. 맘에 들지 않으면 연습 브랜치를 그냥 버린다.
1. 일단 코드를 수정하고, commit 한다.
2. git rebase –i maser
3. 맨 마지막에 추가한 커밋에 fixup 혹은 sqush 플래그를 설정한다.
4. 수정하고 싶었던 커밋의 바로 뒤로 순서를 조정한다.
5. 수정하고 싶었던 커밋과 합쳐지며 edit한 것과 같은 효과를 볼 수 있다.