[CHAM] git api 활용해서 issue 만들기

2022. 10. 21. 23:46·개인프로젝트/CHAM
728x90
반응형

오가는길에 유튜브를 보다가 git api를 활용하여 issue를 생성하는 영상을 봤다.

나도 해보고 싶어서 따라하기로 했다.

 

1. git personal access token 받기

(1) 깃을 들어간다

(2) your profile에 들어간다

(3) 프로필 사진을 누른다.

(4) 메뉴를 쭉 내리다 Developer settings에 들어간다

(5) personal access tokens 클릭 후 tokens를 클릭한다

(6) generate new token으로 새로 만들고 권한은 repo권한을 체크한다.

(7) 토큰을 만들면 토큰 번호를 준다. 이 번호는 한번만 보여주므로 복사해서 딴데다가 적어놓는다.

     토큰은 절대로 노출하면 안된다.

2. git api 활용(Octokit)

프론트, 백 둘다 코드를 실행해본 결과 둘다 잘 된다. 넣고 싶은곳에 넣으면 될것같다. 나는 백에다 넣었다.

(1) octokit/core 설치

npm i @octokit/core

(2) 전체 코드

const express = require("express");
const router = express.Router();
const { Octokit } = require("@octokit/core");
require("dotenv").config();
router.post("/error", async (req, res) => {
  const { title, body, labels } = req.body;
  const octokit = new Octokit({ auth: process.env.GIT_TOKEN });

  await octokit
    .request(`POST /repos/TeTedo/react_project/issues`, {
      owner: "TeTedo",
      repo: "react_project",
      title: title,
      body: body,
      labels: labels,
    })
    .then(() => {
      res.send(true);
    })
    .catch(() => {
      res.send(false);
    });
});

module.exports = router;

front에서 제목, 내용 , 주제 를 받아온다.

labels 는 배열 형식으로 issue에서 label이 생성된다.

 .request(`POST /repos/git아이디/repository이름/issues`, {
      owner: "git아이디",
      repo: "repository이름",
      title: title,
      body: body,
      labels: labels,
    })

request부분에는 깃아이디와 레파지토리이름을 적어주면된다.

3. issue 예시

위 사진처럼 issue가 생성된다.

728x90
반응형

'개인프로젝트 > CHAM' 카테고리의 다른 글

[CHAM] 후기  (0) 2022.10.28
[CHAM] 서버 배포  (0) 2022.10.27
[CHAM] redux state Reference  (1) 2022.10.21
[CHAM] function 실행 오류  (0) 2022.10.20
[CHAM] redux에서 지속적인 로그인 체크  (0) 2022.10.19
'개인프로젝트/CHAM' 카테고리의 다른 글
  • [CHAM] 후기
  • [CHAM] 서버 배포
  • [CHAM] redux state Reference
  • [CHAM] function 실행 오류
TeTedo.
TeTedo.
  • TeTedo.
    TeTedo 개발 일기
    TeTedo.
  • 전체
    오늘
    어제
    • 분류 전체보기 (319)
      • 개발 (274)
        • Article (4)
        • 정리 (21)
        • Spring Boot (17)
        • JPA (2)
        • JAVA (6)
        • Database (4)
        • 자료구조 (11)
        • 알고리즘 (32)
        • React (20)
        • Docker (10)
        • node.js (18)
        • Devops (11)
        • Linux (4)
        • TypeScript (3)
        • Go (10)
        • HyperLedger (4)
        • BlockChain (43)
        • html, css, js (48)
        • CS (3)
        • AWS (3)
      • 모아두고 나중에 쓰기 (3)
      • 팀프로젝트 (18)
        • SNS(키보드워리어) (9)
        • close_sea (9)
      • 개인프로젝트 (1)
        • Around Flavor (1)
        • CHAM (13)
        • ethFruitShop (5)
      • 독서 (0)
        • 스프링부트와 AWS로 혼자 구현하는 웹 서비스 (0)
  • 블로그 메뉴

    • 홈
    • 개발일기
    • CS
    • 실습
    • 코딩테스트
    • 웹
    • Go
    • node.js
    • 팀플
  • 링크

  • 공지사항

  • 인기 글

  • 태그

    node
    erc20
    node.js
    하이퍼레저
    컨테이너
    30일 챌린지
    30일챌린지
    go
    CSS
    프로그래머스
    명령어
    블록체인
    도커
    ERC721
    nodejs
    js
    React
    mysql
    html
    go언어
  • 최근 댓글

  • 최근 글

  • hELLO· Designed By정상우.v4.10.1
TeTedo.
[CHAM] git api 활용해서 issue 만들기
상단으로

티스토리툴바