
1. github을 진행할 파일은 새로 생성을 하고 생성한 파일을 cd로 해서 들어간다.
2. git clone -으로 하고 뒤에는 github을 보낼 주소를 복사해서 붙인다.
3. ls로 해서 현재 제대로 clone이 되었는 지 확인한다. 제대로 됬으면 github에 파일을 불러오게 될 것이다. ls에 의미는 list이다.
4. github에서 가져온 파일로 경로 설정을 한다.
5. vi test => 우선 test 할 겸 파일을 만들 것이다.
6. git add . 를 하면 현재 설정된 경로 안에 있는 모든 파일을 github에 add한다는 의미이다.
7. git status로 현재 경로를 확인

8. git commit -m "commit 내용" 을 적어서 업데이트 상황을 알게 한다.

올라가게 되면 commit에 해당되는 것은 가운데 내용처럼 구분짓게 한다.
9. git push origin main 을 해서 해당되는 루트로 보낸다. 경로 옆에 보면 (main)이라고 되어있기 때문이다.
test 파일 업로드 완료
다른 폴더 안에 있는 data를 github할려고할 때 순서
(이미 github clone이 된 폴더 안에다가 이동을 시킨다.)
10. git log로 해서 현재 어떻게 진행했는 지 확인한다.
11. 문제가 없다면 git add . 로 하면 그 안에 폴더에 있는 내용들이 github에 올라가게 된다.
12. git push origin main을 하게 되면 github을 다시 재부팅했을 때 올라간 것을 볼 수 있다.
다른 data도 파일 업로드 완료
에러발생

git add . 를 할려고하는데 commit cheked out으로 error가 나옴
이럴 때 의심해야할 부분은 .git이 이미 있기 때문에 err가 발생되는 거지만 우선 상태 확인으로 어디서 에러가 나는 지 확인
git status를 통해서 node_Basic에서 error 나오는 것을 확인을 했고 해당 경로로 들어간다.

그리고 ls -al을 하면 .git이 들어있는 것을 확인 그것을 제거하는 방법은
rm -rf .git
그리고 다시 ls -al로 확인을 하면 .git이 사라진 것을 확인할 수 있다. 그 이후에 다시 git add .를 진행했더니 제대로 진행되는 것을 볼 수 있다.
node (간단한 게시판 만들기)
1. MongoError: Authentication failed.
MongoError: Authentication failed.
at MessageStream.messageHandler (C:\Users\Administrator\Desktop\node_Basic\node_modules\mongodb\lib\cmap\connection.js:268:20)
at MessageStream.emit (events.js:315:20)
at processIncomingData (C:\Users\Administrator\Desktop\node_Basic\node_modules\mongodb\lib\cmap\message_stream.js:144:12)
at MessageStream._write (C:\Users\Administrator\Desktop\node_Basic\node_modules\mongodb\lib\cmap\message_stream.js:42:5)
at writeOrBuffer (internal/streams/writable.js:358:12)
at MessageStream.Writable.write (internal/streams/writable.js:303:10)
at Socket.ondata (internal/streams/readable.js:719:22)
at Socket.emit (events.js:315:20)
at addChunk (internal/streams/readable.js:309:12)
at readableAddChunk (internal/streams/readable.js:284:9)
at Socket.Readable.push (internal/streams/readable.js:223:10)
at TCP.onStreamRead (internal/stream_base_commons.js:188:23) {
ok: 0,
code: 18,
codeName: 'AuthenticationFailed'
}
처음에 이 에러를 접했을 때 mongodb에 기본적인 table만 생성을 했는데 계속 에러가 발생되서 구글 검색을 해보니 id랑 pass에 문제라는 것을 알 수 있었다. 다시 코드를 확인해보니 처음에 robot3T를 할 때 ec2에 연결하기 전에는 id랑 pass를 연결하지 않기 때문에 id랑 pass를 작성해서는 안됐다. 제거하니 제대로 돌아가는 것을 확인할 수 있었다.
2.
Cannot destructure property 'name' of 'req.body' as it is undefined.
api 연결하는 부분이 잘못된 것이 없는데 req.body가 에러가 나오는 것을 확인하게 되었다. undefined가 나왔다는 것은 body를 제대로 사용할 수 있게 하는 express가 연결이 제대로 안됐다는 의미라서 server을 확인해보니 제대로 연결이 되지 않은 것을 확인
app.use(express.json())
app.use(express.urlencoded({extended:false}))
바로 연결하니깐 제대로 돌아가는 것을 확인 이때 주의할 부분은 body에 영향을 주는 part보다 상단에 있어야 한다.
3.
UnhandledPromiseRejectionWarning: MongoError: E11000 duplicate key error collection: nodeDB.users index: userId_1 dup key: { userId: null }
이부분은 지금 userId가 다른 index에 key값에 영향을 받는 것을 확인할 수 있다. 보통 userId는 value를 추가할 때마다 자동적으로 값이 올라가게 만들기 때문에 unique로 설정하게 되어있다. 그래서 robot3T에서 따로 테이블을 만들어서 재연결을 했더니 제대로 진행되는 것을 확인할 수 있었다.
반성
코드를 좀 더 생각해서 작성을 하면 볼 수 있는 것을 에러를 봤다는 이유로 이것저것 흐름에 맞지 않게 해결할려는 모습을 보게 되었다. 코드를 짜기 전에 제대로 셋팅에 대해서 이해하고 내가 작성한 코드를 진행하기 위해서 server에 어떤 것을 연결해야할 지 제대로 이해하는 시간을 가져야겠다.
'TIL' 카테고리의 다른 글
| 2021.04.10( UnhandledPromiseRejectionWarning: CastError: Cast to ObjectId failed for value "1" at path "_id" for model "Users" 해결 과정) (0) | 2021.04.10 |
|---|---|
| 2021.04.08(authMiddleware 이해) (0) | 2021.04.09 |
| 2021.04.06(insomnia token전달 이해) (0) | 2021.04.06 |
| 알고리즘 해설 녹화 (0) | 2021.04.05 |
| node 게시판 만들기2 (2021.04.01) - 정리 진행중 (0) | 2021.04.01 |