(๐Ÿ‡ฐ๐Ÿ‡ท) ๐Ÿ„โ€โ™‚๏ธ Github.surf๋ฅผ ์†Œ๊ฐœํ•ฉ๋‹ˆ๋‹ค! โ€” ์ฝ”๋“œ๋ฅผ ์„œํ•‘ํ•˜๊ธฐ ๊ฐ€์žฅ ๋น ๋ฅด๊ณ  ์ฟจํ•œ ๋ฐฉ๋ฒ• (CLI, Extension ์ง€์›)

softmarshmallow
Grida
Published in
7 min readFeb 14, 2021

--

(ko) https://github.surf

๋ด„์ด์˜ค๊ณ  ์žˆ์–ด์š”. ์„œํ•‘์„ ์œ„ํ•œ ๊ณ„์ ˆ์ด์ฃ .

๋ฌด์Šจ ๋ฌธ์ œ๋ฅผ ํ•ด๊ฒฐํ• ๊นŒ์š”?

github์—์„œ ์ฝ”๋“œ๋ฅผ ํƒ์ƒ‰ํ•˜๊ณ  ์‹ถ์„ ๋•Œ ์–ด๋–ป๊ฒŒ ํ•˜๋‚˜์š”? master/ main ์˜ ์ฝ”๋“œ, ๋กœ์ปฌ๋ธŒ๋žœ์น˜์™€๋Š” ๋‹ค๋ฅธ ๋ฆฌ๋ชจํŠธ ๋ธŒ๋žœ์น˜์˜ ์ฝ”๋“œ๋ฅผ ํ™•์ธํ• ๋•Œ๋Š” ์–ด๋–ป๊ฒŒ ํ•˜๋‚˜์š”?

์šฐ๋ฆฌ๋Š” ์ด๋•Œ github๋กœ ์ด๋™ํ•˜์—ฌ ์ œ๊ณต๋˜๋Š” ๊ธฐ๋ณธ ์ฝ”๋“œ ๋ณด๊ธฐ์—์„œ ๋ธŒ๋žœ์น˜๋ฅผ ์„ ํƒํ•˜๊ณ  ํŒŒ์ผ์„ ๋„ค๋น„๊ฒŒ์ดํŒ…ํ•˜์—ฌ ์ฝ”๋“œ๋ฅผ ๋ด…๋‹ˆ๋‹ค. ์ด ๋ฐฉ๋ฒ•์€ ๋ณ„๋„์˜ ์ž‘์—… ๊ณต๊ฐ„์—์„œ ์›ํ•˜๋Š” ์ฝ”๋“œ๋ฅผ ๋ณผ ์ˆ˜ ์žˆ๋Š” ๊ฐ€์žฅ ๋น ๋ฅธ ๋ฐฉ๋ฒ•์ด๊ธฐ ๋•Œ๋ฌธ์— ๋กœ์ปฌ ๋ธŒ๋žœ์น˜๋ฅผ ๊น”๋”ํ•˜๊ฒŒ ์œ ์ง€ํ•  ์ˆ˜ ์žˆ๊ณ  ์ปค๋ฐ‹๋˜์ง€ ์•Š์€ ํŒŒ์ผ์„ ์œ ์ง€ํ• ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค..

ํ•˜์ง€๋งŒ ์ด๊ฑดโ€ฆ ์ข€ ๊ท€์ฐฎ์Šต๋‹ˆ๋‹ค. ์ด๊ฒƒ์ด ์šฐ๋ฆฌ๊ฐ€ github.surf ๋ฅผ ๋งŒ๋“  ์ด์œ ์ž…๋‹ˆ๋‹ค (ghub1 ์˜๊ฐ)

๊ทธ๋ฆฌํ•˜์—ฌ surf ๋“ฑํŒ! ๋กœ์ปฌ ์ž‘์—…์‹œ ํ˜„ ๋””๋ ‰ํ† ๋ฆฌ์—์„œ surf . -b other-branch ๋ฅผ ํƒ€์ดํ•‘ ํ•˜๋ฉด ๋ธŒ๋ผ์šฐ์ € ํ™˜๊ฒฝ์—์„œ ํ•ด๋‹น ๋ธŒ๋žœ์น˜์—๋Œ€ํ•œ vscode ๋ทฐ์–ด๋กœ ์ฝ”๋“œ๋ฅผ ์„œํ•‘ํ• ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค. (์ž์„ธํ•œ ๋‚ด์šฉ์€ ์•„๋ž˜ CLI ์—์„œ)

์ด๋Ÿฌํ•œ ๊ธฐ๋Šฅ๋“ค์ด ์ œ๊ณต๋ฉ๋‹ˆ๋‹ค

  • โœ… ๊นƒํ—™ ์ง€์› โ€” ๊นƒํ—™ ๋ ˆํฌ์ง€ํ† ๋ฆฌ๋ฅผ ๋ธŒ๋ผ์šฐ์ €์ƒ์˜ vscode ํ™˜๊ฒฝ์—์„œ ์„œํ•‘ํ• ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.
  • โœ… ๊ณต์‹ ํฌ๋กฌ ํ™•์žฅ์ž โ€” Surf ๋ฅผ ๋ ˆํฌ์ง€ํ† ๋ฆฌ์ƒ์˜ ๋ฒ„ํŠผ์„ ํ†ตํ•ด ๋Ÿฐ์นญํ• ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.
  • โœ… ๊ณต์‹ CLI โ€” ํ„ฐ๋ฏธ๋„์—์„œ ์ƒˆ๋กœ์šด ์„œํ•‘์„ ์—ด๊ธฐ์œ„ํ•œ surf . ์ปค๋งจ๋“œ
  • ๊นƒ๋žฉ ์ง€์› (gitlab.surf) (๋‹ค์Œ์ฃผ ๊ณต๊ฐœ)
  • ๋น„ํŠธ๋ฒ„ํ‚ท ์ง€์› (bitbucket.surf) (๋‹ค์Œ์ฃผ ๊ณต๊ฐœ)
  • ํ”„๋ผ์ด๋น—, ์ปค์Šคํ„ฐ scm ์„ ์œ„ํ•œ surf.codes
  • ๋ธŒ๋ผ์šฐ์ € ํ™˜๊ฒฝ์—์„œ์˜ ๋ฆฌ๋ชจํŠธ ์ปดํŒŒ์ผ๊ณผ ํ„ฐ๋ฏธ๋„ ์ง€์›R (์ค€๋น„์ค‘)

๊ธฐ๋ณธ์ ์œผ๋กœ vscode on browser ๋ผ๊ณ  ์ƒ๊ฐํ•˜์‹œ๋ฉด ๋ฉ๋‹ˆ๋‹ค. ํ•ญ์ƒ ์ ‘๊ทผํ•˜๋Šฅํ•˜๊ณ , ํ˜„์ œ ๋‚˜์˜ ๊ด€์‹ฌ์ฝ”๋“œ์—๋งŒ ์ง‘์ค‘ํ• ์ˆ˜ ์žˆ์ฃ . (๋น ๋ฅธ ๋ฐ๋ชจ โ†’ github.surf)

๊ฐ„๋‹จํ•œ ์‚ฌ์šฉ๋ฒ•

Surf ์—์„œ ์ฝ”๋“œ๋ฅผ ๋ณด๋ ค๋ฉด ๊ฐ„๋‹จํžˆ .com ์„ .surf ๋กœ ๋ฐ”๊พธ๋ฉด ๋ฉ๋‹ˆ๋‹ค. gitlab ๊ณผ bitbucket ์—์„œ๋„ ๋™์ผํ•ฉ๋‹ˆ๋‹ค. (gitlab.surf, bitbucket.surf)

.com ์„ย .surf ๋กœ ๋ฐ”๊พธ์„ธ์š”

์•„๋ž˜์™€ ๊ฐ™์ด ๋ธŒ๋ผ์šฐ์ € ์•ˆ์˜ vscode ๊ฐ€ ๋‚˜ํƒ€๋‚ฉ๋‹ˆ๋‹ค.

github.surf vscode example

์ข€๋” ํŽธํ•˜๊ณ  ๋˜‘๋˜‘ํ•œ ์‚ฌ์šฉ๋ฒ• โ€” ๋ธŒ๋ผ์šฐ์ € Extension ๊ณผ ํ•จ๊ป˜

github.surf chrome extension demo

ํฌ๋กญ ํ™•์žฅ์ž๋ฅผ ์„ค์น˜ํ•˜๋ฉด (Firefox ์—์„œ๋„ ๊ฐ€๋Šฅ), ๊นƒํ—™๋ ˆํฌ๋ฅผ ์„œํ•‘ํ• ๋•Œ ๊ท€์—ฌ์šด ๐Ÿ„โ€โ™‚๏ธ Surf ๋ฒ„ํŠผ์ด ์ƒ๊ธฐ๊ฒŒ ๋ฉ๋‹ˆ๋‹ค.

github.surf chrome extension example

ํ™•์žฅ์ž๋Š” README ์˜ ์„ค๋ช…์„ ํ†ตํ•ด ์„ค์น˜๊ฐ€๋Šฅํ•ฉ๋‹ˆ๋‹ค. (๊ฐœ์ธ์ ์œผ๋กœ ์ œ์ผ ์ข‹์•„ํ•ด์š”)

๐Ÿ˜Ž boss ์ฒ˜๋Ÿผ ์‚ฌ์šฉํ•˜๊ธฐ โ€” CLI

https://github.com/bridgedxyz/surf-cli

vscode ์˜ code . ์ฒ˜๋Ÿผ, surf . ์ปค๋งจ๋“œ๋ฅผ ์ง€์›ํ•ฉ๋‹ˆ๋‹ค.

CLI ์„ค์น˜ํ•˜๊ธฐ

# === cli ์„ค์น˜ ===
npm -g install @bridged.xyz/surf
# ๋˜๋Š” yarn ์„ ํ†ตํ•ด ์„ค์น˜
yarn global add @bridged.xyz/surf
# ๊ทธ๋ฆฌ๊ณ  ์„œํ•‘ ๐Ÿ„!
surf .
open github via command
surf .

๋˜ํ•œ ์ด๋Š” ์„œ๋ธŒ ์—๋””ํ„ฐ๋กœ์„œ์˜ ์—ญํ• ๋„ ์ˆ˜ํ–‰ํ• ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค. ์ด๋Š” ๋‹ค๋ฅธ ๋ธŒ๋žœ์น˜๋ฅผ ์„œํ•‘ํ• ๋•Œ ๋งค์šฐ ์œ ์šฉํ•˜๊ฒŒ ์‚ฌ์šฉ๋ ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.

# ๋‹ค๋ฅธ ๋ธŒ๋žœ์น˜์—์„œ ์„œํ•‘ํ•˜๊ธฐ
surf -b <branch-name>

๊ทธ๋ฆฌ๊ณ  ํ•˜๋‚˜๋”.. โ€œsurf ..โ€

# `code .` ์„ ์‹คํ–‰ํ•ด์š”. surf ์ปค๋งจ๋“œ์— ์ค‘๋… ๋˜์—ˆ์„๋•Œ๋ฅผ ๋Œ€๋น„ํ•ด์„œ ๋งŒ๋“ค์—ˆ์–ด์š”.
surf ..

surf-cli ์—๋Œ€ํ•ด github ์—์„œ ๋” ์•Œ์•„๋ณผ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.

์ž ์‹œ๋งŒ์š”! ์ด๊ฒƒ๊นŒ์ง€ ํ•ด์ฃผ๋ฉด ์ •๋ง๋กœ ๋.

github.surf oauth token

์ œํ•œ์—†๋Š” ์‚ฌ์šฉ์„ ์œ„ํ•ด์„œ๋Š”, ๊นƒํ—™ ํ† ํฐ์„ ํ‚ค ์•„์ด์ฝ˜์ด ์žˆ๋Š” ํƒญ์—์„œ ์„ค์ • ํ•ด ์ฃผ์–ด์•ผ ํ•ฉ๋‹ˆ๋‹ค.

github.surf ์œ„ํ•œ ํ† ํฐ ๋ฐœ๊ธ‰์€ ์—ฌ๊ธฐ์„œ

  • github โ€” 60 ๋ฆฌํ€˜์ŠคํŠธ / ์‹œ๊ฐ„๋‹น (ํ† ํฐ ๋ฏธ๋ฐœ๊ธ‰์‹œ) (ํ† ํฐ ๋ฐœ๊ธ‰์‹œ 5000)
  • gitlab โ€” 5 ๋ฆฌํ€˜์ŠคํŠธ / ๋ถ„๋‹น
  • bitbucket โ€” 60 ๋ฆฌํ€˜์ŠคํŠธ / ์‹œ๊ฐ„๋‹น

ํ† ํฐ๊ณผ ์‚ฌ์šฉ ๋ฆฌ๋ฐ‹์— ๋Œ€ํ•ด ์ž์„ธํžˆ ์•Œ์•„๋ณด๊ธฐ

๋‚ด์žฅ๋œ ํƒ‘ ์–ธ์–ด / ํ”„๋ ˆ์ž„์›Œํฌ

์ด๊ณณ๊ณผ surf-code-extensions ์— ๋ช…์‹œ๋œ๊ฒƒ์ฒ˜๋Ÿผ,

์•„๋ž˜ ํ™•์žฅ์ž๋ฅผ ๋‚ด์žฅ์œผ๋กœ ์ง€์›ํ•ฉ๋‹ˆ๋‹ค.

  • Vue
  • JS/TS/JSX/TSX (React, Svelete ์™€ ๋‹ค๋ฅธ js ๊ธฐ๋ฐ˜ ํ”„๋ ˆ์ž„์›Œํฌ๋“ค)
  • Dart & Flutter
  • Elm
  • Kotlin
  • Scala
  • Ocaml
  • Vetur
  • Jupyter Notebook โ€” deepmind/deepmind-research ๋ฐ๋ชจ
  • Material theme

์ง€๊ธˆ์€ ์ด๋Ÿฐ๊ฒƒ๋“ค์„ ์ค€๋น„ํ•˜๊ณ  ์žˆ์–ด์š”

  • PWA ์ง€์›
  • ์—”ํ„ฐํ”„๋ผ์ด์ฆˆ ๊ณ„์ • ์ง€์› (github enterprise)
  • ์ปค์Šคํ…€ ํ™•์žฅ์ž, ํ”Œ๋Ÿฌ๊ทธ์ธ ์ง€์›
  • ๋ชจ๋ฐ”์ผ ์Šคํฌ๋ฆฐ ์ง€์›
  • ๋ฆฌ๋ชจํŠธ CLI ์™€ ๋นŒ๋“œ ์ง€์›
  • ๊ฐœ์ธ ๋ž˜ํฌ๋ฅผ ์œ„ํ•œ ๋” ๊ฐ•๋ ฅํ•œ ๊ฒฝํ—˜ ์ œ๊ณต

๋ฆฌ๋ชจํŠธ ์ปดํŒŒ์ผ / ์•ฑํ”„๋ฆฌ๋ทฐ (ui ์•ฑ) & CLI ํ˜ธํ™˜์„ฑ โ€” ์™„์ „ํ•œ all-in-one ์›น IDE ๋ฅผ ํ–ฅํ•˜์—ฌ.

ํ”Œ๋Ÿฌํ„ฐ, ๋ฆฌ์•กํŠธ์™€ ๊ฐ™์€ UI ํ”„๋ž˜์ž„์›Œํฌ๋“ค์„ ํฌํ•จํ•œ ๋ ˆํฌ์ง€ํ† ๋ฆฌ๋ฅผ ์œ„ํ•ด, ๋ผ์ด๋ธŒ ์ปดํŒŒ์ผ ํ”„๋ฆฌ๋ทฐ ๊ธฐ๋Šฅ์„ ์ค€๋น„ํ•˜๊ณ  ์žˆ์Šต๋‹ˆ๋‹ค. ๊ฐ€์žฅํฐ ๋ฌธ์ œ๋Š” ๊ณผ๊ธˆ๋ฌธ์ œ์ผ๊ฒƒ ๊ฐ™์Šต๋‹ˆ๋‹ค. ์ €ํฌ๋Š” ๊ณผ๊ธˆ์„ ๋ฐ›์„ ์˜ˆ์ •์ด ์—†๊ณ , ๋ฌด๋ฃŒ๋กœ ์ด ์„œ๋น„์Šค๋ฅผ ๊ณ„์† ์ œ๊ณตํ•˜๊ณ  ์‹ถ๊ธฐ์—, ๋นŒ๋“œ๋ฅผ ์œ„ํ•œ ๋ฆฌ์†Œ์Šค์™€ ํผํฌ๋จผ์Šค ๋ฌธ์ œ๋ฅผ ํ•ด๊ฒฐํ•ด์•ผ ํ•ฉ๋‹ˆ๋‹ค.

ํ•ด๋‹น ๊ธฐ์ˆ ์€ appbox ์™€ console ์ด๋ผ๋Š” ํ”„๋กœ์ ํŠธ์—์„œ ๊ตฌํ˜„ / ์‹คํ—˜ ๋œ ๋ฐ” ์žˆ์Šต๋‹ˆ๋‹ค. ๋ฆฌ๋ชจํŠธ ์ปดํŒŒ์ผ ๋ฐ๋ชจ๋ฅผ ๋ณด์‹œ๋ ค๋ฉด assistant ๋ฅผ ์ฐธ๊ณ ํ•˜์…”๋„ ์ข‹์Šต๋‹ˆ๋‹ค.

๋ชจ๋“  ์†Œ์Šค์™€ ๋””์ž์ธ์€ ๊นƒํ—™์— ๊ณต๊ฐœ๋˜์–ด ์žˆ์Šต๋‹ˆ๋‹ค

์šฐ๋ฆฌ ํŒ”๋กœ์šฐ ํ•ด์š”

Please subscribe / follow to our medium, github, youtube, facebook, twitter and instagram for latest news on how we change developerโ€™s life easier.

๊ฐ์‚ฌํ•ฉ๋‹ˆ๋‹ค

special thanks to contributors all around the world making this world-shaking technologies! we are always welcoming designers, developers, researchers, copywriters, or any type of creators all around the world.

์šฐ๋ฆฌ๋Š” ๋ธŒ๋ฆฟ์ง€๋“œ ์ž…๋‹ˆ๋‹ค. ์šฐ๋ฆฌ๋Š” ์œ ์ € ์ธํ„ฐํŽ˜์ด์Šค๋ฅผ ์žฌ์ •์˜ ํ• ๊ฒƒ์ž…๋‹ˆ๋‹ค.

bridged.xyz

--

--