로또 확률
이 방법은 VSCode, Ubuntu20.04, neovim환경을 기준으로 하니 다른 환경의 경우 알아서 검색하기 바람.
윈도우의 경우 WSL이나 가상머신을 이용하면 비슷하게 설정 가능함. 맥 및 유닉스와 리눅스들은 최신 버전의 경우 크게 다른 점은 없을 것. WSl과 가상머신은 아래에서 설명 예정.
- vscode, neovim, git, gnupg 및 기타 본인의 입맛에 맞춰 개발환경을 세팅한다.
- github.com에서 리포를 클론한다.
- 클론하는 방법은 해당 리포의 클론용 주소(github의 경우 https://github.com으로 시작하거나 [email protected]:으로 시작한다.)를 복사하거나 기억한다.
- 리포가 저장될 디렉터리로 이동한다.
git clone 리포주소
를 셸에 입력한다.- 원하는 디렉터리로 이동해서 클론하는 방법 외에 (git clone 리포주소 원하는디랙터리)를 입력하면 현재 작업 디렉터리에 관계없이 클론할 수 있다.
- 원하는대로 클론이 잘 되었나 확인한다.
- vscode의 경우 ^k ^o를 입력하여 클론된 디렉터리를 선택한다.
- neovim의 경우 셸에서 클론된 디렉터리로 이동한다.
- vscode의 경우 좌측의 패널에서 버전관리를 선택한다. 브랜치 모양이고, 초기 설정시에 위에서 3번째에 위치한다. 그 후 열리는 사이드바에서 리포 이름이 있는 곳 근처에 가면 그 줄에 여러 아이콘이 생긴다. 그 중 점 세 개를 눌러 더보기를 연다. 여기서 체크아웃을 선택하여 기존 브랜치나 새 브랜치로 체크아웃하여 커밋이 마스터에 바로 쓰이는 것을 방지한다.
- neovim의 경우 셸에서
git checkout 브랜치
를 입력하여 체크아웃한다. 새 브랜치의 경우 체크아웃 전에git branch 브랜치
로 브랜치를 우선 만들어야 한다.
- neovim의 경우 셸에서
- 변경사항을 작성한다.
- vscode의 경우 버전관리 사이드바에서 커밋 메세지를 입력한 후 ^[Enter]나 체크 버튼을 눌러 커밋한다.
- neovim의 경우 셸에서
git commit
을 입력하여 커밋 메세지 입력창으로 전환하거나git commit -m "메세지"
를 입력하여 커밋한다.
- neovim의 경우 셸에서
- vscode의 경우 점 세 개를 누른 후 푸시버튼을 눌러 푸시한다.
- neovim의 경우 셸에서
git push
를 입력해 푸시한다. - 새 브랜치의 경우 업스트림이 설정되지 않았다는 에러가 나오는데
git push -u origin 브랜치
로 푸시하면 된다.
- neovim의 경우 셸에서
- github 홈페이지에서 해당 리포에 들어간다.
- 풀 리퀘스트에 들어가서 풀 리퀘스트를 연다.
- 방금 연 풀 리퀘스트에 들어가면 오른쪽에 리뷰어를 추가하는 부분이 있다. 리뷰어를 추가하고 기다리자. 끝!
풀 리퀘스트가 열렸으면 그걸 리뷰해야 한다. 열린 풀 리퀘스트에 들어가면 Files changed가 있다. 거기에서 파일 변화를 읽고 오른쪽 위에 초록 버튼을 눌러 원하는 작업을 하면 된다.
- 이 코드가 마음에 든다: 코멘트 작성 후 승인을 선택하고 리뷰 제출을 누른다.
- 이 코드가 마음에 안든다: 코멘트 작성 후 수정 요청을 제출한다.
- 아몰랑 어찌되건 내 알바냐: 그럴거면 왜 시작한건데? 승인되면 아무나 머지하면 된다. 끝!
- 깃 리포 내부가 아닌 다른 곳에 깃허브에서 xlnt를 찾아 클론한다.
- cd를 통해 내부로 들어간다.
cmake .
을 한다.make
를 하여 기나긴 시간동안 빌드를 하는 것을 기다린다.sudo make install
을 하여 시스템에 라이브러리를 설치한다.- 끝!
g++ -std=c++14(혹은 c++17) source.cpp -Iclnt/include -lxlnt -o binfile.out
- 각자 수정사항이 있으면 브랜치를 만들고 수정한 후에 마스터에 풀 리퀘스트 할 것.
- 머지 전에 반드시 코드리뷰를 거칠 것.
- 자신의 풀 리퀘스트를 자신이 머지하지 말 것.
- 풀 리퀘스트 없이 머지하지 말 것.
- 담당자가 본인밖에 없는 브랜치로의 머지는 예외.
- 작성자 이외의 과반수 이상이 동의 했을경우 머지 가능.
이 리포는 BSD 3Clauses 라이센스를 따르므로 그에 맞게 사용할 것.
저자:
- LJLee37
- bbasung1
- Qstion05
- spenshark
라이브러리 xlnt를 사용함. xlnt의 라이센스