해당 글은 https://blog.naver.com/kbs4674/221516168217 로 부터 게시글이 이전되었습니다. 원래 이 이슈를 19년도 2월에 겪었는데.. 이제서야 글을 남기게 됩니다. 과거에 Github을 다루면서 발생했던 이슈를 소개하고, 해결과정을 애기나누고자 합니다! 상황 설명 : 커밋 기록을 지워도 접근이 가능한 과거 커밋 기록 개발을 하면서 하루는 중간에 커밋 기록을 전부 지워야 할 일이 있어서 프로젝트 파일 내에 있던 .git 파일을 지우고, 다시 .git 환경을 설정 후 재 배포를 하는 과정을 거쳤었습니다. rm -rf .git git init git add . git commit -m "[작업내역]" git push origin +master 그렇게 커밋기록을 다 지우고, 완..
해당 글은 https://blog.naver.com/kbs4674/221367354303 로 부터 게시글이 이전되었습니다. 중간에 .gitignore에 내용을 추가할게 있어서 .gitignore에 새로운 내용을 넣고, Github에 Push를 했는데 Commit 기록에 계속 남아있는(.gitignore의 내용이 적용이 안되는) 문제가 발생했었습니다. 이는 .gitignore은 과거의 기억만을 가지고 있을 뿐, 현재의 기억은 제대로 적용이 안되어 있어서 발생하는 이른바 캐싱 문제입니다. 이를 해결하는 방법은 Github에 캐싱된 내역들을 삭제하는 것입니다. 명령어는 간단합니다. git rm -r --cached . 위 명령어를 입력해주신 뒤, 수정된 .gitignore에 대해 commit 후, push를 ..
해당 글은 https://blog.naver.com/kbs4674/221215364595 로 부터 게시글이 이전되었습니다. Github 작업을 하면서 만약 Private Git 저장소를 통해 작업이 이뤄질 경우 Push, Pull 작업을 할 때 마다 계~속 암호를 묻곤 합니다. 한 두번 묻는거면 좋겠는데 계에에속 물어보니까 슬슬 진절머리가 나더라고요.. 이 글 바로 전 글에는 git config --global credential.helper 'cache --timeout 7200' 위 명령어에 대해 소개를 했었는데, 이 명령어는 한시적으로만 안 물을 뿐, 결국은 나중에 또 계정정보를 묻게 되어있습니다. 그래서 이번에는 영구적으로 Github 계정정보를 묻지도 않는 SSH-Keygen에 대해 소개하고자 ..
해당 글은 https://blog.naver.com/kbs4674/221198239997 로 부터 게시글이 이전되었습니다. Github 작업을 하면서 만약 Private Git 저장소를 통해 작업이 이뤄질 경우 Push, Pull 작업을 할 때 마다 계~속 암호를 묻곤 합니다. 한 두번 묻는거면 좋겠는데 계에에속 물어보니까 슬슬 진절머리가 나더라고요.. 하지만 이런 귀차니즘을 조금이나마 덜어주는 명령어가 있습니다. git config --global credential.helper 'cache --timeout 7200' 바로 위 명령어인데요, 위 명령어를 터미널에 작성하면 "7200시간동안 메모리에 캐싱된 상태로 인증정보를 저장한다." 라는 의미로서 인증기록이 보존됩니다. 하지만 위 명령어는 터미널에 ..
참고 해당 실습은 댓글 비동기 구현을 Base로 설명이 됩니다. 해당 실습을 그대로 따라하고 싶으신 분은 사전에 프로젝트에서 다음 과정을 따라해주세요. git clone https://github.com/kcm4674/ex_devise cd ex_devise gem install rails --version=5.2.3 bundle install rake db:drop; rake db:migrate; rake db:seed 그동안 저희는 동기 형식으로 레일즈 내의 모든 이벤트가 이루어졌습니다. 대표적인 예로, 게시글 작성/수정/삭제 등 데이터 처리에 대해 이벤트 처리 홈페이지가 한번 새로고침이 되는 현상, 이것 자체가 동기라고 보시면 되겠습니다. 동기 개념 요청을 하는 시기와 응답을 받는 시기가 일치 이벤..
Post 모델에 종속된 댓글 구현을 한번 해보겠습니다. 참고 게시판이 될 Post 모델은 간단히 Scaffold로 구현으로 진행됩니다. 1 : M을 활용한 댓글 구현 1. 게시판이 될 Post Scaffold를 생성합니다. rails g scaffold post title content:text 참고 Scaffold 개념 [클릭] 2. 터미널에서 다음 명령어를 입력해서 Comment Model 및 Controller을 형성합니다. rails g model comment post_id:integer body:text 참고 post_id는 외래테이블(Post) 참고용으로 쓰일 예정입니다. rails g controller comments create destroy 참고 create : 새로 작성된 댓글 관련..
해당 글은 https://blog.naver.com/kbs4674/221174678439 로 부터 게시글이 이전되었습니다. Git pull을 하는데 갑자기 Conflict 에러가 발생했습니다! 이럴 때는 의외로 간단한 해결방법이 있는데 바로 코드 병합(Merge) 입니다. Git 충돌 (refusing to merge unrelated histories) 해결 : merge 이 방법은 서로 다른 코드간의 충돌 발생 시, 충돌되는 두 코드 중 하나를 선택해서 이용하는 방법이 되겠습니다. 1. 일단 자신의 코드를 스냅샷을 찍고, Commit을 찍습니다. 이 작업은 현재의 Commit과 Github 저장소의 Commit 과의 대조 후 어느 부분이 문제인지 찾아내기 위함입니다. git add . git comm..
해당 글은 https://blog.naver.com/kbs4674/221174578327 로 부터 게시글이 이전되었습니다. 쓸데없이 넘어가는 더미데이터 (필요없는 캐시파일 등) - .gitignore 사용하기 웹사이트 프로젝트를 주제로 작업을 하다보면 제 작업 프로젝트에 있던 캐시파일도 함께 전송되는 등의 문제가 발생됩니다. Github 저장소에 넘길 때 있어 캐시파일은 사실 넘길 필요도 없고, 괜히 넘기면 쓸데없는 용량만 차지하게 됩니다. 또한 더불어 환경변수 설정 내용이 담겨진 내용이 보내는 것을 방지할 때도 고려를 해야합니다. 이 문제를 해결하는 간단한 방법은 .gitignore 파일을 사용하는 겁니다. gitignore 파일은 서버에서 Github로 자료가 전송될 때, 전송되지 않길 희망하는 일부..