hpmsmt
      • Sharing URL Link copied
      • /edit
      • View mode
        • Edit mode
        • View mode
        • Book mode
        • Slide mode
        Edit mode View mode Book mode Slide mode
      • Customize slides
      • Note Permission
      • Read
        • Owners
        • Signed-in users
        • Everyone
        Owners Signed-in users Everyone
      • Write
        • Owners
        • Signed-in users
        • Everyone
        Owners Signed-in users Everyone
      • Engagement control Commenting, Suggest edit, Emoji Reply
    • Invite by email
      Invitee
    • Publish Note

      Share your work with the world Congratulations! 🎉 Your note is out in the world Publish Note

      Your note will be visible on your profile and discoverable by anyone.
      Your note is now live.
      This note is visible on your profile and discoverable online.
      Everyone on the web can find and read all notes of this public team.
      See published notes
      Unpublish note
      Please check the box to agree to the Community Guidelines.
      View profile
    • Commenting
      Permission
      Disabled Forbidden Owners Signed-in users Everyone
    • Enable
    • Permission
      • Forbidden
      • Owners
      • Signed-in users
      • Everyone
    • Suggest edit
      Permission
      Disabled Forbidden Owners Signed-in users Everyone
    • Enable
    • Permission
      • Forbidden
      • Owners
      • Signed-in users
    • Emoji Reply
    • Enable
    • Versions and GitHub Sync
    • Note settings
    • Engagement control
    • Transfer ownership
    • Delete this note
    • Insert from template
    • Import from
      • Dropbox
      • Google Drive
      • Gist
      • Clipboard
    • Export to
      • Dropbox
      • Google Drive
      • Gist
    • Download
      • Markdown
      • HTML
      • Raw HTML
Menu Note settings Versions and GitHub Sync Sharing URL Help
Menu
Options
Engagement control Transfer ownership Delete this note
Import from
Dropbox Google Drive Gist Clipboard
Export to
Dropbox Google Drive Gist
Download
Markdown HTML Raw HTML
Back
Sharing URL Link copied
/edit
View mode
  • Edit mode
  • View mode
  • Book mode
  • Slide mode
Edit mode View mode Book mode Slide mode
Customize slides
Note Permission
Read
Owners
  • Owners
  • Signed-in users
  • Everyone
Owners Signed-in users Everyone
Write
Owners
  • Owners
  • Signed-in users
  • Everyone
Owners Signed-in users Everyone
Engagement control Commenting, Suggest edit, Emoji Reply
  • Invite by email
    Invitee
  • Publish Note

    Share your work with the world Congratulations! 🎉 Your note is out in the world Publish Note

    Your note will be visible on your profile and discoverable by anyone.
    Your note is now live.
    This note is visible on your profile and discoverable online.
    Everyone on the web can find and read all notes of this public team.
    See published notes
    Unpublish note
    Please check the box to agree to the Community Guidelines.
    View profile
    Engagement control
    Commenting
    Permission
    Disabled Forbidden Owners Signed-in users Everyone
    Enable
    Permission
    • Forbidden
    • Owners
    • Signed-in users
    • Everyone
    Suggest edit
    Permission
    Disabled Forbidden Owners Signed-in users Everyone
    Enable
    Permission
    • Forbidden
    • Owners
    • Signed-in users
    Emoji Reply
    Enable
    Import from Dropbox Google Drive Gist Clipboard
       owned this note    owned this note      
    Published Linked with GitHub
    Subscribed
    • Any changes
      Be notified of any changes
    • Mention me
      Be notified of mention me
    • Unsubscribe
    Subscribe
    --- title: github-copilot-setup tags: github, copilot description: github-copilot-setup. --- # [Github](https://github.com)과 [Copilot](https://github.com/features/copilot)설정 방법 <!-- Put the link to this slide here so people can follow --> slide: https://hackmd.io/@hpmsmt/github-copilot-setup - AI 코딩 툴인 [Copilot](https://github.com/features/copilot)을 개발팀에 도입하고자 검토중입니다. - 먼저 소수의 인원으로 사용테스트해보고 결과가 좋으면 적극적으로 확산할까 합니다. - 많은 도움 부탁드립니다. ## :warning: 주의사항 : 회사 규정에 따라 보안 관련 유의해야 하니 꼭 설명을 따라주시기 바랍니다 --- ## [Copilot](https://github.com/features/copilot)? - 마이크로소프트 깃헙에서 만든 AI 코딩 툴 :robot_face: - [링크](https://github.com/features/copilot) - 관련 영상 {%youtube x_Yw2f161CU %} --- ## 유의 사항 :warning: - 회사의 보안 정책상 매우 주의가 필요합니다. - 그래서 조금 빡세게 관리하고자 하니 하기 내용들을 꼭 따라주세요. --- ## 환경설정 1. [Github](https://github.com) 가입 - [Github](https://github.com)에 가입합니다. [참고 블로그](https://www.lainyzine.com/ko/article/how-to-create-github-account/) ### 유의사항 - 기존에 개인 계정이 있던 분이라도 **새로 가입**해 주세요 - 가입시 이메일과 아이디는 **회사 이메일과 아이디로 가입**해주세요 - 이 계정으로는 **Copilot만 사용**하고 깃헙은 사용하지 말아주세요 - 깃헙 저장소를 만들고 싶으신 분은 저에게 알려주세요. **임의로 저장소 생성 금지**합니다. - 정기적으로 **계정 활동을 체크**하도록 하겠습니다. --- ## 환경설정 2. 코파일럿 가입 - [Github](https://github.com) 로그인후 Copilot 링크 접속 [링크](https://github.com/features/copilot) - 'Start my free trial' 클릭 - **Monthly plan** 선택후 초록 버튼 클릭 - 60일간 무료이고 이후에는 1달에 10$입니다. 법인카드로 회사에서 지원됩니다. - 'Confirm your payment details' 화면에서 정보입력하고 초록 버튼 클릭 (아래 참조) - First name : HYUNGGUN - Last name : LEE - Address (P.O. box, company name, c/o) : Hanwha Presicion Machinary - Address line 2 (Apartment, suite, unit) : 6, Panguo-ro 319Beun-gil, Bundang-gu - City : Sungnam - Postal/Zip code : 13488 - Country/Region : Korea, South - State/Province : Gyeonggi-do - 'Confirm your payment details' 화면에서 신용카드 정보 입력후 녹색버튼 클릭 - :warning: **반드시 법인카드를 입력하세요** :warning: - 최종적으로 Submit 클릭하면 가입완료입니다. **중요한 설정이 남았으니 아래페이지 꼭 보세요!** --- ## 환경 설정 3. 중요한 설정 - 아래 화면에서 'Suggestions matching public code'의 Select option을 눌러 **Block**으로 설정합니다. - 이걸 Allow로 하면 다른 사람 코드를 그대로 제안받게 되어 오픈소스 침해우려가 있습니다. 꼭 Block으로 설정합시다. - 'Allow GitHub to use my code snippets for product improvements' 를 **해제**합니다. - 이걸 체크한채로 놔두면 깃헙이 내 코드를 가져갑니다. 꼭 **해제**해야 합니다. ![](https://i.imgur.com/ViO0xm8.png) --- ## 환경 설정 4. 에디터 익스텐션 설치 - 이제 Copilot 가입이 완료되었습니다. :tada: 익스텐션 설치 화면이 나옵니다. - 지원하는 에디터는 4가지 입니다. 1. Visual Studio Code 2. Visual Studio - Visual Studio는 2022 Ver17.2 이상이 설치되어 있어야합니다. 4. JetBrains 5. Neovim - NeoVim은 Neovim 및 Node.js Ver17 이하가 설치되어 있어야합니다. - 본인이 사용하는 에디터를 눌러서 설명에 따라 익스텐션을 설치합니다. --- ## 환경 설정 5. 사용해보기 - 제가 Visual Studio Code밖에 안써봐서 이것만 설명드립니다. 다른거 해보신 분은 여기에 내용을 올려주시면 감사하겠습니다! - 에디터 실행하면 깃헙 로그인을 요구합니다. 로그인합니다. - 'self-signed ...'하는 에러가 발생하는 경우에는 **Win-CA**라는 익스텐션을 설치하고 옵션의 Inject를 **append**로 설정후 재시작합니다. (이부분 잘 안되면 박형근에게 물어보세요) - 참고 : https://stackoverflow.com/questions/71367058/self-signed-certificate-in-certificate-chain-on-github-copilot - 우하단에 하기 아이콘이 나오면 이제 사용가능합니다. ![](https://i.imgur.com/tCqlqUQ.png) - 끄고 싶으면 아이콘 클릭하면 비활성화 됩니다. - test.js라는 파일을 만들고 아래와 같이 주석을 입력해봅니다. ```javascript= // Calculate dates ``` - 주석을 입력하거나, 함수 이름을 적으면 내용을 제안해 줍니다. 제안을 수락하려면 **tab**을 누르면 됩니다. - 아래 명령어만 기억하면 됩니다. - **TAB** : 제안 수락 - **ESC** : 제안 취소 - **ALT+Enter** : 별도 창에 10개 제안 보여주기 - Copilot 비활성화 하기 : 하단 아이콘 클릭 - 더 자세한 사용방안은 하기 링크 참고하세요. - https://docs.github.com/en/copilot/getting-started-with-github-copilot/getting-started-with-github-copilot-in-visual-studio-code --- ## 완료 - 이제 업무에 사용해 보시고 한달쯤 후에 사용소감을 알려주세요. - 처음에는 익숙치 않아 불편할 수 있습니다. 그래도 가능한 활용해 봐 주세요. --- ## 의견 - 의견 있으면 여기에 적어주세요. - Edit 버튼을 누르면 이 문서를 수정할 수 있습니다. - 문서가 잘못된 부분있으면 수정해주시면 감사하겠습니다. #### 감사합니다 ---

    Import from clipboard

    Paste your markdown or webpage here...

    Advanced permission required

    Your current role can only read. Ask the system administrator to acquire write and comment permission.

    This team is disabled

    Sorry, this team is disabled. You can't edit this note.

    This note is locked

    Sorry, only owner can edit this note.

    Reach the limit

    Sorry, you've reached the max length this note can be.
    Please reduce the content or divide it to more notes, thank you!

    Import from Gist

    Import from Snippet

    or

    Export to Snippet

    Are you sure?

    Do you really want to delete this note?
    All users will lose their connection.

    Create a note from template

    Create a note from template

    Oops...
    This template has been removed or transferred.
    Upgrade
    All
    • All
    • Team
    No template.

    Create a template

    Upgrade

    Delete template

    Do you really want to delete this template?
    Turn this template into a regular note and keep its content, versions, and comments.

    This page need refresh

    You have an incompatible client version.
    Refresh to update.
    New version available!
    See releases notes here
    Refresh to enjoy new features.
    Your user state has changed.
    Refresh to load new user state.

    Sign in

    Forgot password

    or

    By clicking below, you agree to our terms of service.

    Sign in via Facebook Sign in via Twitter Sign in via GitHub Sign in via Dropbox Sign in with Wallet
    Wallet ( )
    Connect another wallet

    New to HackMD? Sign up

    Help

    • English
    • 中文
    • Français
    • Deutsch
    • 日本語
    • Español
    • Català
    • Ελληνικά
    • Português
    • italiano
    • Türkçe
    • Русский
    • Nederlands
    • hrvatski jezik
    • język polski
    • Українська
    • हिन्दी
    • svenska
    • Esperanto
    • dansk

    Documents

    Help & Tutorial

    How to use Book mode

    Slide Example

    API Docs

    Edit in VSCode

    Install browser extension

    Contacts

    Feedback

    Discord

    Send us email

    Resources

    Releases

    Pricing

    Blog

    Policy

    Terms

    Privacy

    Cheatsheet

    Syntax Example Reference
    # Header Header 基本排版
    - Unordered List
    • Unordered List
    1. Ordered List
    1. Ordered List
    - [ ] Todo List
    • Todo List
    > Blockquote
    Blockquote
    **Bold font** Bold font
    *Italics font* Italics font
    ~~Strikethrough~~ Strikethrough
    19^th^ 19th
    H~2~O H2O
    ++Inserted text++ Inserted text
    ==Marked text== Marked text
    [link text](https:// "title") Link
    ![image alt](https:// "title") Image
    `Code` Code 在筆記中貼入程式碼
    ```javascript
    var i = 0;
    ```
    var i = 0;
    :smile: :smile: Emoji list
    {%youtube youtube_id %} Externals
    $L^aT_eX$ LaTeX
    :::info
    This is a alert area.
    :::

    This is a alert area.

    Versions and GitHub Sync
    Get Full History Access

    • Edit version name
    • Delete

    revision author avatar     named on  

    More Less

    Note content is identical to the latest version.
    Compare
      Choose a version
      No search result
      Version not found
    Sign in to link this note to GitHub
    Learn more
    This note is not linked with GitHub
     

    Feedback

    Submission failed, please try again

    Thanks for your support.

    On a scale of 0-10, how likely is it that you would recommend HackMD to your friends, family or business associates?

    Please give us some advice and help us improve HackMD.

     

    Thanks for your feedback

    Remove version name

    Do you want to remove this version name and description?

    Transfer ownership

    Transfer to
      Warning: is a public team. If you transfer note to this team, everyone on the web can find and read this note.

        Link with GitHub

        Please authorize HackMD on GitHub
        • Please sign in to GitHub and install the HackMD app on your GitHub repo.
        • HackMD links with GitHub through a GitHub App. You can choose which repo to install our App.
        Learn more  Sign in to GitHub

        Push the note to GitHub Push to GitHub Pull a file from GitHub

          Authorize again
         

        Choose which file to push to

        Select repo
        Refresh Authorize more repos
        Select branch
        Select file
        Select branch
        Choose version(s) to push
        • Save a new version and push
        • Choose from existing versions
        Include title and tags
        Available push count

        Pull from GitHub

         
        File from GitHub
        File from HackMD

        GitHub Link Settings

        File linked

        Linked by
        File path
        Last synced branch
        Available push count

        Danger Zone

        Unlink
        You will no longer receive notification when GitHub file changes after unlink.

        Syncing

        Push failed

        Push successfully