https://xxyeon129.github.io/fe-sprint-my-agora-states/
부트캠프에 와서 처음으로 만들어보는 프로젝트! 무엇보다 좋았던 점은 독학으로 프로젝트를 만들 때는 git으로 프로젝트를 관리하지 못했었는데, 이번 기회를 통해 git을 이용해 commit하는 방법과 Fork, Pull request, 배포 등을 배울 수 있어 좋았다.
아무래도 git이 협업 툴이다보니 독학으로 배우기에는 인터넷 강의만으로 채워지지 않는 한계가 있었는데, Solo project를 진행하면서 직접 해보니까 더 잘 이해가 되었다. 물론 작업하면서 줄곧 master branch로 commit을 하다가 뒤늦게 branch를 main으로 바꾸는 바람에 pull request를 할 때 수많은 오류가 나서 정말 고생했지만..🙃
그래도 이런 오류들 덕분에 듬성듬성하게 학습된 git 개념들을 좀 더 확실하게 이해하려고 노력하게 되었고, 여기저기 흩어져 있는 지식들을 한 데 모아 정리해볼 수 있는 기회가 되었다. 또 몇 시간 동안 매달리면서 오류들을 해결해보니 절대 해결하지 못할 것 같던 오류들도 알고 보면 별 거 아니라는 자신감이 생겼다. 이런 경험은 앞으로 계속해서 마주할 오류들에 대해 지치지 않고 계속해서 해결을 시도해보는 지구력의 기반이 될 것 같다!
주제를 처음 봤을 때는 막막했지만, 세부적으로 단계를 나눠서 차근차근 생각해보니 Bare Minimum Requirement는 큰 문제 없이 잘 풀렸다. 사실 이번 프로젝트는 git에 애를 먹어서, 코드를 작성하며 프로젝트를 제작하는 것보다 git과 관련해서 훨씬 더 시간을 많이 할애했다..ㅋㅋ 그래도 진행하면서 아무리 막막해보이는 것도 차근차근 단계를 나눠 의사코드를 작성하며 어떻게 코드를 작성해야 할지 생각해보면 풀린다는 것을 깨닫게 되었다.
git init
→ working directory → add
→ staging area → commit
→ .git directorygit add <경로명>
working directory의 untracked file을 → git 관리 하인 staging area로 추가git add .
staging area의 모든 파일을 한 번에 추가git status
staging area에 잘 옮겨졌는지 확인 → 늘 commit하기 전에 staging area 확인git restore <파일명>
modified 내용 삭제 → 수정한 내용 삭제해버리고 기존 상태로 되돌림 (git add 취소)echo *.<파일 형식> > .gitignore
특정 파일들은 git에 포함하고 싶지 않을 경우 .gitignore 파일 안에 두기git rm --cached <파일명>
staging area에 있던 파일이 working directory로 옮겨짐git commit -m""
merge
, rebase
기능의 기반이 됨git reset HEAD^
git reset HEAD~1
git reset HEAD^1
git log
내 commit 로그 확인git remote add <remote repository 주소를 대신할 이름> <remote repository url>
git remote -v
remote repository가 잘 연결되었는지 확인git push <remote repository 이름> <branch 이름>
기존의 잘 만들어진 프로젝트에 변화를 주거나 새로운 것을 시도해보기 위해 다른 github repository를 복사하는 것
git clone <link>
자신의 컴퓨터 local repository로 옮겨 따로 개발git pull <remote repository 이름> <branch 이름>
public 프로젝트에서 새로 업데이트된 내용을 내 local로 받아와 합치기 (remote → local)git clone <link>
remote repostitory 가져오기git init
local repository 추가git add <. or 파일명>
→ staging areagit branch
확인git status
확인git commit -m""
→ .git directorygit log
확인git remote
현재 프로젝트에 등록된 remote repository 확인git remote add <remote repository 주소를 대신할 이름> <remote repository url>
git remote -v
remote repository가 잘 연결되었는지 확인git remote show <remote repository 이름>
remote repository의 구체적인 정보 확인git push <remote repository 이름> <branch 이름>
Element.prepend()
부모의 자식 요소 맨 앞 위치로 추가flex-grow
형제 요소 간 공간 비중 설정unshift()
를 통해 요소를 추가해도 event 관련 함수가 즉각 반영되지는 않아서, unshift()
한 요소에 따로 event 관련 함수를 호출해주어야 함checked.textContent = obj.answer ? “✔️” : “❌”
new Date()
.toLocaleDateString()
preventDefault()
를 적용했는데도 작동이 되지 않았다. 제출 시간 관계상 click으로 진행했는데, 이후에 submit은 왜 작동이 안되는지 살펴봐야겠다.