깃허브의 흐름은 배포가 정기적으로 이루어지는 팀이나 프로젝트를 지원하는 간단한 브렌치(분기된 코드) 기반 작업 흐름 입니다. 이 가이드는 깃허브 흐름이 어떻게 작동하고 왜 그렇게 되는지 설명합니다.


브렌치(Branch) 생성하기

프로젝트를 진행할 때는 여러가지 기능이나 아이디어들이 작업 중일 겁니다. 그 중 일부는 완성본에 포함될 수도 있고 다른 일부는 포함될 준비가 되지 않았을 수도 있습니다. 브렌치는 이러한 작업의 흐름을 관리하는 것을 돕기 위해서 있습니다. 

프로젝트에서 브렌치를 만들면 새로운 아이디어를 시험해 볼 수있는 환경을 만들어진 것입니다. 브렌치에서 변경 한 사항은 마스터 지사에 영향을 미치지 않으므로 자유롭게 실험하고 변경 사항을 적용 할 수 있습니다. 브렌치는 함께 작업하는 누군가가 검토하기 전에는 메인 브렌치에 병합되지 않을 것이라는 점을 알고 있기에 안전합니다. 

 - 조언 한마디

브렌치는 Git의 핵심 개념이며 전체 깃허브 흐름은 이를 기반으로 합니다. 딱 한가지 규칙이 있다면, 마스터 브렌치의 모든 항목은 항상 배포가 가능하다는 점입니다. 

이런 점 때문에 새로운 기능을 만들때나 기능을 수정할때 새 브렌치(분기코드)를 마스터에서 복사하여 생성한다는 점이 매우 중요합니다. 다른 사람이 현재 내가 작업중인 것을 볼수도 있기 때문에, 브렌치 이름을 봤을때 작업을 이해할 수 있으면 좋습니다. (예를들면, 리팩터 인증, 사용자 콘텐츠 캐시 키, 레티나-아바타 만들기) 




커밋 추가하기

여러분이 브렌치를 만들었다면, 이제 뭔가 변경을 해볼 순서 입니다. 여러분이 파일에 뭔가를 추가,변경,삭제할 때마다, 커밋(commit)을 만드는 것이고 그것들을 여러분의 브렌치에 추가 할 수 있습니다. 커밋을 추가하는 이런 과정은 보통 feature라고 하는 여러분의 브렌치에서 작업 할 때 진행 상황을 추적합니다.

커밋은 다른 사람들이 여러분이 한 일의 내용과 그 이유를 이해할수 있도록 투명한 기록을 남기는 것입니다. 각 커밋에는 관련된 변경 메시지가 있으며, 이는 특정 변경이 이루어진 이유를 설명하는 글입니다. 또한 각각의 커밋은 개별적인 변경 단위로 간주됩니다. 이런점들은 버그가 발견되거나 다른 방향으로 가기로 한 경우 변경 사항들을 되돌릴(rollback;롤백) 수 있습니다. 

 - 조언 한마디

커밋 메세지는 특히 중요합니다. 특히 Git은 변경사항들이 서버에 합쳐질 때, 변경 사항을 추적하고 커밋으로 표시하기 때문에 중요합니다. 명확한 커밋 메시지를 작성하였다면, 다른 사람들이 커밋을 쉽게 이해하고 커밋에 대한 피드백을 제공 할 수 있습니다.




당겨짐 요청(Pull Request) 생성하기

당겨짐 요청을 생성한다는 것은 여러분의 커밋에 대해서 토론을 시작하는 것을 의미합니다. 커밋들은 기본적인 Git 저장소와 긴밀하게 통합되어 있기 때문에 검토자들이 여러분의 당겨짐 요청을 받아들이면 누구라도 어떤 변경 사항이 통합될지 볼 수 있습니다. 

여러분은 개발 과정 중에 언제든지 당겨짐 요청(Pull Request)을 생성할 수 있습니다. 즉 코드가 거의 없지만, 어떤 스크린 샷이나 좋은 아이디어를 공유하고 싶은 경우, 하다가 막혀서 다른 사람의 도움이나 조언이 필요한 경우, 또는 다른 누군가가 여러분의 작업을 검토해 주기를 바라는 경우등에 당겨짐 요청(Pull Request)을 생성할 수 있습니다. 당겨짐 요청 메세지에서 @멘션(@mention) 기능을 활용하면, 지구 반대편에 있는 특정 사람이나 팀에게도 피드백을 요청 할 수 있습니다. 

 - 조언 한마디

당겨짐 요청은 오픈 소스 프로젝트에 기여하고 공유 저장소에 대한 변경을 관리하는 데 유용합니다. 분기와 병합(Fork & Pull) 모델을 사용하는 경우, 당겨짐 요청은 프로젝트 관리자에게 여러분이 반영하고 싶은 변경사항들을 알리는 역할을 합니다. 공유 저장소 모델을 사용하는 경우,  당겨짐 요청은 제안된 변경 사항에 대한 코드 검토와 토론을 시작하는데 사용이 됩니다. 물론 변경사항이 마스터 분기에 병합하기 전에 말이죠. 




여러분의 코드를 검토하고 토론하기

당겨짐 요청이 생성되면, 여러분의 제안한 변경 사항을 검토하는 사람(혹은 팀)은 질문이나 의견이 있을 수 있습니다. 아마도 코딩 스타일이 프로젝트 지침과 일치 하지 않을 수도 있고, 단위 테스트가 없거나, 아니면 정말 잘했다고 하거나 장점들을 나열 할지도 모릅니다. 당겨짐 요청은 이런 유형의 대화를 장려하도록 설계되었습니다. 

또한 커밋에 대한 토론과 피드백을 토대로 계속해서 여러분의 브렌치에 추가(push)할 수 있습니다. 누군가 당신이 뭔가를 놓쳤다고 하거나 코드에 버그가있는 경우 여러분의 브렌치에서 수정하고 변경 사항을 적용 할 수 있습니다. 깃허브는 "통합 당겨짐 요청화면"에서 새로운 커밋과 추가 피드백을 보여줍니다.

 - 조언 한마디

당겨짐 요청 댓글은  Markdown에 작성되고, 이모티콘이나 이미지를 넣거나 미리 작성된 간단한 텍스트 블록이나 간단한 서식을 사용할 수 있습니다.




배포하기

일단 당기기 요청이 검토가 되고, 브렌치가 테스트를 통과하면, 여러분은 여러분의 변경사항들을 배포하여 실운영(제품) 환경에서 확인해볼 수 있습니다. 여러분의 브렌치에서 문제가 발생하면 기존 마스터 브렌치를 실 운영(제품)에 다시 배포하여 롤백(되돌림) 할 수 있습니다.




통합하기

현재 변경 사항이 운영(제품) 환경에서 확인되었으므로 코드를 마스터 분기에 병합해야합니다.

병합되면, 당기기 요청은 코드의 변경 기록들을 보존합니다. 기록들은 검색 가능하기 때문에, 언제 어디서나 결정을 내린 이유와 방법을 이해할 수 있습니다.

 - 조언 한마디

특정 키워드를 당겨짐 요청에 있는 텍스트와 연결해 봄으로써 여러분은 발생한 이슈와 연관된 코드를 찾을 수도 있습니다.  당겨짐 요청이 병합되면 관련 문제(issue)도 닫힙니다. 예를 들어 Closes #32 라고 입력하면, 저장소에 있는 32번 문제(이슈)가 종료됩니다. 더 자세한 내용은 도움말을 확인해 보시기 바랍니다.

from. https://guides.github.com/introduction/flow/

도움이 되셨나요?^^

GitHub 페이지는 GitHub을 통해 제공(호스팅)되고 쉽게 게시되는 공개 웹 페이지입니다. 페이지를 시작하고 가장 빠른 방법은 Jekyll Theme Chooser를 사용하여 미리 만들어진 테마를 불러오는 것입니다. 그런 다음 GitHub 페이지의 콘텐츠와 스타일을 웹 또는 로컬 컴퓨터를 통해 원격으로 수정할 수 있습니다.


웹사이트 만들기


로그인하면 새 저장소를 만들어 시작할 수 있습니다.


새 저장소 화면에서 웹 사이트를 생성하려면 이 저장소에 이름을 지정해줘야 합니다.


웹 사이트의 파일들은 username.github.io라는 저장소 (여기서 "username"은 실제 GitHub 사용자 이름임)에 저장됩니다. 사이트 설정을 시작하려면 설정 탭을 열어야합니다.


설정 페이지를 아래로 스크롤하면 하단에 GitHub 페이지 섹션이 표시됩니다. 테마 선택[Choose a theme] 버튼을 클릭하여 사이트 생성 프로세스를 시작하세요.


버튼을 클릭하면 테마 선택기로 이동합니다. 페이지 상단의 회전식 슬라이드에 여러 가지 테마 옵션이 표시됩니다. 테마를 미리 보려면 이미지를 클릭하세요. 선택한 후 오른쪽에있는 테마 선택을 클릭하여 계속 진행하세요. 나중에 테마를 쉽게 변경할 수 있으므로 딱 마음에 드는 것이 없더라도 적당히 하나를 선택하세요. 


이제 콘텐츠를 작성하겠습니다. 사실 고민을 해서 콘텐츠를 작성 필요가 있지만 괜찮다면 지금 콘텐츠를 일단 그냥 두어도 됩니다.

수정이 끝나면 페이지 아래쪽으로 스크롤 한 다음 변경 사항 적용[Commit changes]을 클릭합니다.


방문자들이 여러분의 새로운 웹 사이트인 username.github.io를 찾을 수 있도록 GitHub가 다른 모든 작업을 수행하는데 최대 10 분이 소요될 수 있습니다. 일정 시간이 지나면, 브라우저에서 새 탭을 열어 여러분의 사이트로 이동할 수 있습니다~!



변경 사항 만들기


가장 쉽게 변경 할 수 있는 것은 색인 페이지의 기본 제목을 제거하고 더 친숙한 메시지를 추가하는 것입니다. 이것은 매우 금방 할수있는 변경이고, 첫 번째 변경 사항이기 때문에 기본 브렌치 인 master에서 변경하겠습니다.

코드(code) 탭에서 _config.yml 파일을 탐색하십시오. 연필 아이콘을 클릭하여 파일을 편집 할 수 있습니다.


현재 여러분의 사이트에는 정해진 제목이 없으므로 저장소의 이름으로 되돌아갑니다. 이것을 방지하기 위해, "title : Welcome to the Octocat’s homepage!"라는 줄을이 파일에 추가 할 것입니다. Octocat 대신에 여러분의 이름을 적고 나머지는 동일하게 하세요.

이런 제목을 정한다음, 페이지의 목적에 대한 메시지를 추가하고 사람들이 여기에 왔을 때 수행 할 작업을 설명 할 수 있습니다. 저는 "이 프로젝트를 북마크 하시고 제 프로젝트의 업데이트 내역을 받아보세요" 라고 적겠습니다.


이런 소소한 변화가 끝나면 페이지의 맨 아래로 스크롤하여 두 번째 커밋을하십시오. 이 변경 사항에 관해 쓸 주제는 두 가지입니다. 바로 제목과 추가 설명입니다. 추가 설명은 선택 사항이므로 주제에 대한 설명이 포함 된 메시지를 남겨 두겠습니다.

완료되면 변경 사항 적용[Commit changes]을 클릭하면 업데이트가 몇 초 안에 생깁니다!


다음순서


여러분은 여러분의 프로젝트를 일부 변경해 보았습니다. 다른 프로젝트에 기여하거나 프로젝트에서 작업을 완성하는 방법을 배우려면 다음 가이드를 확인하십시오.

from: https://guides.github.com/features/pages/

DNS (Domain name Server)의 레코드 타입에는 몇가지 종류가 있다.

 

 

A (Address Mapping records)  

레코드 A는 주어진 호스트에 대한 IP 주소 (IPv4)를 알려줍니다.

A 레코드는 도메인 이름을 해당하는 IP 주소로 변환하는 데 사용됩니다.

 

 

AAAA (IP Version 6 Address records)  

레코드 AAAA (quad-A 레코드이기도 함)는 주어진 호스트에 대해 IPv6 주소를 알려줍니다.

결국 A 레코드와 같은 방식으로 작동하며 차이점은 IP 주소 유형입니다.(IP 버전6)





CNAME (Canonical Name) 

CNAME 레코드는 도메인 이름의 별칭을 만드는 데 사용됩니다.

CNAME 레코드는 도메인을 외부 도메인으로 별칭을 지정하려는 경우 유용합니다.

경우에 따라 CNAME 레코드를 제거하고 A 레코드로 대체하면 성능 오버 헤드를 줄일 수도 있습니다.

 

 

HINFO (Host Information) 

HINFO 레코드는 호스트에 대한 일반 정보를 얻는 데 사용됩니다. 레코드는 CPU OS 유형을 알려줍니다

HINFO 레코드 데이터는 두 호스트가 통신하기를 원할 때 운영 체제 특정 프로토콜을 사용할 수있는 가능성을 제공합니다

하지만 일반적으로 보안상의 이유 때문에 HINFO 레코드는 공용 서버에서 사용되지 않습니다.

 

 

ISDN (Integrated Services Digital Network) 

ISDN 리소스 레코드는 호스트의 ISDN 주소를 알려줍니다

ISDN 주소는 국가 코드, 국가 별 대상 코드, ISDN 가입자 번호 및 선택적으로 ISDN 하위 주소로 구성된 전화 번호입니다

레코드의 기능은 A 레코드 기능의 변형 일뿐입니다.

 

 

MX (Mail exchanger)

MX 레코드는 DNS 도메인 이름에 대한 메일 교환 서버를 알려줍니다. 이 정보는 SMTP (Simple Mail Transfer Protocol) 전자 메일을 적절한 호스트로 라우팅하는 데 사용합니다. 일반적으로 DNS 도메인에 대해 둘 이상의 메일 교환 서버가 있으며 각 도메인에 우선 순위가 설정됩니다.

 

 

NS (Name Server) 

NS 레코드는 주어진 호스트에 대한 공식적인 이름 서버를 알려줍니다.

 

 

PTR (Reverse-lookup Pointer records)

정방향 DNS 확인 (A AAAA 레코드)과 달리 PTR 레코드는 IP 주소를 기반으로 도메인 이름을 찾는 데 사용됩니다.

 

 

SOA (Start of Authority)

이 레코드는 기본 이름 서버, 도메인 관리자의 전자 메일, 도메인 일련 번호 및 

영역 새로 고침과 관련된 여러 타이머를 포함하여 DNS 영역에 대한 핵심 정보를 지정합니다.

 

 

TXT (Text)  

텍스트 레코드는 형식이 지정되지 않은 임의의 텍스트 문자열을 저장할 수 있습니다. (파일도 가능 ex include:_spf.daum.net ~all)

일반적으로 이 레코드는 SPF (Sender Policy Framework) (당신이 보낸것 처럼 보이도록 하는가짜 전자 메일을 막기 위해서 사용합니다.

 

 

출처http://dns-record-viewer.online-domain-tools.com/






  1. 왕달팽이 2019.11.02 14:48

    잘 보고 갑니다. 도움이 많이 됐어요

+ Recent posts