Westagram kickoff_guide

Jimin_Noteยท2022๋…„ 6์›” 10์ผ
0

๐Ÿ‘‰ Westagram : instagram์˜ mini๋ฒ„์ „

๐Ÿ“Guide

๐ŸŒฑTeam project

๋ธŒ๋žœ์น˜

  • feature/main
  • feature/signin
  • feature/singup
  • ๋ ˆํŒŒ์ง€ํ† ๋ฆฌ๋ฅผ ์ง์ ‘ ์ƒ์„ฑํ• ์ง€(์ด๋ฒˆ ๊ณผ์ œ์—์„œ๋Š” ๋ฉ˜ํ† ๋‹˜์ด ์ฃผ์†Œ๋ถ€์—ฌ)
  • ์ด๋ฏธ ๋งŒ๋“ค์–ด์ง„ ์ฝ”๋“œ๋ฅผ ํด๋ก ์„ ๋ฐ›์„์ง€

ํŒ€์› ์ค‘ ํ•œ๋ช…์ด ์ดˆ๊ธฐํ™˜๊ฒฝ ์…‹ํŒ…์™„๋ฃŒ ํ›„ PUSHํ•ด์ฃผ๊ธฐ
my_settings.py. ์žฅ๊ณ  ์†Œ์Šค์ฝ”๋“œ ๊ตฌ๋น„. $pip freeze > requirements.txt ๋งŒ๋“ค๊ธฐ
$ git add .
$ git commit -m "๋™์‚ฌ : ์„ค๋ช…
$ git remote add origin ๋ ˆํŒŒ์ง€ํ† ๋ฆฌ์ฃผ์†Œ.git
$ git push origin ๋ธŒ๋žœ์น˜์ด๋ฆ„

์‚ญ์ œํ•ด์•ผ๋˜๋Š” ๋ถ€๋ถ„์ด ์žˆ๋‹ค๋ฉด
git --cash ๋กœ ํ•ด๋‹น ๋ฐ์ดํ„ฐ ์ง€์›Œ์ฃผ๊ณ  push

์œ„ ์ดˆ๊ธฐ์„ธํŒ…์„ ๋‹ค๋ฅธ ๋‘ ํŒ€์›์ด $ git clone ์„ ํ•˜์—ฌ ๋‚ด์šฉ ๋ฐ›์•„์˜ค๊ธฐ
$pip install -r requirements.txt


ํด๋ก ์„ ํ•œ ํ›„
<ํšŒ์›๊ฐ€์ž… ๋จผ์ € ๋งŒ๋“ค๊ธฐ>

$ git branch feature/signup
$ checkout feature/signup
$ git add .
$ git commit -m "Add:login page complete
$ git push origin feature/signup


๋จธ์ง€์™„๋ฃŒ ํ›„

PR(pull request) feature/signup -> Main
$ git pull origin main


๋งˆ์ง€๋ง‰
์ด์ œ ๋‚ด์šฉ์€ Main์— ๋ชจ๋‘ ํƒ‘์žฌ๊ฐ€ ๋˜์—ˆ๊ธฐ ๋•Œ๋ฌธ์— ํ•„์š”๊ฐ€ ์—†์–ด์ง„ feature๋ธŒ๋žœ์น˜๋Š” ์‚ญ์ œ~ํ•ด๋„๋˜๊ณ  ์•ˆํ•ด๋„๋œ๋‹ค.

๐ŸŒฑconflict(์ถฉ๋Œ)

๋ธŒ๋žœ์น˜๋Š” ์—ฌ๋Ÿฌ๊ฐœ์ธ๋ฐ ๋™์‹œ์— ๊ฐ™์€ ๋ธŒ๋žœ์น˜์˜ ๊ฐ™์€ ๋‚ด์šฉ์„ ์ ‘๊ทผํ•˜๊ณ  ์ˆ˜์ •ํ–ˆ์„๋•Œ ๋ฐœ์ƒ
์ถฉ๋Œ์ด ๋œ๋‹ค๊ณ  ํ•ด์„œ ๋‚˜์œ์ƒํ™ฉ์€ ์•„๋‹˜
๊ทธ๋ƒฅ ๋ฒ„์ „์ด ๋‹ค๋ฅด๋‹ˆ ์ด ์ค‘์— ๋ญ๊ฐ€ ๋งž๋ƒ~ ๋ฌผ์–ด๋ณด๋Š” ์ƒํ™ฉ
์ฝ”๋“œ ๋จธ์ง€๋ฅผ ์‹œ์ผฐ๋˜ ์‚ฌ๋žŒ์˜ ์˜๋„๊ฐ€ ๋ฌด์—‡์ธ์ง€ ๋Œ€ํ™”ํ•ด๋ณด๊ณ  ํ•ด๊ฒฐํ•  ๊ฒƒ

A : feature/signup
B : feature/signin

A์™€ B์—์„œ ๋™์‹œ์— main๋ธŒ๋žœ์น˜์˜ ๋™์ผํ•œ ํŒŒ์ผ์„ ์ˆ˜์ •ํ•œ ํ›„
๊ฐ๊ฐ main์œผ๋กœ mergeํ•˜๊ฒŒ๋˜๋ฉด main์—์„œ๋Š” A,B์—์„œ ์„œ๋กœ ๊ฐ™์€ ๋ถ€๋ถ„์„ ๋ณ€๊ฒฝํ–ˆ๋Š”๋ฐ ๋‘˜์ค‘ ๋ญ๋กœ ๋ฐ›์œผ๋ผ๋Š”๊ฑด์ง€ ๋ชฐ๋ผ์„œ ์ถฉ๋Œ๋ฐœ์ƒ
๊ทธ๋Ÿฌ๋ฉด A์™€ B ์ค‘ main์œผ๋กœ ์˜ฌ๋ฆด ๋ธŒ๋žœ์น˜๋Š” ๋ƒ…๋‘๊ณ  ๋‚จ์€ ํ•˜๋‚˜์˜ ๋ธŒ๋žœ์น˜์—์„œ ์‚ญ์ œ ํ˜น์€ ์ˆ˜์ •ํ•˜์—ฌ
git addํ•œ ํ›„, git commit์„ ํ•ด์ฃผ๋ฉด ์ถฉ๋Œํ•ด๊ฒฐ

$ git checkout main
$ git pull origin main
$ git checkout feature/signin
$ git merge main 
$ git add .
$ git commit -m ...
$ git push ...

pushํ•˜๊ธฐ์ „์— pull๋จผ์ €
์ œ์ผ ์ตœ๊ทผ ์—…๋ฐ์ดํŠธ๋œ ์ฝ”๋“œ๋ฅผ ์ˆ˜์ •ํ•ด์•ผ ์ถฉ๋Œ์„ ๋ฐฉ์ง€ํ•  ์ˆ˜ ์žˆ์Œ
conflict ๋‚ ๊ฒƒ ๊ฐ™์œผ๋ฉด ํŒ€์›์—๊ฒŒ ๋ฏธ๋ฆฌ ์–˜๊ธฐํ•ด์ฃผ๊ธฐ

$ git clone ๋ ˆํŒŒ์ง€ํ† ๋ฆฌ์ฃผ์†Œ #git ํด๋ก 
$ mkdir jimin #์—ฌ๊ธฐ์„œ ์ดˆ๊ธฐ์…‹ํŒ…ํ•˜๊ธฐ(conda create ~~)
$ pip freeze #ํ™•์ธ ํ›„ ์—†๋Š” ๊ฒƒ ์„ค์น˜ (django, sql, sqlclient, httpie...)
$ django-admin startproject ํ”„๋กœ์ ํŠธ๋ช… . #ํŒ€ํด๋” ์•ˆ์— manage.py์žˆ์–ด์•ผํ•˜๊ณ  ํŒ€ํด๋” ์•ˆ์— ๋‚ด ์ด๋ฆ„ํด๋”์žˆ์–ด์•ผํ•จ
 

$git branch feature/initial-settings-jimin

$git commit -m "[์ •์ง€๋ฏผ]create:initial-settings"

initial ์…‹ํŒ… (์ดˆ๊ธฐ์…‹ํŒ…) ๊นŒ์ง€๋Š” ์œ„ ๋ธŒ๋žœ์น˜๋กœ push

profile
Hello. I'm jimin:)

0๊ฐœ์˜ ๋Œ“๊ธ€