VSCode Terminal Customizing

서버에서 vscode 터미널 많이들 사용하고 계시죠?!! 캠퍼여러분들께 도움이되는 터미널 커스텀에 대해서 소개해드릴까 합니다!

vscode의 default terminal은 bash로, 커스터마이징의 끝은 순정이라고는 하지만.. zsh의 강력함을 한 번 맛보면 bash로 돌아가기가 정말 힘듭니다.


굉장히 칙칙한 bash


그러면.. zsh는 뭐가다른데?! 이미지 한장으로 보여드릴게요. 결과는 아래와 같습니다.

Powerlevel10k


딱봐도 엄청나죠..!!!? 위의 것들은 oh-my-zsh과 powerlevel10k, 그리고 zsh-autosuggestions 과 zsh-syntax-highlighting 이라는 플러그인을 적용한 모습입니다. 여러분들도 이대로만 따라하시면 위와같은 스마트한 기능과 멋을 가진 매력적인 터미널을 얻을 수 있습니다!

자 그렇다면 지금부터 본격적인 세팅 들어갑니다. 레쓰기릿!!

자세히 보기

AI Competition의 협업을 위한 플래닝가이드

🍡 떡볶이조 팀원들 🔥

김다영 김아경 문하겸 박지민 이요한 전준영 정민지
Avatar Avatar Avatar Avatar Avatar Avatar Avatar

7명의 팀원이 2주동안 잠도 거의 안자가면서 올인했던 P Stage의 ‘마스크 착용 분류 대회’에 대한 플래닝 가이드입니다. 저희는 각자 실력도 다 다르고 협업문화도 잘 모르는 상태로 대회에 임하였습니다. 그러다 보니 뭘 해야할지 모르는 순간들도 너무 많았고, 여러 시행착오를 겪었기 때문에 다음 기수분들 혹은 인공지능 대회 프로세스 중 협업관리를 어떻게 하는 것이 좋을지 저희의 경험을 조금 나누어볼까 합니다.

당연히 처음엔 너무 막막했어요. 이게 잘 될까? 싶었던 대회였는데, 계속해서 시간과 에너지를 쏟으니 별로 경험이 없는 사람들 7명이서 38개 조 중 13등을 하게 되었습니다. 물론 순위권에 들었으면 좋았겠지만, 대회는 처음인 사람들끼리는 나름 성공적인 결과였다고 생각합니다. 이러한 저희 조의 이야기들이 어떤 형태로든 도움이 되고, 좋은 레퍼런스가 되기를 바랍니다.


🦆 대회 전략 수립 및 협업환경 구축


이번생에 협업은 처음이라..

자세히 보기

Paper Review를 위한 깃허브 협업 페이지 관리하기

팀프로젝트를 진행하면서 여러 목적성을 가진 채널이 필요해졌고, 그 중 하나가 논문리뷰한 자료들을 어떻게 관리할지였다. 팀원들 모두 퀄리티가 너무 좋게 준비를 잘 해오셔서 시각적인 요소들을 사용하여 자료를 공유할 수 있으면 좋겠다는 생각을 했고, 여러 이야기 끝에 깃허브 페이지를 사용해보기로 했다.

Jekyll or Hexo?

깃허브 페이지를 관리할 때 주로 Jekyll과 Hexo를 사용한다. 처음에는 Jekyll로 페이지를 꾸며보았지만 동적 사이트 생성방식인 Jekyll은 반영시간이 매우 길고 관리가 귀찮기 때문에 Hexo로 옮기게 되었다.

Previous Install

  • Node.js
    • Mac의 경우 brew install node 로 설치할 수 있다.
    • 설치가 잘 되었는지 확인하기 위해서는 cmd(window) 혹은 터미널(mac)에서 npm version 을 쳐보자!
  • git

환경 세팅

docs 등 로컬에서 관리할 폴더만 하나 만들어두고, PaperReview 레포지토리를 클론받습니다.

git clone https://github.com/Boostcamp-AI-Tech-1-15/PaperReview.git

PaperReview 레포지토리를 클론받고 현재 develop 브랜치에 관련 파일들을 전부 올려두었는데,

  1. cd PaperReview
  2. git checkout develop
자세히 보기

Vscode에서 Python Convention 지정하기

  1. vscode에 python extention 설치하기

  2. 가상환경에 autopep8 패키지 설치

    • conda install autopep8 (anaconda)

    • pip install autopep8 (pip)

  3. 가상환경에 pylint 패키지 설치

    • conda install pylint (anaconda)

    • pip install pylint (pip)

  4. vscode에서 cmd , (mac) ctrl , (window) 를 누르고 Settings 탭에 진입.

  5. Settings 검색창에 FormatOnSave 검색 후 체크박스에 체크.


위의 방법으로 되지 않는다면, vscode의 settings.json 파일 확인 후 아래 인자들이 작성되어있는지 확인, 되어있지 않다면 복붙하고 저장

  • python.formatting.autopep8Path 는 직접 확인하여 작성해야함.
    • Mac(m1)의 경우 Conda 설치시 /opt/homebrew/Caskroom/miniforge/base/bin/autopep8 경로에 있음.
1
2
3
"editor.formatOnSave": true,
"python.formatting.provider": "autopep8",
"python.formatting.autopep8Path": "Autopep8 실행파일 위치",
자세히 보기

협업을 위한 Git 사용 매뉴얼 순한맛

사전준비

  1. git init
  2. git config --global user.name "YOUR_GITHUB_NAME"
  3. git config --global user.email "YOUR GITHUB_EMAIL"

위 세 단계가 이루어지지 않으면 private 레포지토리에 접근할 수 없을 수도 있습니다!

USAGE

  1. git clone "YOUR_REPOSITORY" 관리할 레포지토리를 clone.
  2. cd "YOUR_REPOSITORY" clone 받은 레포지토리로 change directory
  3. git checkout -b "BRANCH_NAME" 을 통해 브랜치를 생성하고 해당 브랜치로 전환.
  4. git add & commit
  5. git push origin "BRANCH_NAME" add/commit 한 내역들을 BRANCH_NAME 브랜치에 push한다.
    • push 가 되어있지 않다면, git pull origin "BRANCH_NAME" 을 시도해볼 것.
  6. 브라우저로 해당 레포지토리로 이동한 후, push한 브랜치로 변경한다.
  7. compare & pull request 버튼을 클릭한다.
  8. pull request를 날리고 싶은 브랜치(head) 를 설정하고 pull request 버튼을 클릭한다.
  9. 다른 팀원들이 리뷰 및 커멘트를 날리고 리뷰가 끝났다면, Merge를 한다.

명령어

  1. git checkout -b "BRANCH_NAME" BRANCH_NAME으로 된 브랜치를 생성하고 현재 브랜치를 생성한 브랜치로 변경한다.
  2. git checkout "BRANCH_NAME" 현재 브랜치를 “이미 생성되어 있는 BRANCH_NAME”으로 변경한다.
  3. git branch -d "BRANCH_NAME" BRANCH_NAME으로 되어있는 브랜치를 삭제한다.
  4. git remote -v 깃에 연결된 원격저장소를 확인한다.
  • 추가예정

그 외 팁들

  1. 커밋메세지 템플릿 적용하기

    • touch ~/.gitmessage.txt gitmessage.txt 파일을 생성한다.

    • vim 등의 에디터로 gitmessage.txt 파일에 아래 내용을 복사&붙여넣기 한다.

      1
      2
      3
      4
      5
      6
      7
      8
      9
      10
      11
      12
      13
      14
      15
      16
      17
      18
      19
      20
      21
      22
      23
      24
      25
      26
      27
      # <타입>: <제목>

      ##### 제목은 최대 50 글자까지만 입력 ############## -> |


      # 본문은 위에 작성
      ######## 본문은 한 줄에 최대 72 글자까지만 입력 ########################### -> |

      # 꼬릿말은 아래에 작성: ex) #이슈 번호

      # --- COMMIT END ---
      # <타입> 리스트
      # feat : 기능 (새로운 기능)
      # fix : 버그 (버그 수정)
      # refactor: 리팩토링
      # style : 스타일 (코드 형식, 세미콜론 추가: 비즈니스 로직에 변경 없음)
      # docs : 문서 (문서 추가, 수정, 삭제)
      # test : 테스트 (테스트 코드 추가, 수정, 삭제: 비즈니스 로직에 변경 없음)
      # chore : 기타 변경사항 (빌드 스크립트 수정 등)
      # ------------------
      # 제목 첫 글자를 대문자로
      # 제목은 명령문으로
      # 제목 끝에 마침표(.) 금지
      # 제목과 본문을 한 줄 띄워 분리하기
      # 본문은 "어떻게" 보다 "무엇을", "왜"를 설명한다.
      # 본문에 여러줄의 메시지를 작성할 땐 "-"로 구분
      # ------------------
    • git config --global commit.template ~/.gitmessage.txt 해당 gitmessage.txt를 전역 커밋 템플릿으로 설정한다.

  2. Alias 적용하기. 아래와 같이 alias 를 (맥이라면 ./zshrc) 저장하면 단축어로 사용할 수 있다.

자세히 보기